--- 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: | cd "${{ inputs.context }}" chown -R builder . sudo -u builder makepkg -sc --needed --noconfirm - name: Setup MinIO run: | mcli alias set m "${{ inputs.minio-endpoint }}" \ "${{ inputs.minio-accesskey }}" "${{ inputs.minio-endpoint }}" echo "Set endpoint to ${{ inputs.minio-endpoint }}" - name: Copy repo db from MinIO run: | mkdir repo mcli cp "m/${{ inputs.minio-bucket }}/${{ inputs.repo-name }}.db" "repo/${{ inputs.repo-name }}.db.tar.zst" mcli cp "m/${{ inputs.minio-bucket }}/${{ inputs.repo-name }}.files" "repo/${{ inputs.repo-name }}.files.tar.zst" echo "Copy ${{ inputs.repo-name }}.db and ${{ inputs.repo-name }}.files from MinIO" - name: Add pkgs to repo db run: | repo-add "repo/${{ inputs.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/${{ inputs.repo-name }}.db.tar.zst "m/${{ inputs.minio-bucket }}/${{ inputs.repo-name }}.db" mcli mv repo/${{ inputs.repo-name }}.files.tar.zst "m/${{ inputs.minio-bucket }}/${{ inputs.repo-name }}.files" mcli mv repo/*.pkg.tar.zst "m/${{ inputs.minio-bucket }}" echo "Update ${{ inputs.repo-name }}.db adn ${{ inputs.repo-name }}.files to MinIO"