|
@@ -4,6 +4,7 @@ on:
|
|
|
push:
|
|
|
paths:
|
|
|
- 'aria2/Dockerfile'
|
|
|
+ - 'aria2/Dockerfile.aria2c'
|
|
|
- 'aria2/root/**'
|
|
|
workflow_dispatch:
|
|
|
|
|
@@ -13,40 +14,58 @@ jobs:
|
|
|
runs-on: ubuntu-latest
|
|
|
steps:
|
|
|
- name: Checkout
|
|
|
- uses: actions/checkout@v3
|
|
|
+ uses: actions/checkout@v4
|
|
|
|
|
|
- name: 'Set env'
|
|
|
run: |
|
|
|
- echo "ARIA2_VER=$(echo `grep -n "ARIA2_VER=" aria2/Dockerfile`|awk -F= '{print $2}')" >> $GITHUB_ENV
|
|
|
echo "AriaNg_VER=$(echo `grep -n "AriaNg_VER=" aria2/Dockerfile`|awk -F= '{print $2}')" >> $GITHUB_ENV
|
|
|
+ echo "ARIA2_VER=$(echo `grep -n "ARIA2_VER=" aria2/Dockerfile.aria2c`|awk -F= '{print $2}')" >> $GITHUB_ENV
|
|
|
+ echo "ALPINE_VER=$(echo `grep -n "FROM alpine" aria2/Dockerfile.aria2c`|awk -F: '{print $3}')" >> $GITHUB_ENV
|
|
|
|
|
|
- name: Set up QEMU
|
|
|
id: qemu
|
|
|
- uses: docker/setup-qemu-action@v2
|
|
|
+ uses: docker/setup-qemu-action@v3
|
|
|
with:
|
|
|
platforms: all
|
|
|
|
|
|
- name: Set up Docker Buildx
|
|
|
id: buildx
|
|
|
- uses: docker/setup-buildx-action@v2
|
|
|
+ uses: docker/setup-buildx-action@v3
|
|
|
with:
|
|
|
version: latest
|
|
|
|
|
|
- name: Login to DockerHub
|
|
|
- uses: docker/login-action@v2
|
|
|
+ uses: docker/login-action@v3
|
|
|
with:
|
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
|
|
|
|
- name: Login to GHCR
|
|
|
- uses: docker/login-action@v2
|
|
|
+ uses: docker/login-action@v3
|
|
|
with:
|
|
|
registry: ghcr.io
|
|
|
username: ${{ github.actor }}
|
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
|
|
+ - name: Check image exist
|
|
|
+ id: aria2c-check-step
|
|
|
+ run: |
|
|
|
+ if [ `DOCKER_CLI_EXPERIMENTAL=enabled docker manifest inspect ghcr.io/gshang2017/aria2c:${{ env.ARIA2_VER }}-alpine-${{ env.ALPINE_VER }} > /dev/null 2>&1; echo $?` == "0" ];then echo "skipnext=true" >> $GITHUB_OUTPUT;fi
|
|
|
+
|
|
|
+ - name: Build and push
|
|
|
+ if : ( steps.aria2c-check-step.outputs.skipnext != 'true' )
|
|
|
+ uses: docker/build-push-action@v6
|
|
|
+ with:
|
|
|
+ context: ./aria2
|
|
|
+ file: ./aria2/Dockerfile.aria2c
|
|
|
+ platforms: linux/amd64,linux/arm64,linux/arm/v7
|
|
|
+ push: true
|
|
|
+ tags: |
|
|
|
+ ghcr.io/gshang2017/aria2c:latest
|
|
|
+ ghcr.io/gshang2017/aria2c:${{ env.ARIA2_VER }}-alpine-${{ env.ALPINE_VER }}
|
|
|
+
|
|
|
- name: Build and push
|
|
|
- uses: docker/build-push-action@v2
|
|
|
+ uses: docker/build-push-action@v6
|
|
|
with:
|
|
|
context: ./aria2
|
|
|
file: ./aria2/Dockerfile
|