This commit is contained in:
@@ -1,50 +1,30 @@
|
|||||||
name: Build and Push Containers
|
name: Build and Push Containers
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-and-push:
|
build-and-push:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
services:
|
steps:
|
||||||
docker:
|
- name: Checkout
|
||||||
image: docker:dind
|
uses: actions/checkout@v4
|
||||||
env:
|
|
||||||
DOCKER_TLS_CERTDIR: ""
|
|
||||||
options: --privileged
|
|
||||||
env:
|
|
||||||
DOCKER_HOST: tcp://docker:2375
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Wait for Docker
|
- name: Log in to Docker Hub
|
||||||
run: |
|
uses: docker/login-action@v3
|
||||||
until docker info; do
|
with:
|
||||||
echo "Waiting for Docker daemon..."
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
sleep 2
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
done
|
|
||||||
|
|
||||||
- name: Log in to Docker Hub
|
- name: Set up Docker Buildx
|
||||||
run: echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
- name: Build and push
|
||||||
run: docker buildx create --use --driver docker-container --name multiarch
|
uses: docker/build-push-action@v6
|
||||||
|
with:
|
||||||
- name: Build and push each container
|
context: pandoc-pdf
|
||||||
run: |
|
push: true
|
||||||
for dir in */; do
|
tags: clbx/pandoc-pdf:latest
|
||||||
dir="${dir%/}"
|
|
||||||
if [ -f "$dir/Dockerfile" ]; then
|
|
||||||
echo "Building $dir..."
|
|
||||||
docker buildx build \
|
|
||||||
--platform linux/amd64,linux/arm64 \
|
|
||||||
--tag ${{ secrets.DOCKERHUB_USERNAME }}/${dir}:latest \
|
|
||||||
--tag ${{ secrets.DOCKERHUB_USERNAME }}/${dir}:${{ github.sha }} \
|
|
||||||
--push \
|
|
||||||
"$dir"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|||||||
Reference in New Issue
Block a user