Replaces installing a patched anaconda-webui RPM from the forge's package registry: installer/anaconda-webui/vendor/ is upstream release 86 verbatim (see its PROVENANCE.md), and installer/Containerfile builds it with upstream's own `make install` in a native-platform stage, then copies the result over stock Fedora anaconda-webui. The produced file set matches Fedora's anaconda-webui-86-1.fc46 exactly. Edits to the installer UI now happen in vendor/ and ship on the next `task build-installer-iso`, with no RPM, registry or CI in between. Also follows bootc-image-builder's rename of --bootc-installer-payload-ref to --installer-payload-ref. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
86 lines
2.5 KiB
YAML
86 lines
2.5 KiB
YAML
name: release
|
|
on:
|
|
push:
|
|
tags:
|
|
# this is a glob, not a regexp
|
|
- '[0-9]*'
|
|
|
|
env:
|
|
GITHUB_BASE: rhinstaller/anaconda-webui
|
|
|
|
jobs:
|
|
source:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: ghcr.io/cockpit-project/tasks:latest
|
|
options: --user root
|
|
permissions:
|
|
# create GitHub release
|
|
contents: write
|
|
env:
|
|
GH_TOKEN: ${{ github.token }}
|
|
steps:
|
|
- name: Clone repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Install gh
|
|
run: dnf install -y gh
|
|
|
|
# https://github.blog/2022-04-12-git-security-vulnerability-announced/
|
|
- name: Pacify git's permission check
|
|
run: git config --global --add safe.directory /__w/anaconda-webui/anaconda-webui
|
|
|
|
- name: Workaround for https://github.com/actions/checkout/pull/697
|
|
run: |
|
|
TAG_VERSION="$(git describe --tags)"
|
|
git fetch --force origin ${TAG_VERSION}:refs/tags/${TAG_VERSION}
|
|
|
|
- name: Build release
|
|
run: make dist
|
|
|
|
- name: Create a release
|
|
run: |
|
|
set -x
|
|
|
|
TAG_VERSION="$(git describe --tags)"
|
|
git tag -l --format='%(contents:body)' ${TAG_VERSION} > release-note.txt
|
|
|
|
REPO_NAME="${GITHUB_REPOSITORY#*/}"
|
|
gh release create --title ${TAG_VERSION} --notes-file release-note.txt \
|
|
${TAG_VERSION} \
|
|
${REPO_NAME}-${TAG_VERSION}.tar.xz
|
|
|
|
node-cache:
|
|
# doesn't depend on it, but let's make sure the build passes before we do this
|
|
needs: [source]
|
|
runs-on: ubuntu-latest
|
|
environment: node-cache
|
|
# done via deploy key, token needs no write permissions at all
|
|
permissions: {}
|
|
steps:
|
|
- name: Clone repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up git
|
|
run: |
|
|
git config user.name "GitHub Workflow"
|
|
git config user.email "cockpituous@cockpit-project.org"
|
|
|
|
- name: Tag node-cache
|
|
run: |
|
|
set -eux
|
|
# this is a shared repo, prefix with project name
|
|
TAG="${GITHUB_REPOSITORY#*/}-$(basename $GITHUB_REF)"
|
|
make tools/node-modules
|
|
tools/node-modules checkout
|
|
cd node_modules
|
|
git tag "$TAG"
|
|
git remote add cache "ssh://git@github.com/${GITHUB_REPOSITORY%/*}/node-cache"
|
|
eval $(ssh-agent)
|
|
ssh-add - <<< '${{ secrets.DEPLOY_KEY }}'
|
|
# make this idempotent: delete an existing tag
|
|
git push cache :"$TAG" || true
|
|
git push cache tag "$TAG"
|
|
ssh-add -D
|