3.2.1 #138
Workflow file for this run
This file contains hidden or 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 WordPress.org | |
| on: | |
| release: | |
| types: [ published ] | |
| jobs: | |
| tag: | |
| # Name | |
| name: Plugin Deployment | |
| # Virtual Environment to use | |
| # @see: https://github.com/actions/virtual-environments | |
| runs-on: ubuntu-latest | |
| # Steps to deploy | |
| steps: | |
| # Checkout (copy) this repository's Plugin to this VM. | |
| - name: Checkout Plugin | |
| uses: actions/checkout@v4 | |
| # Installs required packages that must be included in the Plugin | |
| # as specified in composer.json's "require" section. | |
| # "require-dev" is ignored by design, as these are only needed for | |
| # testing | |
| - name: Run Composer | |
| run: composer install --no-dev | |
| # Build the frontend CSS and JS assets | |
| - name: Run npm | |
| run: | | |
| npm install | |
| npm run build | |
| # Confirm that expected files exist | |
| # if e.g. `composer install` or `npm run build` fails | |
| - name: Check Kit WordPress Libraries and Assets Exists | |
| working-directory: ${{ env.PLUGIN_DIR }} | |
| run: | | |
| set -e | |
| files=( | |
| "resources/frontend/css/frontend.css" | |
| "resources/frontend/js/dist/frontend.min.asset.php" | |
| "resources/frontend/js/dist/frontend.min.js" | |
| "vendor/convertkit/convertkit-wordpress-libraries/src/class-convertkit-api-traits.php" | |
| "vendor/convertkit/convertkit-wordpress-libraries/src/class-convertkit-api-v4.php" | |
| "vendor/convertkit/convertkit-wordpress-libraries/src/class-convertkit-log.php" | |
| "vendor/convertkit/convertkit-wordpress-libraries/src/class-convertkit-resource-v4.php" | |
| "vendor/convertkit/convertkit-wordpress-libraries/src/class-convertkit-review-request.php" | |
| ) | |
| for file in "${files[@]}"; do | |
| echo "Checking: $file" | |
| test -f "$file" || { echo "❌ Missing required file: $file"; exit 1; } | |
| done | |
| echo "✅ All required files exist." | |
| # Deploy to wordpress.org, if expected files exist. | |
| - name: WordPress Plugin Deploy | |
| id: deploy | |
| uses: 10up/action-wordpress-plugin-deploy@stable | |
| with: | |
| generate-zip: true | |
| env: | |
| SVN_USERNAME: ${{ secrets.SVN_USERNAME }} | |
| SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }} | |
| SLUG: convertkit | |
| - name: Upload release asset | |
| uses: actions/upload-release-asset@v1 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| upload_url: ${{ github.event.release.upload_url }} | |
| asset_path: ${{ steps.deploy.outputs.zip-path }} | |
| asset_name: ${{ github.event.repository.name }}.zip | |
| asset_content_type: application/zip |