Skip to content

Commit 4787b25

Browse files
committed
Add proper docker termination
1 parent f6155eb commit 4787b25

File tree

3 files changed

+78
-9
lines changed

3 files changed

+78
-9
lines changed

.github/workflows/build-trios-trixie-dev.yml

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,27 +22,50 @@ jobs:
2222
shell: bash
2323
run: |
2424
_commit_hash=$(git rev-parse --short HEAD)
25+
_runner_name="${RUNNER_NAME:-default-runner}"
2526
2627
echo "${_commit_hash}" > ./Trixie/config/includes.chroot/etc/trios/release
2728
echo "commit_hash=${_commit_hash}" >> "$GITHUB_OUTPUT"
29+
echo "runner_name=${_runner_name}" >> "$GITHUB_OUTPUT"
2830
mkdir -p ./TriOs_Output
2931
30-
- name: Debug commit hash
32+
- name: Debug commit hash and runner name
3133
run: |
3234
echo "Commit hash is: ${{ steps.vars.outputs.commit_hash }}"
35+
echo "Runner name is: ${{ steps.vars.outputs.runner_name }}"
36+
37+
- name: Stop and Remove Old Container and Image (if exists)
38+
run: |
39+
_container_name="trios-builder-${{ steps.vars.outputs.runner_name }}"
40+
_image_name="trios-builder-${{ steps.vars.outputs.runner_name }}"
41+
42+
# Stop and remove any container with this name
43+
if [ "$(docker ps -aq -f name=^${_container_name}$)" ]; then
44+
echo "Stopping existing container: ${_container_name}"
45+
docker stop "${_container_name}" || true
46+
echo "Removing existing container: ${_container_name}"
47+
docker rm -f "${_container_name}" || true
48+
fi
49+
50+
# Remove old image if exists
51+
if [ "$(docker images -q ${_image_name})" ]; then
52+
echo "Removing old image: ${_image_name}"
53+
docker rmi -f "${_image_name}" || true
54+
fi
3355
3456
- name: Build Docker Image
3557
working-directory: ./builder
3658
run: |
37-
docker build -t trios-builder .
59+
docker build -t trios-builder-${{ steps.vars.outputs.runner_name }} .
3860
3961
- name: Run Docker Container (Privileged)
4062
run: |
4163
docker run --rm -i \
4264
--privileged \
65+
--name "trios-builder-${{ steps.vars.outputs.runner_name }}" \
4366
-v "./Trixie:/TriOs" \
4467
-v "./TriOs_Output:/TriOs_Output" \
45-
trios-builder
68+
"trios-builder-${{ steps.vars.outputs.runner_name }}"
4669
4770
- name: Verify ISO Output
4871
run: |

