58 lines
1.5 KiB
YAML
58 lines
1.5 KiB
YAML
on:
|
|
push:
|
|
paths:
|
|
- "docker/**"
|
|
- ".gitea/**"
|
|
- "pbsclient/**"
|
|
schedule:
|
|
- cron: "0 16 * * Sun"
|
|
|
|
jobs:
|
|
|
|
build-image:
|
|
runs-on: oci-image-builder
|
|
|
|
steps:
|
|
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Start BuildKit
|
|
run: |
|
|
mkdir -p /run/buildkit
|
|
buildkitd \
|
|
--root /tmp/buildkit \
|
|
--addr unix:///run/buildkit/buildkitd.sock \
|
|
>/tmp/buildkitd.log 2>&1 &
|
|
sleep 3
|
|
|
|
- name: Check BuildKit daemon
|
|
run: |
|
|
ls -l /run/buildkit
|
|
cat /tmp/buildkitd.log || tru
|
|
|
|
- name: Authenticate to Gitea registry
|
|
run: |
|
|
mkdir -p ~/.docker
|
|
AUTH=$(printf "%s" "${{ secrets.GITLIMBO_DOCKER_REGISTRY_USERNAME }}:${{ secrets.GITLIMBO_DOCKER_REGISTRY_PASSWORD }}" | base64 -w 0)
|
|
printf '{"auths":{"git.limbosolutions.com":{"auth":"%s"}}}' "$AUTH" > ~/.docker/config.json
|
|
|
|
- name: Debug paths
|
|
run: |
|
|
echo "PWD: $(pwd)"
|
|
ls -al
|
|
ls -al ./pbsclient || echo "pbsclient missing"
|
|
ls -al ./pbsclient/docker || echo "docker dir missing"
|
|
|
|
- name: Build and push image
|
|
working-directory: ${{ env.GITEA_WORKSPACE }}
|
|
run: |
|
|
buildctl \
|
|
--addr unix:///run/buildkit/buildkitd.sock \
|
|
build \
|
|
--frontend=dockerfile.v0 \
|
|
--local context=./pbsclient \
|
|
--local dockerfile=./pbsclient/docker \
|
|
--opt filename=Dockerfile \
|
|
--output type=image,name=git.limbosolutions.com/kb/pbsclient:latest,push=true
|