Skip to content

Commit 7da3c60

Browse files
aledbfclaude
andcommitted
ci: mover data-root de Docker a /mnt en las lanes runtime (No space left on device)
parity-runtime falló con "No space left on device": la matriz runtime construye muchas imágenes reales y `ubuntu-latest` sólo trae ~14GB libres en / (donde vive /var/lib/docker y los logs del runner). Se mueve el data-root de Docker a /mnt (disco efímero grande del runner, ~70GB) en el mismo daemon.json donde ya se activa el containerd image store, y se eliminan SDKs preinstalados sin usar (dotnet/ghc/android) para dar aire al disco raíz. Aplica a parity-runtime y a la lane arm64 experimental. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent ab790e0 commit 7da3c60

1 file changed

Lines changed: 19 additions & 7 deletions

File tree

.github/workflows/go-cli.yml

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -111,13 +111,21 @@ jobs:
111111
- uses: actions/checkout@v7
112112
with:
113113
submodules: recursive
114-
# The runtime matrix builds with cache export / --platform, unsupported by the
115-
# default docker driver. Enable the containerd image store on the daemon.
116-
- name: Enable containerd image store
114+
# ubuntu-latest ships only ~14GB free on / but a large ephemeral disk on /mnt.
115+
# The runtime matrix builds many real images; keeping Docker's data-root on /
116+
# exhausts it ("No space left on device"). Move data-root to /mnt and, in the
117+
# same daemon config, enable the containerd image store (needed for cache
118+
# export / --platform, unsupported by the default docker driver). Also drop
119+
# unused preinstalled SDKs to give the root disk headroom (Go/Node are
120+
# reinstalled by the setup steps that follow).
121+
- name: Configure Docker (data-root on /mnt, containerd store) + free disk
117122
run: |
118-
echo '{"features":{"containerd-snapshotter":true}}' | sudo tee /etc/docker/daemon.json
123+
sudo rm -rf /usr/share/dotnet /opt/ghc /usr/local/lib/android || true
124+
sudo mkdir -p /mnt/docker
125+
echo '{"features":{"containerd-snapshotter":true},"data-root":"/mnt/docker"}' | sudo tee /etc/docker/daemon.json
119126
sudo systemctl restart docker
120-
echo "driver status:" && docker info -f '{{.DriverStatus}}'
127+
docker info -f 'root={{.DockerRootDir}} driver={{.DriverStatus}}'
128+
df -h / /mnt
121129
- uses: actions/setup-go@v6
122130
with:
123131
go-version-file: go.mod
@@ -163,10 +171,14 @@ jobs:
163171
uses: docker/setup-qemu-action@v3
164172
with:
165173
platforms: arm64
166-
- name: Enable containerd image store
174+
- name: Configure Docker (data-root on /mnt, containerd store) + free disk
167175
run: |
168-
echo '{"features":{"containerd-snapshotter":true}}' | sudo tee /etc/docker/daemon.json
176+
sudo rm -rf /usr/share/dotnet /opt/ghc /usr/local/lib/android || true
177+
sudo mkdir -p /mnt/docker
178+
echo '{"features":{"containerd-snapshotter":true},"data-root":"/mnt/docker"}' | sudo tee /etc/docker/daemon.json
169179
sudo systemctl restart docker
180+
docker info -f 'root={{.DockerRootDir}} driver={{.DriverStatus}}'
181+
df -h / /mnt
170182
- uses: actions/setup-go@v6
171183
with:
172184
go-version-file: go.mod

0 commit comments

Comments
 (0)