name: Test publish Managarr scoop bucket permissions: pull-requests: write contents: write on: workflow_dispatch: jobs: publish-scoop-bucket: name: Publish Scoop Bucket runs-on: windows-latest steps: - name: Checkout repository uses: actions/checkout@v4 with: fetch-depth: 1 - name: Set release assets and version shell: pwsh run: | # mock artifact data mkdir artifacts 'c27e191f4290501287ca16268d9c2029e1f5cd01f7c2ac2be3cdfee80395f719' | Set-Content -Path artifacts/managarr-windows.sha256 '0.4.1' | Set-Content -Path artifacts/release-version # Read the first column from the SHA256 file $windows_sha = Get-Content ./artifacts/managarr-windows.sha256 | ForEach-Object { $_.Split(' ')[0] } Add-Content -Path $env:GITHUB_ENV -Value "WINDOWS_SHA=$windows_sha" # Read the release version from the release-version file $release_version = Get-Content ./artifacts/release-version Add-Content -Path $env:GITHUB_ENV -Value "RELEASE_VERSION=$release_version" - name: Install Scoop uses: MinoruSekine/setup-scoop@main - name: Update Scoop Bucket shell: pwsh run: | # Clean up previous version Remove-Item -Path './deployment/scoop/managarr.json' -ErrorAction SilentlyContinue # Run packaging script python "./deployment/packager.py" ${{ env.RELEASE_VERSION }} "./deployment/scoop/managarr.json.template" "./deployment/scoop/managarr.json" ${{ env.WINDOWS_SHA }} - name: Persist the new managarr.json to the repo env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} shell: pwsh run: | # Persist the scoop bucket changes into repo git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" git add ./deployment/scoop/managarr.json git commit -m "chore: Update Scoop bucket for version ${{ env.RELEASE_VERSION }} [skip ci]" git push origin main - name: Publish the updated bucket shell: pwsh run: | cd ./deployment/scoop/ scoop bucket add managarr-bucket https://github.com/Dark-Alex-17/managarr/tree/main/deployment/scoop scoop install managarr managarr --help