|
5 | 5 | push: |
6 | 6 | branches: |
7 | 7 | - main |
| 8 | + paths-ignore: |
| 9 | + - 'README.md' |
8 | 10 |
|
9 | 11 | jobs: |
10 | 12 | build: |
@@ -107,4 +109,41 @@ jobs: |
107 | 109 | with: |
108 | 110 | context: . |
109 | 111 | push: true |
110 | | - tags: mikupush/server:${{ steps.version.outputs.current }},mikupush/server:latest |
| 112 | + tags: mikupush/server:${{ steps.version.outputs.current }}-${{ matrix.arch }},mikupush/server:latest-${{ matrix.arch }} |
| 113 | + |
| 114 | + docker-image-merge: |
| 115 | + needs: docker-image |
| 116 | + runs-on: ubuntu-24.04 |
| 117 | + steps: |
| 118 | + - uses: actions/checkout@v4 |
| 119 | + |
| 120 | + - name: Set up Docker Buildx |
| 121 | + uses: docker/setup-buildx-action@v3 |
| 122 | + |
| 123 | + - name: Login to Docker Hub |
| 124 | + uses: docker/login-action@v3 |
| 125 | + with: |
| 126 | + username: ${{ secrets.DOCKERHUB_USERNAME }} |
| 127 | + password: ${{ secrets.DOCKERHUB_TOKEN }} |
| 128 | + |
| 129 | + - name: Resolve version |
| 130 | + id: version |
| 131 | + run: | |
| 132 | + export VERSION=$(cat VERSION) |
| 133 | + echo "current version is $VERSION" |
| 134 | + echo "current=$(cat VERSION)" >> $GITHUB_OUTPUT |
| 135 | +
|
| 136 | + - name: Merge manifests for latest tag |
| 137 | + run: | |
| 138 | + docker buildx imagetools create -t mikupush/server:latest \ |
| 139 | + mikupush/server:latest-amd64 \ |
| 140 | + mikupush/server:latest-arm64 |
| 141 | +
|
| 142 | + - name: Merge manifests for version tag |
| 143 | + run: | |
| 144 | + docker buildx imagetools create -t mikupush/server:${{ steps.version.outputs.current }} \ |
| 145 | + mikupush/server:${{ steps.version.outputs.current }}-amd64 \ |
| 146 | + mikupush/server:${{ steps.version.outputs.current }}-arm64 |
| 147 | +
|
| 148 | + - name: Push |
| 149 | + run: docker push mikupush/server:latest && docker push mikupush/server:${{ steps.version.outputs.current }} |
0 commit comments