--- name: "Arch Build" description: "Build and push package to MinIO" author: Yi-Ting Shih 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"