Nicolas Cantu 2d8395a834
Some checks are pending
dev / build-and-push (push) Waiting to run
ci(logs): print summary and upload logs as artifact
2025-09-10 13:06:26 +02:00

60 lines
1.9 KiB
YAML

name: dev
on:
push:
branches:
- '*'
jobs:
build-and-push:
runs-on: docker
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
- name: Set up SSH agent
uses: webfactory/ssh-agent@v0.9.1
with:
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
- name: Trust Gitea host and force SSH for git.4nkweb.com
run: |
ssh-keyscan -H git.4nkweb.com >> ~/.ssh/known_hosts
git config --global url.ssh://git@git.4nkweb.com/.insteadOf https://git.4nkweb.com/
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3
with:
buildkitd-flags: --allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host
- name: Login to Gitea Registry
uses: docker/login-action@v3
with:
registry: git.4nkweb.com
username: ${{ secrets.USER }}
password: ${{ secrets.TOKEN }}
- name: Init submodules (ensure up-to-date)
run: |
git submodule sync --recursive
git submodule update --init --recursive
- name: Build and push images
env:
REGISTRY: git.4nkweb.com
run: |
DOCKER_TAG=$(git rev-parse --abbrev-ref HEAD)
bash scripts/build_and_push.sh "$DOCKER_TAG"
- name: Show logs summary
if: always()
run: |
DOCKER_TAG=$(git rev-parse --abbrev-ref HEAD)
if [ -f "log/ci/${DOCKER_TAG}/summary.txt" ]; then
echo "=== Summary for ${DOCKER_TAG} ==="
cat "log/ci/${DOCKER_TAG}/summary.txt"
else
echo "No summary found for ${DOCKER_TAG}"
fi
- name: Upload logs artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: ci-logs-${{ github.ref_name || 'branch' }}
path: log/ci/**
if-no-files-found: ignore