Test supports remote

This commit is contained in:
estebanthi
2025-10-19 20:38:06 +02:00
parent d8bfaabffe
commit c0600e752d
2 changed files with 103 additions and 2 deletions

View File

@@ -0,0 +1,71 @@
name: Build and Push Docker Image from External Repo
on:
schedule:
- cron: "0 2 * * 0" # build periodically
workflow_dispatch:
inputs:
external_ref:
description: "Git ref (branch/tag/SHA) to build from in the external repo"
required: false
default: "master"
env:
EXTERNAL_REPO: "Wavyzz/cf-bypass-fast" # owner/name of the other repo (in the same Gitea)
DEFAULT_EXTERNAL_REF: "master" # default branch/tag/SHA to build
IMAGE_NAME: "cf-bypass-fast" # final image name (tag appended later)
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout this repo (for context & scripts, optional)
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Checkout external repository to ./external-src
uses: actions/checkout@v4
with:
repository: ${{ env.EXTERNAL_REPO }}
ref: ${{ github.event.inputs.external_ref || env.DEFAULT_EXTERNAL_REF }}
server-url: ${{ github.server_url }}
path: external-src
fetch-depth: 0
- name: Decide image tag
id: tag
shell: bash
run: |
if [[ -n "${{ github.event.inputs.image_tag }}" ]]; then
TAG="${{ github.event.inputs.image_tag }}"
else
TAG="latest"
fi
echo "tag=$TAG" >> "$GITHUB_OUTPUT"
- name: Set up Buildx
uses: docker/setup-buildx-action@v3
- name: Login to registry
uses: docker/login-action@v3
with:
registry: ${{ secrets.DOCKER_REGISTRY_HOST }}
username: ${{ secrets.DOCKER_REGISTRY_USER }}
password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }}
- name: Build and push Docker image
uses: docker/build-push-action@v5
with:
# Point to the external checkout dir
context: ./external-src
# If the Dockerfile isn't named 'Dockerfile' or isn't at repo root, set it explicitly:
# file: ./external-src/path/to/Dockerfile
push: true
tags: |
${{ secrets.DOCKER_REGISTRY_HOST }}/${{ env.IMAGE_NAME }}:${{ gitea.sha }}
${{ secrets.DOCKER_REGISTRY_HOST }}/${{ env.IMAGE_NAME }}:${{ steps.tag.outputs.tag }}