Nightly DNF CI host container build #884
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Nightly DNF CI host container build | |
on: | |
schedule: | |
- cron: '0 2 * * *' # at 2am UTC | |
# allow to run the workflow manually from GitHub web interface | |
workflow_dispatch: | |
jobs: | |
container-build: | |
name: Container build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Build the container | |
run: | | |
# hack: Github replaces secrets with *** in the whole output. | |
# If there's a comment (#) at the end of the secret | |
# (e.g. "rpm-sofware-management #"), this will clean it up and | |
# since it is no longer the whole secret being printed, Github | |
# won't hide it anymore. | |
GHCR_USER=${{secrets.GHCR_USER}} | |
if [ -z "$GHCR_USER" ]; then exit 0; fi | |
DATE=`date "+%F"` | |
IMAGE="ghcr.io/${GHCR_USER}/dnf-ci-host" | |
echo ${{secrets.GITHUB_TOKEN}} | docker login ghcr.io -u ${GHCR_USER} --password-stdin | |
docker build -t ${IMAGE}:${DATE} -t ${IMAGE}:latest -<<EOF | |
FROM fedora:latest | |
RUN dnf -y update | |
RUN dnf -y install dnf-plugins-core | |
RUN dnf -y copr enable rpmsoftwaremanagement/rpm-gitoverlay | |
RUN dnf -y install rpm-gitoverlay fuse-overlayfs parallel podman wget clang-tools-extra | |
# needed for pre-commit hooks | |
RUN dnf -y install git python3-pip rpmlint | |
# needed for moving of PIDs in integration-tests | |
RUN dnf -y install procps-ng | |
RUN dnf clean all # remove dnf cache to make the image smaller | |
EOF | |
docker push ${IMAGE}:${DATE} | |
docker push ${IMAGE}:latest |