Skip to content

Schedule Latest Build Docker #210

Schedule Latest Build Docker

Schedule Latest Build Docker #210

name: Schedule Latest Build Docker
on:
# schedule:
# - cron: '57 15 * * 4'
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: build check
run: bash build_test.sh
- name: set check flag
run: sed -i "s/#actions //g" Dockerfile
- name: build again test
run: docker build --no-cache -t ppdns .
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v5
with:
push: true
platforms: linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x
tags: sliamb/paopaodns:latest
build-args:
DEVLOG_SW=no
push-ecr:
needs: build
runs-on: ubuntu-latest
container: alpine:edge
steps:
- name: "Configure AWS Credentials"
uses: aws-actions/configure-aws-credentials@v4.0.2
with:
aws-region: us-east-1
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- name: install skopeo and aws-cli
run: apk update && apk upgrade && apk add skopeo aws-cli
- name: login ecr
run: aws ecr-public get-login-password --region us-east-1 | skopeo login --username AWS --password-stdin public.ecr.aws
- name: push ecr
run: skopeo copy --all docker://sliamb/paopaodns:latest docker://public.ecr.aws/sliamb/paopaodns:latest