Initial commit
This commit is contained in:
65
action.yaml
Normal file
65
action.yaml
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
---
|
||||||
|
name: "Arch Build"
|
||||||
|
description: "Build and push package to MinIO"
|
||||||
|
author: Yi-Ting Shih <ytshih@it.cs.nycu.edu.tw>
|
||||||
|
|
||||||
|
inputs:
|
||||||
|
context:
|
||||||
|
description: "The context of the build environment"
|
||||||
|
required: false
|
||||||
|
default: .
|
||||||
|
repo-name:
|
||||||
|
description: "The repo name to be pushed to"
|
||||||
|
required: false
|
||||||
|
default: custom
|
||||||
|
minio-endpoint:
|
||||||
|
description: "MinIO endpoint"
|
||||||
|
required: false
|
||||||
|
default: https://minio.konchin.com
|
||||||
|
minio-bucket:
|
||||||
|
description: "MinIO bucket"
|
||||||
|
required: false
|
||||||
|
default: archrepo
|
||||||
|
minio-accesskey:
|
||||||
|
description: "MinIO access key"
|
||||||
|
required: true
|
||||||
|
minio-secretkey:
|
||||||
|
description: "MinIO secret key"
|
||||||
|
required: true
|
||||||
|
|
||||||
|
runs:
|
||||||
|
using: composite
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v4.2.2
|
||||||
|
|
||||||
|
- name: Build package
|
||||||
|
run: |
|
||||||
|
chown -R builder .
|
||||||
|
sudo -u builder makepkg -sc --needed --noconfirm
|
||||||
|
|
||||||
|
- name: Setup MinIO
|
||||||
|
run: |
|
||||||
|
mcli alias set m "${{ env.MINIO_ENDPOINT }}" \
|
||||||
|
"${{ env.MINIO_ACCESSKEY }}" "${{ env.MINIO_SECRETKEY }}"
|
||||||
|
echo "Set endpoint to ${{ env.MINIO_ENDPOINT }}"
|
||||||
|
|
||||||
|
- name: Copy repo db from MinIO
|
||||||
|
run: |
|
||||||
|
mkdir repo
|
||||||
|
mcli cp "m/${{ env.MINIO_BUCKET }}/${{ env.REPO_NAME }}.db" "repo/${{ env.REPO_NAME }}.db.tar.zst"
|
||||||
|
mcli cp "m/${{ env.MINIO_BUCKET }}/${{ env.REPO_NAME }}.files" "repo/${{ env.REPO_NAME }}.files.tar.zst"
|
||||||
|
echo "Copy ${{ env.REPO_NAME }}.db and ${{ env.REPO_NAME }}.files from MinIO"
|
||||||
|
|
||||||
|
- name: Add pkgs to repo db
|
||||||
|
run: |
|
||||||
|
repo-add "repo/${{ env.REPO_NAME }}.db.tar.zst" *.pkg.tar.zst
|
||||||
|
mv *.pkg.tar.zst repo
|
||||||
|
echo "Add $(ls *.pkg.tar.zst) to repo"
|
||||||
|
|
||||||
|
- name: Update repo to MinIO
|
||||||
|
run: |
|
||||||
|
mcli mv repo/${{ env.REPO_NAME }}.db.tar.zst "m/${{ env.MINIO_BUCKET }}/${{ env.REPO_NAME }}.db"
|
||||||
|
mcli mv repo/${{ env.REPO_NAME }}.files.tar.zst "m/${{ env.MINIO_BUCKET }}/${{ env.REPO_NAME }}.files"
|
||||||
|
mcli mv repo/*.pkg.tar.zst "m/${{ env.MINIO_BUCKET }}"
|
||||||
|
echo "Update ${{ env.REPO_NAME }}.db adn ${{ env.REPO_NAME }}.files to MinIO"
|
||||||
Reference in New Issue
Block a user