Deploy to Pronamic WordPress directory #13
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy to Pronamic WordPress directory | |
on: | |
workflow_dispatch: | |
inputs: | |
latest: | |
default: true | |
type: boolean | |
description: 'Deploy as "Latest"' | |
slug: | |
default: 'pronamic-pay-with-mollie-for-gravity-forms' | |
type: string | |
version: | |
description: 'Version to deploy to Pronamic WordPress directory' | |
required: true | |
type: string | |
jobs: | |
deploy: | |
runs-on: ubuntu-latest | |
environment: | |
name: Pronamic WordPress directory | |
url: https://wp.pronamic.directory/plugins/pronamic-pay-with-mollie-for-gravity-forms/ | |
permissions: | |
id-token: 'write' | |
env: | |
FILENAME: ${{ inputs.slug }}.${{ inputs.version }}.zip | |
steps: | |
- name: 'Download' | |
run: | | |
gh release download v${{ inputs.version }} --repo ${{ github.repository }} --pattern ${{ env.FILENAME }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- id: 'auth' | |
uses: 'google-github-actions/auth@v2' | |
with: | |
project_id: 'pronamic-downloads' | |
workload_identity_provider: 'projects/623467151959/locations/global/workloadIdentityPools/github/providers/my-repo' | |
- name: 'Set up Cloud SDK' | |
uses: 'google-github-actions/setup-gcloud@v2' | |
- name: 'Use gcloud CLI' | |
run: 'gcloud info' | |
- name: 'Upload' | |
run: 'gcloud storage cp ${{ env.FILENAME }} gs://wp.pronamic.download/plugins/${{ inputs.slug }}/${{ env.FILENAME }}' | |
- name: 'Copy latest' | |
if: inputs.latest | |
run: 'gcloud storage cp gs://wp.pronamic.download/plugins/${{ inputs.slug }}/${{ env.FILENAME }} gs://wp.pronamic.download/plugins/${{ inputs.slug }}/${{ inputs.slug }}.zip' | |
- name: 'Set latest' | |
if: inputs.latest | |
run: 'curl --netrc --data "version=${{ inputs.version }}" --request PATCH https://wp.pronamic.directory/wp-json/pronamic-wp-extensions/v1/plugins/${{ inputs.slug }}' |