name: Test and Build Latest Container Image on: schedule: - cron: "0 10 * * *" push: branches: - "**" tags: - "v*.*.*" pull_request: branches: - "master" jobs: tox: runs-on: ubuntu-latest strategy: matrix: python-version: ["3.8", "3.9", "3.10", "3.11"] steps: - uses: actions/checkout@v2 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install tox tox-gh-actions - name: Test with tox run: tox build: needs: tox runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Get Branch Name id: branch-name uses: tj-actions/branch-names@v6 - name: Setup QEMU uses: docker/setup-qemu-action@v2 - name: Setup Docker Buildx uses: docker/setup-buildx-action@v2 - name: Login to Docker HUB uses: docker/login-action@v2 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build the Docker image uses: docker/build-push-action@v3 with: context: "{{defaultContext}}:docker" platforms: linux/amd64 file: ./Dockerfile-dev build-args: | BRANCH=${{ steps.branch-name.outputs.current_branch }} BUILDX_QEMU_ENV=true push: true tags: | hemna6969/aprsd:${{ steps.branch-name.outputs.current_branch }}