Drop building cryptography from source (#219) #197
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Apprise API Image | |
on: | |
push: | |
branches: master | |
tags: | |
- v* | |
jobs: | |
buildx: | |
name: Build Docker Image | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Check pushing to Docker Hub | |
id: push-other-places | |
# Only push to Dockerhub from the main repo | |
# Otherwise forks would require a Docker Hub account and secrets setup | |
run: | | |
if [[ ${{ github.repository_owner }} == "caronc" ]] ; then | |
echo "Enabling DockerHub image push" | |
echo "enable=true" >> $GITHUB_OUTPUT | |
else | |
echo "Not pushing to DockerHub" | |
echo "enable=false" >> $GITHUB_OUTPUT | |
fi | |
# Mostly for forks, set an output package name for ghcr.io using the repo name | |
- name: Set ghcr repository name | |
id: set-ghcr-repository | |
run: | | |
ghcr_name=$(echo "${{ github.repository_owner }}/apprise" | awk '{ print tolower($0) }') | |
echo "Name is ${ghcr_name}" | |
echo "ghcr-repository=${ghcr_name}" >> $GITHUB_OUTPUT | |
- name: Docker meta | |
id: docker_meta | |
uses: docker/metadata-action@v5 | |
with: | |
images: | | |
ghcr.io/${{ steps.set-ghcr-repository.outputs.ghcr-repository }} | |
name=docker.io/caronc/apprise,enable=${{ steps.push-other-places.outputs.enable }} | |
tags: | | |
type=semver,event=tag,pattern={{version}} | |
type=semver,event=tag,pattern={{major}}.{{minor}} | |
type=edge,branch=master | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Login to DockerHub | |
uses: docker/login-action@v3 | |
# Don't attempt to login is not pushing to Docker Hub | |
if: steps.push-other-places.outputs.enable == 'true' | |
with: | |
username: ${{ secrets.DOCKER_USERNAME }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
uses: docker/login-action@v3 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v6 | |
with: | |
context: . | |
platforms: linux/amd64,linux/arm64 | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: ${{ steps.docker_meta.outputs.tags }} | |
labels: ${{ steps.docker_meta.outputs.labels }} |