Skip to content

Initial commit

Initial commit #79

Workflow file for this run

name: Publish moneroo woocommerce plugin
on:
push:
tags:
- 'v*' # Trigger on tags starting with 'v'
env:
SVN_REPOSITORY: "https://plugins.svn.wordpress.org/moneroo-woocommerce"
SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }}
SVN_USERNAME: ${{ secrets.SVN_USERNAME }}
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Cache Composer packages
id: composer-cache
uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: Install dependencies
run: composer install --no-dev --prefer-dist --optimize-autoloader --no-interaction
publish:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Dependencies
run: composer install --prefer-dist --no-interaction --no-dev --optimize-autoloader --no-interaction
- name: Generate ZIP
id: building-zip
run: |
PLUGIN="moneroo"
PROJECT_ROOT=$(pwd)
PLUGIN_BUILDS_PATH="$PROJECT_ROOT/builds"
VERSION=$(awk 'NR==7' readme.txt | cut -d ' ' -f 3)
ZIP_FILE="$PLUGIN_BUILDS_PATH/$PLUGIN-$VERSION.zip"
mkdir -p $PLUGIN_BUILDS_PATH
zip -r $ZIP_FILE . -x "build-cfg/*" "builds/*" ".*" "wp-assets/*" "build/*" "phpunit.xml.dist" "unused-scanner.php" "composer.json" "composer.lock" "README.md" ".php-cs-fixer.dist.php" "phpstan.neon" "phpunit.xml"
if [ ! -f "$ZIP_FILE" ]; then
echo "Built zip file $ZIP_FILE does not exist" 1>&2
exit 1
fi
cp $ZIP_FILE $PLUGIN_BUILDS_PATH/moneroo.zip
if [ ! -f "$PLUGIN_BUILDS_PATH/moneroo.zip" ]; then
echo "Built zip file $PLUGIN_BUILDS_PATH/moneroo.zip does not exist" 1>&2
exit 1
fi
echo "Plugin file $PLUGIN_BUILDS_PATH/moneroo.zip successfully built"
echo "ZIP_FILE=$PLUGIN_BUILDS_PATH/moneroo.zip" >> $GITHUB_OUTPUT
echo "Successfully built $ZIP_FILE"
- name: Publish to CDN via S3
uses: axazara/easy-s3-upload-github-action@main
env:
FILE: ${{ steps.building-zip.outputs.ZIP_FILE }}
S3_ENDPOINT: ${{ secrets.CLOUDFLARE_ENDPOINT }}
S3_BUCKET: 'plugins'
S3_ACCESS_KEY_ID: ${{ secrets.CLOUDFLARE_ACCESS_KEY_ID }}
S3_SECRET_ACCESS_KEY: ${{ secrets.CLOUDFLARE_SECRET_ACCESS_KEY }}
- name: Prepare plugin folder
id: prepare-deploy
run: |
PLUGIN="moneroo"
PROJECT_ROOT=$(pwd)
PLUGIN_BUILDS_PATH="$PROJECT_ROOT/builds"
VERSION=$(awk 'NR==7' readme.txt | cut -d ' ' -f 3)
ZIP_FILE="$PLUGIN_BUILDS_PATH/$PLUGIN-$VERSION.zip"
TMP_DIR="$PLUGIN_BUILDS_PATH/tmp"
PLUGIN_DIR="$TMP_DIR/$PLUGIN"
mkdir -p $PLUGIN_DIR
unzip -q $ZIP_FILE -d $TMP_DIR
echo "PLUGIN_TMP_DIR=$TMP_DIR" >> $GITHUB_OUTPUT
echo "PLUGIN_VERSION=$VERSION" >> $GITHUB_OUTPUT
- name: Publish to WordPress SVN
uses: 10up/action-wordpress-plugin-deploy@stable
with:
generate-zip: false
env:
SVN_USERNAME: ${{ secrets.SVN_USERNAME }}
SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }}
SLUG: moneroo
VERSION: ${{ steps.prepare-deploy.outputs.PLUGIN_VERSION }}
ASSETS_DIR: wp-assets
BUILD_DIR: ${{ steps.prepare-deploy.outputs.PLUGIN_TMP_DIR }}