name: Build and Push NLP Docker Image on: push: branches: [ main ] jobs: build: runs-on: ubuntu-latest steps: - name: Checkout repository with submodules uses: actions/checkout@v4 with: submodules: recursive token: ${{ secrets.ACCESS_TOKEN }} - name: Initialize submodules run: | git submodule sync --recursive git submodule update --init --recursive git submodule status ls -la src/modules/db ls -la src/modules/redis - name: Login to Registry uses: docker/login-action@v3 with: registry: gitea.spilum.net username: ${{ secrets.REGISTRY_USER }} password: ${{ secrets.REGISTRY_PASSWORD }} - name: Set SHORT_SHA id: vars run: echo "short_sha=${GITHUB_SHA::5}" >> "$GITHUB_OUTPUT" - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - name: Build and Push NLP (multi-arch) uses: docker/build-push-action@v6 with: context: . push: true platforms: linux/amd64,linux/arm64 build-args: | BUILD_IDENTIFIER=${{ steps.vars.outputs.short_sha }} tags: | gitea.spilum.net/spilum.net/mtf-nlp:${{ steps.vars.outputs.short_sha }} gitea.spilum.net/spilum.net/mtf-nlp:latest - name: Log out from registry if: always() run: docker logout gitea.spilum.net