name: Release (PyPi, DockerHub) on: release: types: [published] jobs: pypi_release: name: Release on PyPi runs-on: ubuntu-latest if: github.repository == 'crocs-muni/sec-certs' steps: - uses: actions/checkout@v2 - name: Set up Python uses: actions/setup-python@v2 with: python-version: "3.8" - name: Install build dependencies run: python -m pip install build wheel - name: Build distributions shell: bash -l {0} run: python setup.py sdist bdist_wheel - name: Publish package to PyPI uses: pypa/gh-action-pypi-publish@master with: user: ${{ secrets.PYPI_USERNAME }} password: ${{ secrets.PYPI_PASSWORD }} docker_release: name: Release on DockerHub runs-on: ubuntu-latest if: github.repository == 'crocs-muni/sec-certs' steps: - name: Set up QEMU uses: docker/setup-qemu-action@v1 - name: Set up Docker Build uses: docker/setup-buildx-action@v1 - name: Login to DockerHub uses: docker/login-action@v1 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_PASSWORD }} - name: Extract metadata (tags, labels) for Docker id: meta uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38 with: images: seccerts/sec-certs - name: Build and push id: docker_build uses: docker/build-push-action@v2 with: file: docker/Dockerfile push: true tags: ${{ steps.meta.outputs.tags }}