forked from libre-chip/fayalite-deps
40 lines
1.6 KiB
YAML
40 lines
1.6 KiB
YAML
# SPDX-License-Identifier: LGPL-3.0-or-later
|
|
# See Notices.txt for copyright information
|
|
on:
|
|
schedule:
|
|
# every Monday at 00:00
|
|
- cron: "0 0 * * 1"
|
|
push:
|
|
pull_request:
|
|
|
|
env:
|
|
CONTAINER_HOST: tcp://podman:1234
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: debian-12
|
|
services:
|
|
podman:
|
|
image: git.libre-chip.org/libre-chip/fayalite-deps-podman-rootless:latest
|
|
cmd: ["podman", "system", "service", "-t0", "tcp://0.0.0.0:1234"]
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- run: |
|
|
scripts/check-copyright.sh
|
|
- run: |
|
|
apt-get update -qq
|
|
apt-get install -qq podman skopeo
|
|
- run: |
|
|
BASE="$(echo "${{ forgejo.server_url }}" | sed 's@https://@@')"
|
|
CONTAINER="$BASE/${{ forgejo.repository }}"
|
|
podman build -t"$CONTAINER:latest" .
|
|
# don't use podman push since it fails when pushing large images to forgejo
|
|
skopeo copy --src-daemon-host=http://podman:1234 docker-daemon:"$CONTAINER:latest" oci:build:latest
|
|
- if: contains(fromJSON('["push", "schedule"]'), forgejo.event_name)
|
|
run: |
|
|
BASE="$(echo "${{ forgejo.server_url }}" | sed 's@https://@@')"
|
|
skopeo login --password-stdin -u "${{ forgejo.repository_owner }}" "$BASE" <<<"${{ secrets.CONTAINER_PUBLISH_TOKEN }}"
|
|
CONTAINER="$BASE/${{ forgejo.repository }}"
|
|
skopeo copy oci:build:latest "docker://$CONTAINER:${{ forgejo.ref_name }}"
|
|
skopeo copy oci:build:latest "docker://$CONTAINER:g${{ forgejo.sha }}"
|
|
skopeo copy oci:build:latest "docker://$CONTAINER:latest"
|