blob: b098e46de1a5f7359d8088a3511c397cc85ecb80 [file] [log] [blame]
# Copyright (c) 2023 VEXXHOST, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
name: ceph
on:
pull_request:
push:
branches:
- main
workflow_dispatch:
inputs:
debug_enabled:
type: boolean
description: 'Run the build with tmate debugging enabled (https://github.com/marketplace/actions/debugging-with-tmate)'
required: false
default: false
jobs:
# ovs-debug:
# runs-on: ubuntu-20.04-16-cores
# if: github.event_name == 'workflow_dispatch' && inputs.debug_enabled
# steps:
# - name: Checkout project
# uses: actions/checkout@v3
# - name: Install Poetry
# run: pipx install poetry
# - name: Setup Python
# uses: actions/setup-python@v4
# with:
# cache: poetry
# - name: Install dependencies
# run: poetry install --no-interaction --with dev
# # NOTE(mnaser): LVM commands take a long time if there are any existing
# # loop devices created by "snapd", so we uninstall it.
# - name: Uninstall "snapd"
# run: sudo apt-get purge -y snapd
# - name: Turn off swap
# run: sudo swapoff -a
# - name: Run Molecule Converge
# run: poetry run molecule converge -s ceph
# # Enable tmate debugging of manually-triggered workflows if the input option was provided
# - name: Setup tmate session
# if: ${{ failure() }}
# uses: mxschmitt/action-tmate@v3
# timeout-minutes: 60
# - name: Run Molecule Destroy
# run: poetry run molecule destroy -s ceph
# ovs:
# runs-on: ubuntu-20.04-16-cores
# if: github.event_name != 'workflow_dispatch' || !inputs.debug_enabled
# steps:
# - name: Checkout project
# uses: actions/checkout@v3
# - name: Install Poetry
# run: pipx install poetry
# - name: Setup Python
# uses: actions/setup-python@v4
# with:
# cache: poetry
# - name: Install dependencies
# run: poetry install --no-interaction --with dev
# # NOTE(mnaser): LVM commands take a long time if there are any existing
# # loop devices created by "snapd", so we uninstall it.
# - name: Uninstall "snapd"
# run: sudo apt-get purge -y snapd
# - name: Turn off swap
# run: sudo swapoff -a
# - name: Run Molecule
# run: poetry run molecule test -s ceph
ovn-debug:
runs-on: ubuntu-20.04-16-cores
# if: github.event_name == 'workflow_dispatch' && inputs.debug_enabled
steps:
- name: Checkout project
uses: actions/checkout@v3
- name: Install Poetry
run: pipx install poetry
- name: Setup Python
uses: actions/setup-python@v4
with:
cache: poetry
- name: Install dependencies
run: poetry install --no-interaction --with dev
# NOTE(mnaser): LVM commands take a long time if there are any existing
# loop devices created by "snapd", so we uninstall it.
- name: Uninstall "snapd"
run: sudo apt-get purge -y snapd
- name: Turn off swap
run: sudo swapoff -a
- name: Run Molecule Converge
run: poetry run molecule converge -s ceph
env:
OVN_ENABLED: true
# Enable tmate debugging of manually-triggered workflows if the input option was provided
- name: Setup tmate session
if: ${{ failure() }}
uses: mxschmitt/action-tmate@v3
timeout-minutes: 60
- name: Run Molecule Destroy
run: poetry run molecule destroy -s ceph
# ovn:
# runs-on: ubuntu-20.04-16-cores
# if: github.event_name != 'workflow_dispatch' || !inputs.debug_enabled
# steps:
# - name: Checkout project
# uses: actions/checkout@v3
# - name: Install Poetry
# run: pipx install poetry
# - name: Setup Python
# uses: actions/setup-python@v4
# with:
# cache: poetry
# - name: Install dependencies
# run: poetry install --no-interaction --with dev
# # NOTE(mnaser): LVM commands take a long time if there are any existing
# # loop devices created by "snapd", so we uninstall it.
# - name: Uninstall "snapd"
# run: sudo apt-get purge -y snapd
# - name: Turn off swap
# run: sudo swapoff -a
# - name: Run Molecule
# run: poetry run molecule test -s ceph
# env:
# OVN_ENABLED: true