[ Change version ] 0.7.0 #36
Workflow file for this run
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: Release on Github | |
on: | |
push: | |
tags: | |
- '[0-9]+.[0-9]+.[0-9]+' | |
env: | |
plugin_name: vk-dynamic-if-block | |
jobs: | |
php_unit: | |
name: php unit test | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-versions: ['8.1'] | |
wp-versions: ['6.2'] | |
services: | |
mysql: | |
image: mysql:5.7 | |
ports: | |
- 3306 | |
env: | |
MYSQL_ROOT_PASSWORD: wordpress | |
MYSQL_DATABASE: wordpress | |
MYSQL_USER: wordpress | |
MYSQL_PASSWORD: wordpress | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Read .node-version | |
run: echo "{NODEVERSION}={$(cat .node-version)}" >> $GITHUB_OUTPUT | |
id: nodenv | |
- name: Setup Node.js (.node-version) | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '${{ steps.nodenv.outputs.NODEVERSION }}' | |
- name: Cache multiple paths | |
uses: actions/cache@v3 | |
with: | |
path: vendor | |
key: ${{ runner.os }}-php${{ matrix.php-versions }}-${{ hashFiles('**/composer.lock') }} | |
- name: Setup PHP ${{ matrix.php-versions }} | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.php-versions }} | |
- name: install npm scripts | |
run: npm install | |
- name: Install Composer Packages | |
run: composer install | |
- name: Install WP-CLI | |
run: | | |
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar | |
chmod +x wp-cli.phar | |
mv wp-cli.phar /usr/local/bin/wp | |
- name: Build | |
run: npm run build | |
- name: Install several WordPress version by wp-env.override.json | |
run: WP_ENV_PHP_VERSION=${{ matrix.php-versions }} WP_ENV_CORE=WordPress/WordPress#${{ matrix.wp-versions }} npm run wp-env start --update | |
- name: Check WordPress Version | |
run: npm run wp-env run cli wp core version | |
- name: Start Environment | |
run: npx wp-env start && sudo chmod -R 777 ~/wp-env | |
- name: Run PHP Unit Test | |
run: npm run phpunit | |
tag: | |
name: Deploy to .org | |
runs-on: ubuntu-latest | |
needs: [php_unit] | |
steps: | |
- uses: actions/checkout@main | |
- name: Read .node-version | |
run: echo "##[set-output name=NODEVERSION;]$(cat .node-version)" | |
id: nodenv | |
- name: Setup Node.js (.node-version) | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '${{ steps.nodenv.outputs.NODEVERSION }}' | |
- name: Install NPM Scripts | |
run: npm install | |
- name: Install Composer Packages | |
run: composer install --no-dev | |
- name: Install WP-CLI | |
run: | | |
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar | |
chmod +x wp-cli.phar | |
mv wp-cli.phar /usr/local/bin/wp | |
- name: Run build | |
run: npm run build | |
- name: WordPress Plugin Deploy | |
uses: 10up/action-wordpress-plugin-deploy@master | |
env: | |
SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }} | |
SVN_USERNAME: ${{ secrets.SVN_USERNAME }} | |
SLUG: vk-dynamic-if-block | |
release: | |
runs-on: ubuntu-latest | |
needs: [php_unit] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Read .node-version | |
run: echo "##[set-output name=NODEVERSION;]$(cat .node-version)" | |
id: nodenv | |
- name: Setup Node.js (.node-version) | |
uses: actions/setup-node@v3 | |
with: | |
node-version: '${{ steps.nodenv.outputs.NODEVERSION }}' | |
- name: Setup PHP 7.4 | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: 7.4 | |
- name: Install NPM Scripts | |
run: npm install | |
- name: Install Composer Packages | |
run: composer install --no-dev | |
- name: Install WP-CLI | |
run: | | |
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar | |
chmod +x wp-cli.phar | |
mv wp-cli.phar /usr/local/bin/wp | |
- name: Run build | |
run: npm run build | |
- name: Run dist | |
run: npm run dist | |
- name: Make Distribution | |
run: | | |
cd dist/ && zip -r ${{ env.plugin_name }}.zip ${{ env.plugin_name }}/ && mv ${{ env.plugin_name }}.zip ${GITHUB_WORKSPACE} | |
- name: Create GitHub Release | |
id: create_release | |
uses: actions/create-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
tag_name: ${{ github.ref }} | |
release_name: Release ${{ github.ref }} | |
draft: false | |
prerelease: false | |
- name: Upload Release Asset | |
id: upload-release-asset | |
uses: actions/[email protected] | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ steps.create_release.outputs.upload_url }} | |
asset_path: ${{ env.plugin_name }}.zip | |
asset_name: ${{ env.plugin_name }}.zip | |
asset_content_type: application/zip |