feat(ci): Add a debug job for molecule ceph workflow
diff --git a/.github/workflows/ceph.yml b/.github/workflows/ceph.yml
index fd03b14..df302e5 100644
--- a/.github/workflows/ceph.yml
+++ b/.github/workflows/ceph.yml
@@ -19,10 +19,54 @@
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:
+ 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
+ uses: mxschmitt/action-tmate@v3
+
+ - name: Run Molecule Destroy
+ run: poetry run molecule destroy -s ceph
+
test:
runs-on: ubuntu-20.04-16-cores
+ if: ! ${{ github.event_name == 'workflow_dispatch' && inputs.debug_enabled }}
steps:
- name: Checkout project
uses: actions/checkout@v3