-
Notifications
You must be signed in to change notification settings - Fork 39
65 lines (57 loc) · 1.79 KB
/
nightly-cleanup.yml
File metadata and controls
65 lines (57 loc) · 1.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
name: Cleanup CI clusters
'on':
workflow_dispatch:
schedule:
- cron: '0 21 * * *' # Run at 9PM - image sync runs at midnight
permissions: {}
jobs:
ci_cleanup:
name: ci-cleanup
concurrency: ${{ github.workflow }}-${{ github.ref }}-${{ matrix.cloud }}
strategy:
fail-fast: false
matrix:
cloud:
- LEAFCLOUD
- SMS
- ARCUS
runs-on: ubuntu-24.04
env:
OS_CLOUD: openstack
CI_CLOUD: ${{ matrix.cloud }}
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
with:
persist-credentials: false
- name: Record which cloud CI is running on
run: |
echo "CI_CLOUD: ${CI_CLOUD}" | tee -a "$GITHUB_STEP_SUMMARY"
- name: Setup environment
run: |
python3 -m venv venv
. venv/bin/activate
pip install -U pip
pip install "$(grep -o 'python-openstackclient[><=0-9\.]*' requirements.txt)"
shell: bash
- name: Write clouds.yaml
run: |
mkdir -p ~/.config/openstack/
echo "$SECRETS_CLOUD" > ~/.config/openstack/clouds.yaml
shell: bash
env:
SECRETS_CLOUD: ${{ secrets[format('{0}_CLOUDS_YAML', env.CI_CLOUD)] }} # zizmor: ignore[overprovisioned-secrets]
- name: Delete all CI clusters
run: |
. venv/bin/activate
./dev/delete-cluster.py slurmci-RL --force
shell: bash
- name: Delete all CI extra build VMs and volumes
run: |
. venv/bin/activate
./dev/delete-cluster.py openhpc-extra-RL --force
shell: bash
- name: Delete all fatimage build VMs and volumes
run: |
. venv/bin/activate
./dev/delete-cluster.py openhpc-RL --force
shell: bash