Files
rbcs/.gitea/workflows/build-dev.yaml
T
woggioni d882051840
CI / java-build (push) Successful in 56s
CI / docker-build (push) Successful in 47s
try to implement build cache
2026-08-24 17:14:11 +08:00

130 lines
3.8 KiB
YAML

name: CI
on:
push:
branches:
- 'dev'
env:
JAVA_VERSION: '25'
GRADLE_VERSION: '9.7.1'
jobs:
java-build:
runs-on: woryzen
container:
image: gitea.woggioni.net/woggioni/gitea-runner/archlinux:latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up JDK
uses: actions/setup-java@v5
with:
distribution: 'graalvm'
java-version: ${{ env.JAVA_VERSION }}
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v6
with:
gradle-version: ${{ env.GRADLE_VERSION }}
# Only the main branch writes to the cache; PRs/feature branches read-only
cache-read-only: false
- name: Run Gradle build
run: ./gradlew build
- name: Prepare Docker image build
run: ./gradlew prepareDockerBuild
- name: Get project version
id: retrieve-version
run: ./gradlew -q version >> "$GITHUB_OUTPUT"
- name: Upload folder as artifact
uses: actions/upload-artifact@v3
with:
name: docker-context
path: docker/build/docker
docker-build:
runs-on: woryzen
needs: java-build
steps:
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: docker-context
path: docker
- name: Login to Gitea container registry
uses: docker/login-action@v3
with:
registry: gitea.woggioni.net
username: woggioni
password: ${{ secrets.PUBLISHER_TOKEN }}
-
name: Build rbcs Docker image
uses: docker/build-push-action@v5.3.0
with:
builder: "multiplatform-builder"
context: "docker"
platforms: linux/amd64,linux/arm64
push: true
pull: true
tags: |
gitea.woggioni.net/woggioni/rbcs:dev-vanilla
target: release-vanilla
-
name: Build rbcs memcache Docker image
uses: docker/build-push-action@v5.3.0
with:
builder: "multiplatform-builder"
context: "docker"
platforms: linux/amd64,linux/arm64
push: true
pull: true
tags: |
gitea.woggioni.net/woggioni/rbcs:dev-memcache
target: release-memcache
-
name: Build rbcs redis Docker image
uses: docker/build-push-action@v5.3.0
with:
builder: "multiplatform-builder"
context: "docker"
platforms: linux/amd64,linux/arm64
push: true
pull: true
tags: |
gitea.woggioni.net/woggioni/rbcs:dev-redis
target: release-redis
-
name: Build rbcs full Docker image
uses: docker/build-push-action@v5.3.0
with:
builder: "multiplatform-builder"
context: "docker"
platforms: linux/amd64,linux/arm64
push: true
pull: true
tags: |
gitea.woggioni.net/woggioni/rbcs:dev-full
target: release-full
-
name: Build rbcs native Docker image
uses: docker/build-push-action@v5.3.0
with:
builder: "multiplatform-builder"
context: "docker"
platforms: linux/amd64
push: true
pull: true
tags: |
gitea.woggioni.net/woggioni/rbcs:dev-native
target: release-native
-
name: Build rbcs jlink Docker image
uses: docker/build-push-action@v5.3.0
with:
builder: "multiplatform-builder"
context: "docker"
platforms: linux/amd64
push: true
pull: true
tags: |
gitea.woggioni.net/woggioni/rbcs:dev-jlink
target: release-jlink