Skip to content

Commit a0c71b2

Browse files
authored
Add consolidated free-disk-space action (#3285)
1 parent fa57088 commit a0c71b2

18 files changed

+109
-96
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: 'Free Disk Space'
2+
description: 'Frees up disk space on Ubuntu runners by removing unnecessary packages and files'
3+
runs:
4+
using: "composite"
5+
steps:
6+
- name: Free Disk Space (Ubuntu)
7+
uses: jlumbroso/free-disk-space@main
8+
with:
9+
tool-cache: false
10+
large-packages: true
11+
android: true
12+
dotnet: true
13+
haskell: true
14+
docker-images: true
15+
swap-storage: false
16+
shell: bash
17+
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: 'Setup Docker Storage'
2+
description: 'Configures Docker to use /mnt/docker-storage instead of /var/lib/docker'
3+
runs:
4+
using: "composite"
5+
steps:
6+
- name: Create docker/daemon.json if it does not exist
7+
shell: bash
8+
run: |
9+
if [ ! -f /etc/docker/daemon.json ]; then
10+
echo '{}' | sudo tee /etc/docker/daemon.json
11+
fi
12+
13+
- name: Make docker to use /mnt (sdb) for storage
14+
shell: bash
15+
run: |
16+
df -h
17+
lsblk
18+
sudo mkdir /mnt/docker-storage
19+
sudo jq '. +={"data-root" : "/mnt/docker-storage"}' < /etc/docker/daemon.json > /tmp/docker-daemon.json
20+
sudo cp /tmp/docker-daemon.json /etc/docker/daemon.json
21+
cat /etc/docker/daemon.json
22+
sudo systemctl restart docker
23+
sudo ls -la /mnt/docker-storage
24+

.github/workflows/pre-main.yaml

Lines changed: 4 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -435,22 +435,8 @@ jobs:
435435
# Restart docker using /mnt/docker-storage (sdb) instead of /var/lib/docker (sda).
436436
# This step needs to be done right after the partner repo's bootstrap scripts, as they
437437
# overwrite the docker's daemon.json.
438-
- name: Create docker/daemon.json if it does not exist
439-
run: |
440-
if [ ! -f /etc/docker/daemon.json ]; then
441-
echo '{}' | sudo tee /etc/docker/daemon.json
442-
fi
443-
444-
- name: Make docker to use /mnt (sdb) for storage
445-
run: |
446-
df -h
447-
lsblk
448-
sudo mkdir /mnt/docker-storage
449-
sudo jq '. +={"data-root" : "/mnt/docker-storage"}' < /etc/docker/daemon.json > /tmp/docker-daemon.json
450-
sudo cp /tmp/docker-daemon.json /etc/docker/daemon.json
451-
cat /etc/docker/daemon.json
452-
sudo systemctl restart docker
453-
sudo ls -la /mnt/docker-storage
438+
- name: Setup Docker Storage
439+
uses: ./.github/actions/setup-docker-storage
454440

455441
- name: Login to Quay.io
456442
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
@@ -502,22 +488,8 @@ jobs:
502488
# Restart docker using /mnt/docker-storage (sdb) instead of /var/lib/docker (sda).
503489
# This step needs to be done right after the partner repo's bootstrap scripts, as they
504490
# overwrite the docker's daemon.json.
505-
- name: Create docker/daemon.json if it does not exist
506-
run: |
507-
if [ ! -f /etc/docker/daemon.json ]; then
508-
echo '{}' | sudo tee /etc/docker/daemon.json
509-
fi
510-
511-
- name: Make docker to use /mnt (sdb) for storage
512-
run: |
513-
df -h
514-
lsblk
515-
sudo mkdir /mnt/docker-storage
516-
sudo jq '. +={"data-root" : "/mnt/docker-storage"}' < /etc/docker/daemon.json > /tmp/docker-daemon.json
517-
sudo cp /tmp/docker-daemon.json /etc/docker/daemon.json
518-
cat /etc/docker/daemon.json
519-
sudo systemctl restart docker
520-
sudo ls -la /mnt/docker-storage
491+
- name: Setup Docker Storage
492+
uses: ./.github/actions/setup-docker-storage
521493

522494
- name: Login to Quay.io
523495
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0

.github/workflows/qe-hosted-arm.yml

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -36,28 +36,18 @@ jobs:
3636
with:
3737
ref: ${{ github.sha }}
3838

39+
- name: Free Disk Space
40+
uses: ./.github/actions/free-disk-space
41+
continue-on-error: true
42+
3943
- name: Setup docker buildx
4044
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
4145

4246
# Restart docker using /mnt/docker-storage (sdb) instead of /var/lib/docker (sda).
4347
# This step needs to be done right after the partner repo's bootstrap scripts, as they
4448
# overwrite the docker's daemon.json.
45-
- name: Create docker/daemon.json if it does not exist
46-
run: |
47-
if [ ! -f /etc/docker/daemon.json ]; then
48-
echo '{}' | sudo tee /etc/docker/daemon.json
49-
fi
50-
51-
- name: Make docker to use /mnt (sdb) for storage
52-
run: |
53-
df -h
54-
lsblk
55-
sudo mkdir /mnt/docker-storage
56-
sudo jq '. +={"data-root" : "/mnt/docker-storage"}' < /etc/docker/daemon.json > /tmp/docker-daemon.json
57-
sudo cp /tmp/docker-daemon.json /etc/docker/daemon.json
58-
cat /etc/docker/daemon.json
59-
sudo systemctl restart docker
60-
sudo ls -la /mnt/docker-storage
49+
- name: Setup Docker Storage
50+
uses: ./.github/actions/setup-docker-storage
6151

6252
- name: Build temporary image tag for this PR
6353
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0

.github/workflows/qe-hosted.yml

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -41,28 +41,18 @@ jobs:
4141
with:
4242
ref: ${{ github.sha }}
4343

44+
- name: Free Disk Space
45+
uses: ./.github/actions/free-disk-space
46+
continue-on-error: true
47+
4448
- name: Setup docker buildx
4549
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
4650

4751
# Restart docker using /mnt/docker-storage (sdb) instead of /var/lib/docker (sda).
4852
# This step needs to be done right after the partner repo's bootstrap scripts, as they
4953
# overwrite the docker's daemon.json.
50-
- name: Create docker/daemon.json if it does not exist
51-
run: |
52-
if [ ! -f /etc/docker/daemon.json ]; then
53-
echo '{}' | sudo tee /etc/docker/daemon.json
54-
fi
55-
56-
- name: Make docker to use /mnt (sdb) for storage
57-
run: |
58-
df -h
59-
lsblk
60-
sudo mkdir /mnt/docker-storage
61-
sudo jq '. +={"data-root" : "/mnt/docker-storage"}' < /etc/docker/daemon.json > /tmp/docker-daemon.json
62-
sudo cp /tmp/docker-daemon.json /etc/docker/daemon.json
63-
cat /etc/docker/daemon.json
64-
sudo systemctl restart docker
65-
sudo ls -la /mnt/docker-storage
54+
- name: Setup Docker Storage
55+
uses: ./.github/actions/setup-docker-storage
6656

6757
- name: Build temporary image tag for this PR
6858
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0

.github/workflows/qe-ocp-414-intrusive.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ jobs:
2828
with:
2929
ref: ${{ github.sha }}
3030

31+
- name: Free Disk Space
32+
uses: ./.github/actions/free-disk-space
33+
continue-on-error: true
34+
3135
- name: Setup docker buildx
3236
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
3337

.github/workflows/qe-ocp-414.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ jobs:
2828
with:
2929
ref: ${{ github.sha }}
3030

31+
- name: Free Disk Space
32+
uses: ./.github/actions/free-disk-space
33+
continue-on-error: true
34+
3135
- name: Setup docker buildx
3236
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
3337

.github/workflows/qe-ocp-415-intrusive.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ jobs:
2828
with:
2929
ref: ${{ github.sha }}
3030

31+
- name: Free Disk Space
32+
uses: ./.github/actions/free-disk-space
33+
continue-on-error: true
34+
3135
- name: Setup docker buildx
3236
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
3337

.github/workflows/qe-ocp-415.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ jobs:
2828
with:
2929
ref: ${{ github.sha }}
3030

31+
- name: Free Disk Space
32+
uses: ./.github/actions/free-disk-space
33+
continue-on-error: true
34+
3135
- name: Setup docker buildx
3236
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
3337

.github/workflows/qe-ocp-416-intrusive.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ jobs:
2828
with:
2929
ref: ${{ github.sha }}
3030

31+
- name: Free Disk Space
32+
uses: ./.github/actions/free-disk-space
33+
continue-on-error: true
34+
3135
- name: Setup docker buildx
3236
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
3337

0 commit comments

Comments
 (0)