.github/workflows/build-trios-trixie-nightly.yml

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,27 +26,50 @@ jobs:
2626
shell: bash
2727
run: |
2828
_timestamp=$(date -u +"%Y-%m-%dT%H-%M-%SZ")
29+
_runner_name="${RUNNER_NAME:-default-runner}"
2930
3031
echo "${_timestamp}" > ./Trixie/config/includes.chroot/etc/trios/release
3132
echo "timestamp=${_timestamp}" >> "$GITHUB_OUTPUT"
33+
echo "runner_name=${_runner_name}" >> "$GITHUB_OUTPUT"
3234
mkdir -p ./TriOs_Output
3335
34-
- name: Debug timestamp
36+
- name: Debug timestamp and runner name
3537
run: |
3638
echo "Timestamp is: ${{ steps.vars.outputs.timestamp }}"
39+
echo "Runner name is: ${{ steps.vars.outputs.runner_name }}"
40+
41+
- name: Stop and Remove Old Container and Image (if exists)
42+
run: |
43+
_container_name="trios-builder-${{ steps.vars.outputs.runner_name }}"
44+
_image_name="trios-builder-${{ steps.vars.outputs.runner_name }}"
45+
46+
# Stop and remove any container with this name
47+
if [ "$(docker ps -aq -f name=^${_container_name}$)" ]; then
48+
echo "Stopping existing container: ${_container_name}"
49+
docker stop "${_container_name}" || true
50+
echo "Removing existing container: ${_container_name}"
51+
docker rm -f "${_container_name}" || true
52+
fi
53+
54+
# Remove old image if exists
55+
if [ "$(docker images -q ${_image_name})" ]; then
56+
echo "Removing old image: ${_image_name}"
57+
docker rmi -f "${_image_name}" || true
58+
fi
3759
3860
- name: Build Docker Image
3961
working-directory: ./builder
4062
run: |
41-
docker build -t trios-builder .
63+
docker build -t trios-builder-${{ steps.vars.outputs.runner_name }} .
4264
4365
- name: Run Docker Container (Privileged)
4466
run: |
4567
docker run --rm -i \
4668
--privileged \
69+
--name "trios-builder-${{ steps.vars.outputs.runner_name }}" \
4770
-v "./Trixie:/TriOs" \
4871
-v "./TriOs_Output:/TriOs_Output" \
49-
trios-builder
72+
"trios-builder-${{ steps.vars.outputs.runner_name }}"
5073
5174
- name: Verify ISO Output
5275
run: |

.github/workflows/build-trios-trixie-prod.yml

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ jobs:
2121
id: vars
2222
shell: bash
2323
run: |
24+
_runner_name="${RUNNER_NAME:-default-runner}"
2425
2526
if [ -f ./TriOs/Trixie/release_name ]; then
2627
_version=$(cat ./TriOs/Trixie/release_name | tr -d '\n\r')
@@ -30,24 +31,46 @@ jobs:
3031
3132
echo "${_version}" > ./Trixie/config/includes.chroot/etc/trios/release
3233
echo "version=${_version}" >> "$GITHUB_OUTPUT"
34+
echo "runner_name=${_runner_name}" >> "$GITHUB_OUTPUT"
3335
mkdir -p ./TriOs_Output
3436
35-
- name: Debug version
37+
- name: Debug version and runner name
3638
run: |
3739
echo "Version is: ${{ steps.vars.outputs.version }}"
40+
echo "Runner name is: ${{ steps.vars.outputs.runner_name }}"
41+
42+
- name: Stop and Remove Old Container and Image (if exists)
43+
run: |
44+
_container_name="trios-builder-${{ steps.vars.outputs.runner_name }}"
45+
_image_name="trios-builder-${{ steps.vars.outputs.runner_name }}"
46+
47+
# Stop and remove any container with this name
48+
if [ "$(docker ps -aq -f name=^${_container_name}$)" ]; then
49+
echo "Stopping existing container: ${_container_name}"
50+
docker stop "${_container_name}" || true
51+
echo "Removing existing container: ${_container_name}"
52+
docker rm -f "${_container_name}" || true
53+
fi
54+
55+
# Remove old image if exists
56+
if [ "$(docker images -q ${_image_name})" ]; then
57+
echo "Removing old image: ${_image_name}"
58+
docker rmi -f "${_image_name}" || true
59+
fi
3860
3961
- name: Build Docker Image
4062
working-directory: ./builder
4163
run: |
42-
docker build -t trios-builder .
64+
docker build -t trios-builder-${{ steps.vars.outputs.runner_name }} .
4365
4466
- name: Run Docker Container (Privileged)
4567
run: |
4668
docker run --rm -i \
4769
--privileged \
70+
--name "trios-builder-${{ steps.vars.outputs.runner_name }}" \
4871
-v "./Trixie:/TriOs" \
4972
-v "./TriOs_Output:/TriOs_Output" \
50-
trios-builder
73+
"trios-builder-${{ steps.vars.outputs.runner_name }}"
5174
5275
- name: Verify ISO Output
5376
run: |

0 commit comments

Comments
 (0)