This commit is contained in:
@@ -44,10 +44,8 @@ jobs:
|
|||||||
--build-arg LLVM_VERSION=22 \
|
--build-arg LLVM_VERSION=22 \
|
||||||
--build-arg MESON_VERSION=latest \
|
--build-arg MESON_VERSION=latest \
|
||||||
-t "$REGISTRY_IMAGE:latest" \
|
-t "$REGISTRY_IMAGE:latest" \
|
||||||
-t "$REGISTRY_IMAGE:clang22" \
|
|
||||||
-f ci/Dockerfile .
|
-f ci/Dockerfile .
|
||||||
|
|
||||||
- name: Push CI image
|
- name: Push CI image
|
||||||
run: |
|
run: |
|
||||||
docker push "$REGISTRY_IMAGE:latest"
|
docker push "$REGISTRY_IMAGE:latest"
|
||||||
docker push "$REGISTRY_IMAGE:clang22"
|
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
container:
|
container:
|
||||||
image: git.neosisyphus.com/evol3d/evol-testbed:clang22
|
image: git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|||||||
+2
-5
@@ -76,10 +76,8 @@ Tag and push:
|
|||||||
docker login git.neosisyphus.com
|
docker login git.neosisyphus.com
|
||||||
|
|
||||||
docker tag evol-testbed:latest git.neosisyphus.com/evol3d/evol-testbed:latest
|
docker tag evol-testbed:latest git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
docker tag evol-testbed:latest git.neosisyphus.com/evol3d/evol-testbed:clang22
|
|
||||||
|
|
||||||
docker push git.neosisyphus.com/evol3d/evol-testbed:latest
|
docker push git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
docker push git.neosisyphus.com/evol3d/evol-testbed:clang22
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Build automatically in Gitea Actions
|
## Build automatically in Gitea Actions
|
||||||
@@ -94,7 +92,6 @@ It builds and pushes:
|
|||||||
|
|
||||||
```text
|
```text
|
||||||
${REGISTRY_IMAGE}:latest
|
${REGISTRY_IMAGE}:latest
|
||||||
${REGISTRY_IMAGE}:clang22
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Use in normal builds
|
## Use in normal builds
|
||||||
@@ -103,12 +100,12 @@ ${REGISTRY_IMAGE}:clang22
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
container:
|
container:
|
||||||
image: ${{ vars.CI_IMAGE }}:clang22
|
image: ${{ vars.CI_IMAGE }}:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
If expressions do not work in `container.image` on your Gitea version, replace it with the literal image path:
|
If expressions do not work in `container.image` on your Gitea version, replace it with the literal image path:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
container:
|
container:
|
||||||
image: git.neosisyphus.com/evol3d/evol-testbed:clang22
|
image: git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
```
|
```
|
||||||
|
|||||||
+19
-25
@@ -60,11 +60,10 @@ Image path:
|
|||||||
git.neosisyphus.com/evol3d/evol-testbed
|
git.neosisyphus.com/evol3d/evol-testbed
|
||||||
```
|
```
|
||||||
|
|
||||||
The pushed tags will be:
|
The pushed tag will be:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
git.neosisyphus.com/evol3d/evol-testbed:latest
|
git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
git.neosisyphus.com/evol3d/evol-testbed:clang22
|
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -202,11 +201,10 @@ The image build workflow is:
|
|||||||
.gitea/workflows/build-ci-image.yml
|
.gitea/workflows/build-ci-image.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
It logs into your registry, builds the image, and pushes two tags:
|
It logs into your registry, builds the image, and pushes this tag:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
latest
|
latest
|
||||||
clang22
|
|
||||||
```
|
```
|
||||||
|
|
||||||
The important commands are:
|
The important commands are:
|
||||||
@@ -219,13 +217,11 @@ The important commands are:
|
|||||||
--build-arg LLVM_VERSION=22 \
|
--build-arg LLVM_VERSION=22 \
|
||||||
--build-arg MESON_VERSION=latest \
|
--build-arg MESON_VERSION=latest \
|
||||||
-t "${{ vars.REGISTRY_IMAGE }}:latest" \
|
-t "${{ vars.REGISTRY_IMAGE }}:latest" \
|
||||||
-t "${{ vars.REGISTRY_IMAGE }}:clang22" \
|
|
||||||
-f ci/Dockerfile .
|
-f ci/Dockerfile .
|
||||||
|
|
||||||
- name: Push CI image
|
- name: Push CI image
|
||||||
run: |
|
run: |
|
||||||
docker push "${{ vars.REGISTRY_IMAGE }}:latest"
|
docker push "${{ vars.REGISTRY_IMAGE }}:latest"
|
||||||
docker push "${{ vars.REGISTRY_IMAGE }}:clang22"
|
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -327,11 +323,10 @@ In Gitea:
|
|||||||
evol-testbed
|
evol-testbed
|
||||||
```
|
```
|
||||||
|
|
||||||
Confirm these tags exist:
|
Confirm this tag exists:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
latest
|
latest
|
||||||
clang22
|
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -348,7 +343,7 @@ It uses:
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
container:
|
container:
|
||||||
image: ${{ vars.CI_IMAGE }}:clang22
|
image: ${{ vars.CI_IMAGE }}:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
If you set:
|
If you set:
|
||||||
@@ -360,7 +355,7 @@ CI_IMAGE=git.neosisyphus.com/evol3d/evol-testbed
|
|||||||
then the workflow uses:
|
then the workflow uses:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
git.neosisyphus.com/evol3d/evol-testbed:clang22
|
git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
The key workflow shape is:
|
The key workflow shape is:
|
||||||
@@ -377,7 +372,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
container:
|
container:
|
||||||
image: ${{ vars.CI_IMAGE }}:clang22
|
image: ${{ vars.CI_IMAGE }}:latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@@ -418,14 +413,14 @@ If the build fails because the image name is invalid, replace this:
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
container:
|
container:
|
||||||
image: ${{ vars.CI_IMAGE }}:clang22
|
image: ${{ vars.CI_IMAGE }}:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
with the literal image name:
|
with the literal image name:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
container:
|
container:
|
||||||
image: git.neosisyphus.com/evol3d/evol-testbed:clang22
|
image: git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
Then commit and push:
|
Then commit and push:
|
||||||
@@ -467,13 +462,13 @@ If your runner itself is Dockerized, make sure Docker credentials are available
|
|||||||
On the runner host:
|
On the runner host:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker pull git.neosisyphus.com/evol3d/evol-testbed:clang22
|
docker pull git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
Run it:
|
Run it:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker run --rm -it git.neosisyphus.com/evol3d/evol-testbed:clang22 bash
|
docker run --rm -it git.neosisyphus.com/evol3d/evol-testbed:latest bash
|
||||||
```
|
```
|
||||||
|
|
||||||
Inside the container:
|
Inside the container:
|
||||||
@@ -518,7 +513,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
container:
|
container:
|
||||||
image: git.neosisyphus.com/evol3d/evol-testbed:clang22
|
image: git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@@ -552,7 +547,6 @@ The image workflow will rebuild and push:
|
|||||||
|
|
||||||
```text
|
```text
|
||||||
latest
|
latest
|
||||||
clang22
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Your normal builds will use the updated image next time they run.
|
Your normal builds will use the updated image next time they run.
|
||||||
@@ -564,31 +558,31 @@ Your normal builds will use the updated image next time they run.
|
|||||||
Instead of only using:
|
Instead of only using:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
clang22
|
latest
|
||||||
```
|
```
|
||||||
|
|
||||||
consider immutable tags:
|
consider immutable tags:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
clang22-v1
|
v1
|
||||||
clang22-v2
|
v2
|
||||||
clang22-2026-05
|
v2026-05
|
||||||
```
|
```
|
||||||
|
|
||||||
Example build command tag:
|
Example build command tag:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
-t "${{ vars.REGISTRY_IMAGE }}:clang22-v1"
|
-t "${{ vars.REGISTRY_IMAGE }}:v1"
|
||||||
```
|
```
|
||||||
|
|
||||||
Then use:
|
Then use:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
container:
|
container:
|
||||||
image: git.neosisyphus.com/evol3d/evol-testbed:clang22-v1
|
image: git.neosisyphus.com/evol3d/evol-testbed:v1
|
||||||
```
|
```
|
||||||
|
|
||||||
This avoids surprise breakage when `clang22` or `latest` changes.
|
This avoids surprise breakage when `latest` changes.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -613,5 +607,5 @@ The most important final workflow line is:
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
container:
|
container:
|
||||||
image: git.neosisyphus.com/evol3d/evol-testbed:clang22
|
image: git.neosisyphus.com/evol3d/evol-testbed:latest
|
||||||
```
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user