diff --git a/.github/workflows/docker-ubuntu-branch-image.yml b/.github/workflows/docker-ubuntu-branch-image-arm64.yml similarity index 88% rename from .github/workflows/docker-ubuntu-branch-image.yml rename to .github/workflows/docker-ubuntu-branch-image-arm64.yml index 9e8e4d54..7a046395 100644 --- a/.github/workflows/docker-ubuntu-branch-image.yml +++ b/.github/workflows/docker-ubuntu-branch-image-arm64.yml @@ -1,4 +1,4 @@ -name: Docker Ubuntu 22.04 branch image +name: Docker Ubuntu 22.04 branch image arm64 on: workflow_dispatch: @@ -12,7 +12,7 @@ env: jobs: build-and-push: - runs-on: ubuntu-24.04 + runs-on: ubuntu-22.04 steps: - name: Check out repository uses: actions/checkout@v3 @@ -24,8 +24,6 @@ jobs: - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3.10.0 - with: - driver-opts: image=moby/buildkit:v0.11.0 - name: Login to GitHub Container Registry uses: docker/login-action@v3 @@ -54,7 +52,7 @@ jobs: id: docker_build uses: docker/build-push-action@v6 with: - platforms: linux/amd64,linux/arm64 + platforms: linux/arm64 push: true context: ./ tags: | diff --git a/.github/workflows/docker-ubuntu-branch-image-х86-64.yml b/.github/workflows/docker-ubuntu-branch-image-х86-64.yml new file mode 100644 index 00000000..122ce02d --- /dev/null +++ b/.github/workflows/docker-ubuntu-branch-image-х86-64.yml @@ -0,0 +1,59 @@ +name: Docker Ubuntu 22.04 branch image x86-64 + +on: + workflow_dispatch: + push: + branches-ignore: + - master + +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + +jobs: + build-and-push: + runs-on: ubuntu-22.04 + steps: + - name: Check out repository + uses: actions/checkout@v3 + with: + submodules: 'recursive' + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3.5.0 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3.10.0 + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build and export to Docker + uses: docker/build-push-action@v6 + with: + load: true + context: ./ + tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:test + + - name: Test + run: | + docker run --rm -e "TEST=1" ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:test + + - name: Get tag as branch name + id: tag + run: | + echo "TAG=${GITHUB_REF##*/}" >> $GITHUB_OUTPUT + + - name: Build and push + id: docker_build + uses: docker/build-push-action@v6 + with: + platforms: linux/amd64 + push: true + context: ./ + tags: | + ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.tag.outputs.TAG }} diff --git a/.github/workflows/docker-ubuntu-image.yml b/.github/workflows/docker-ubuntu-image-arm64.yml similarity index 94% rename from .github/workflows/docker-ubuntu-image.yml rename to .github/workflows/docker-ubuntu-image-arm64.yml index 971ceb85..2d5e128f 100644 --- a/.github/workflows/docker-ubuntu-image.yml +++ b/.github/workflows/docker-ubuntu-image-arm64.yml @@ -1,4 +1,4 @@ -name: Docker Ubuntu 22.04 image +name: Docker Ubuntu 22.04 image arm64 on: workflow_dispatch: @@ -12,7 +12,7 @@ env: jobs: build-and-push: - runs-on: ubuntu-24.04 + runs-on: ubuntu-22.04 steps: - name: Check out repository uses: actions/checkout@v3 @@ -60,7 +60,7 @@ jobs: id: docker_build uses: docker/build-push-action@v6 with: - platforms: linux/amd64,linux/arm64 + platforms: linux/arm64 push: true context: ./ tags: | diff --git a/.github/workflows/docker-ubuntu-image-x86-64.yml b/.github/workflows/docker-ubuntu-image-x86-64.yml new file mode 100644 index 00000000..6ae6d6fd --- /dev/null +++ b/.github/workflows/docker-ubuntu-image-x86-64.yml @@ -0,0 +1,68 @@ +name: Docker Ubuntu 22.04 image x86-64 + +on: + workflow_dispatch: + push: + branches: + - 'master' + +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + +jobs: + build-and-push: + runs-on: ubuntu-22.04 + steps: + - name: Check out repository + uses: actions/checkout@v3 + with: + submodules: 'recursive' + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3.5.0 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3.10.0 + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build and export to Docker + uses: docker/build-push-action@v6 + with: + load: true + context: ./ + tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:test + + - name: Test + run: | + docker run --rm -e "TEST=1" ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:test + + - name: Get next tag + id: tag + run: | + git fetch --all --tags + git tag -l + NEW_TAG=v$(date +'%Y.%m') + FOUND=$(git tag -l | grep $NEW_TAG | wc -l) + if [ $FOUND -eq 0 ]; then + echo "TAG=$NEW_TAG" >> $GITHUB_OUTPUT + else + echo "TAG=$NEW_TAG-$FOUND" >> $GITHUB_OUTPUT + fi + + - name: Build and push + id: docker_build + uses: docker/build-push-action@v6 + with: + platforms: linux/amd64 + push: true + context: ./ + tags: | + ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest + ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ steps.tag.outputs.TAG }}