Skip to content
This repository was archived by the owner on Oct 29, 2025. It is now read-only.

Build

Build #188

Workflow file for this run

# Copyright (C) 2023 Sebastian Pipping <sebastian@pipping.org>
# SPDX-License-Identifier: MIT
name: Build
# Drop permissions to minimum for security
permissions:
contents: read
on:
pull_request:
push:
schedule:
- cron: '0 2 * * 5' # Every Friday at 2am
workflow_dispatch:
jobs:
build:
name: Build
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Install dependencies
run: |-
sudo apt-get update
sudo apt-get install --yes --no-install-recommends -V \
docker-compose \
wait-for-it \
yq
- name: Build Docker image
run: |-
docker-compose build
- name: Smoke-test Docker image
run: |-
set -x
docker network create --internal ssl-reverse-proxy
docker-compose up -d
# Get ports from docker-compose.yml. The value looks like
# 127.0.0.1:50180:80 but we need only the first two components
ip_and_port=$(yq -r \
'.services[].ports[0] | split(":") | .[:2] | join(":")' \
docker-compose.yml)
wait-for-it "${ip_and_port}" -- \
wget -O- "http://${ip_and_port}/" \
| grep -qF gentoo.de
docker-compose down
docker network rm ssl-reverse-proxy