name: Build And Publish Docker on: push: branches: - "master" jobs: build: runs-on: node-22 strategy: matrix: hugo-version: [ "0.124.1", "0.125.7", "0.126.3", "0.128.2" ] node-version: [ "20.9.0", "21.7.3", "22.4.1" ] steps: - uses: actions/checkout@v3 - name: Set up Docker uses: https://github.com/crazy-max/ghaction-setup-docker@v3 - name: Set up Docker Buildx id: buildx uses: docker/setup-buildx-action@master - name: Login to Self-Hosted Registry uses: docker/login-action@v2 with: registry: codeberg.org username: ${{ secrets.REGISTRY_USER }} password: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - name: Build and Push Extended Version uses: docker/build-push-action@v4 with: builder: ${{ steps.buildx.outputs.name }} context: ./ file: ./Dockerfile platforms: linux/amd64 push: true build-args: | HUGO_VERSION=${{ matrix.hugo-version }} NODE_VERSION=${{ matrix.node-version }} tags: | "codeberg.org/mycosystems/hugo-ci:${{ matrix.hugo-version }}-${{ matrix.node-version }}" build-latest: runs-on: node-22 steps: - uses: actions/checkout@v3 - name: Set up Docker uses: https://github.com/crazy-max/ghaction-setup-docker@v3 - name: Set up Docker Buildx id: buildx uses: docker/setup-buildx-action@master - name: Login to Self-Hosted Registry uses: docker/login-action@v2 with: registry: codeberg.org username: ${{ secrets.REGISTRY_USER }} password: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - name: Build and Push Extended Version uses: docker/build-push-action@v4 with: builder: ${{ steps.buildx.outputs.name }} context: ./ file: ./Dockerfile platforms: linux/amd64 push: true build-args: | HUGO_VERSION=0.128.2 NODE_VERSION=22.4.1 tags: | codeberg.org/mycosystems/hugo-ci:latest