Docker Image CI #1592
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: Docker Image CI | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- master | |
schedule: | |
# * is a special character in YAML so you have to quote this string | |
- cron: '0 0 * * *' | |
jobs: | |
build: | |
runs-on: 'ubuntu-latest' | |
steps: | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
if: github.event_name != 'push' | |
with: | |
platforms: arm64 | |
- name: Check Out Repo | |
uses: actions/checkout@v3 | |
- name: Check Out Repo Invidious | |
uses: actions/checkout@v3 | |
with: | |
repository: "iv-org/invidious" | |
ref: 'master' | |
path: 'invidious' | |
- name: patch invidious main repo | |
run: | | |
cd invidious | |
git config --global user.email "you@example.com" | |
git config --global user.name "Your Name" | |
git am ../patches/*.patch | |
sed -i 's/https:\/\/invidious.io\/donate\//\/donate/g' src/invidious/views/template.ecr | |
- name: Login to Docker Hub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKER_HUB_USERNAME }} | |
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} | |
- name: Set up Docker Buildx | |
id: buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Set up build commit id | |
run: echo "commitid=$(cd invidious && git log --format="%H" -n 1)-$(git log --format="%H" -n 1)" >> $GITHUB_ENV | |
- name: Build and push alpine docker image | |
id: docker_build_new | |
uses: docker/build-push-action@v3 | |
with: | |
context: ./ | |
file: ./Dockerfile.new | |
build-args: | | |
release=1 | |
platforms: linux/arm64/v8 | |
push: true | |
tags: unixfox/invidious-custom:new-latest, unixfox/invidious-custom:new-build-${{ env.commitid }} | |
# - name: patch invidious API repo | |
# run: | | |
# cd invidious | |
# git config --global user.email "you@example.com" | |
# git config --global user.name "Your Name" | |
# git am ../patches-api/*.patch | |
# - name: Build and push alpine docker image with API only | |
# id: docker_build_new_api | |
# uses: docker/build-push-action@v3 | |
# with: | |
# context: ./ | |
# file: ./Dockerfile.new | |
# build-args: | | |
# release=1 | |
# add_build_args=-Dapi_only | |
# platforms: linux/amd64,linux/arm64/v8 | |
# push: true | |
# tags: unixfox/invidious-custom:api-new-latest, unixfox/invidious-custom:api-new-build-${{ env.commitid }} | |
# - name: Build and push official crystal docker image | |
# id: docker_build | |
# uses: docker/build-push-action@v3 | |
# with: | |
# context: ./ | |
# build-args: | | |
# release=1 | |
# file: ./Dockerfile | |
# push: true | |
# tags: unixfox/invidious-custom:latest, unixfox/invidious-custom:build-${{ env.commitid }} |