Skip to content

Docker build nitter tokens image #7712

Docker build nitter tokens image

Docker build nitter tokens image #7712

name: Docker build nitter tokens image
on:
workflow_dispatch:
schedule:
- cron: "0 * * * *"
push:
paths:
- '.github/workflows/docker-build-nitter-tokens.yml'
- 'nitter-tokens/**'
jobs:
build:
runs-on: ${{ (github.event_name == 'push') && fromJSON('[ "buildjet-4vcpu-ubuntu-2204-arm" ]') || 'ubuntu-latest' }}
steps:
- name: Get latest commit hash
id: get-latest-commit
run: |
echo "commit=$(git ls-remote https://github.com/unixfox/nitter.git |grep guest_accounts | awk '{print $1;}')" >> $GITHUB_ENV
shell: bash
- uses: actions/cache@v2
id: cache
with:
path: nitter-tokens
key: ${{ runner.os }}-v2-${{ env.commit }}
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
if: steps.cache.outputs.cache-hit != 'true'
with:
platforms: arm64
- name: Check Out Repo zedeus/nitter
uses: actions/checkout@v3
if: steps.cache.outputs.cache-hit != 'true'
with:
repository: "unixfox/nitter"
ref: 'guest_accounts'
path: 'nitter-tokens-git'
- name: Login to Quay.io
if: steps.cache.outputs.cache-hit != 'true'
uses: docker/login-action@v2
with:
registry: quay.io
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_PASSWORD }}
- name: Set up Docker Buildx
if: steps.cache.outputs.cache-hit != 'true'
id: buildx
uses: docker/setup-buildx-action@v2
with:
version: latest
- name: Set up build timestamp
if: steps.cache.outputs.cache-hit != 'true'
run: echo "timestamp=$(date +%Y%m%d)" >> $GITHUB_ENV
- name: Build and push docker image
if: steps.cache.outputs.cache-hit != 'true'
id: docker_build_new
uses: docker/build-push-action@v3
with:
context: ./nitter-tokens-git
file: ./nitter-tokens-git/Dockerfile.arm64
platforms: linux/arm64/v8
push: true
tags: quay.io/unixfox/nitter-tokens:latest, quay.io/unixfox/nitter-tokens:build-${{ env.timestamp }}