name: Development Image on: workflow_run: workflows: ["unit test"] branches: - main types: - completed concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: build_and_push_image: name: build image and push to Docker Hub if: ${{ github.event.workflow_run.conclusion == 'success' && github.repository_owner == 'neodb-social' }} runs-on: ubuntu-latest steps: - name: Check out the repo uses: actions/checkout@v4 with: submodules: 'true' - name: Check git version id: version run: | echo "neodb=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT cd neodb-takahe echo "takahe=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT - name: Overwrite version in code env: REF_NAME: ${{ github.ref_name }} run: | echo '__version__ = "'$REF_NAME'"' > boofilsic/__init__.py echo '__version__ = "'$REF_NAME'"' > neodb-takahe/takahe/neodb.py - name: Send Discord notification uses: appleboy/discord-action@master with: webhook_id: ${{ secrets.DISCORD_WEBHOOK_ID }} webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }} color: "#1857a4" message: Building development image ${{ github.ref_name }}-${{ steps.version.outputs.neodb }}-${{ steps.version.outputs.takahe }} - name: Set up QEMU uses: docker/setup-qemu-action@v2 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Docker metadata id: meta uses: docker/metadata-action@v4 with: images: neodb/neodb tags: | type=edge,branch=main - name: Login to DockerHub if: github.event_name != 'pull_request' uses: docker/login-action@v2 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build and push uses: docker/build-push-action@v4 with: context: . platforms: "linux/amd64,linux/arm64" push: ${{ github.event_name != 'pull_request' }} tags: ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} - name: Send Discord notification complete uses: appleboy/discord-action@master with: webhook_id: ${{ secrets.DISCORD_WEBHOOK_ID }} webhook_token: ${{ secrets.DISCORD_WEBHOOK_TOKEN }} color: "#1857a4" message: Published development image ${{ github.ref_name }}-${{ steps.version.outputs.neodb }}-${{ steps.version.outputs.takahe }}