Add checksum workflow for PRs
This commit is contained in:
parent
a5f05da58f
commit
d91417d4ea
1 changed files with 80 additions and 0 deletions
80
.github/workflows/checksum.yaml
vendored
Normal file
80
.github/workflows/checksum.yaml
vendored
Normal file
|
|
@ -0,0 +1,80 @@
|
||||||
|
name: update packages
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
paths:
|
||||||
|
- "srcpkgs/**"
|
||||||
|
types:
|
||||||
|
- opened
|
||||||
|
- reopened # TODO: For debugging purposes
|
||||||
|
- synchronize
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
checksum:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: ghcr.io/void-linux/void-glibc-full:latest
|
||||||
|
options: --platform linux/amd64 --privileged
|
||||||
|
volumes:
|
||||||
|
- /dev:/dev
|
||||||
|
env:
|
||||||
|
ARCH: x86_64
|
||||||
|
BOOTSTRAP: x86_64
|
||||||
|
TEST: 1
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Prepare container
|
||||||
|
run: |
|
||||||
|
# switch to repo-ci mirror
|
||||||
|
mkdir -p /etc/xbps.d && cp /usr/share/xbps.d/*-repository-*.conf /etc/xbps.d/
|
||||||
|
sed -i 's|repo-default|repo-ci|g' /etc/xbps.d/*-repository-*.conf
|
||||||
|
# install dependencies
|
||||||
|
xbps-install -Suy xbps && xbps-install -Suy sudo xtools bash
|
||||||
|
# create non-root user
|
||||||
|
useradd -G xbuilder -M builder
|
||||||
|
|
||||||
|
- name: checkout local templates
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: remember changed package
|
||||||
|
run: |
|
||||||
|
echo "CHANGED_PKG=$(git diff --name-only origin/main origin/${GITHUB_HEAD_REF} "srcpkgs/*/template" | head -1 | cut -d/ -f2)" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: checkout upstream templates
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
repository: void-linux/void-packages
|
||||||
|
ref: master
|
||||||
|
fetch-depth: 1
|
||||||
|
path: upstream
|
||||||
|
|
||||||
|
- name: copy to upstream
|
||||||
|
run: cp -rv srcpkgs/* upstream/srcpkgs
|
||||||
|
|
||||||
|
- name: prep masterdir
|
||||||
|
run: |
|
||||||
|
cd upstream &&
|
||||||
|
chown -R builder:builder . &&
|
||||||
|
sudo -Eu builder common/travis/set_mirror.sh &&
|
||||||
|
sudo -Eu builder common/travis/prepare.sh &&
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
- name: generate checksum
|
||||||
|
env:
|
||||||
|
CHANGED_PKG: ${{ needs.changedpkgs.outputs.changed }}
|
||||||
|
run: |
|
||||||
|
cd upstream &&
|
||||||
|
sudo -Eu builder xgensum -f -i ${{ env.CHANGED_PKG }} &&
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
- name: receive relevant copy from upstream
|
||||||
|
run: |
|
||||||
|
cp -r upstream/srcpkgs/${{ env.CHANGED_PKG }} srcpkgs
|
||||||
|
|
||||||
|
- name: Commit new checksum
|
||||||
|
uses: stefanzweifel/git-auto-commit-action@v6
|
||||||
|
with:
|
||||||
|
file_pattern: "srcpkgs/${{ env.CHANGED_PKG }}/template"
|
||||||
|
commit_message: "Update ${{ env.CHANGED_PKG }} checksum"
|
||||||
Loading…
Add table
Add a link
Reference in a new issue