Github Action To Publish WordPress.org Plugin's Update
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
GH Actions Workflow Sync Bot cd9a2c3198 💬 #81 - Workflow File Updated / Triggered By varunsridharan/.workflows@cd6eb3b7e98c68e317bb4c3bbfd7a81c8a6a1c81 8 months ago
.github/workflows 💬 #81 - Workflow File Updated / Triggered By varunsridharan/.workflows@cd6eb3b7e98c68e317bb4c3bbfd7a81c8a6a1c81 8 months ago
Dockerfile Added Zip File. 1 year ago
LICENSE First Commit 1 year ago
README.md Updated Readme for V1.3 1 year ago
action.yml Added Option To Provide Custom Path To Save DIST File. 1 year ago
entrypoint.sh Updated DIST_LOCATION 1 year ago

README.md

WordPress.org Plugin Deploy - Github Action

This Action commits the contents of your Git tag to the WordPress.org plugin repository using the same tag name. It excludes Git-specific items or files and directories as optionally defined in your .wporgignore file, and moves anything from a .wordpress-org subdirectory to the top-level assets directory in Subversion (plugin banners, icons, and screenshots).

Configuration

Required secrets

  • WORDPRESS_USERNAME
  • WORDPRESS_PASSWORD
  • GITHUB_TOKEN - you do not need to generate one but you do have to explicitly make it available to the Action

Secrets can be set while editing your workflow or in the repository settings. They cannot be viewed once stored. GitHub secrets documentation

Optional environment variables

  • SLUG - defaults to the respository name, customizable in case your WordPress repository has a different slug. This should be a very rare case as WordPress assumes that the directory and initial plugin file have the same slug.
  • VERSION - defaults to the tag name; do not recommend setting this except for testing purposes
  • ASSETS_DIR - defaults to .wordpress-org, customizable for other locations of WordPress.org plugin repository-specific assets that belong in the top-level assets directory (the one on the same level as trunk)
  • IGNORE_FILE - defaults to .wporgignore, customizable for other locations of list of files to be ignore like .gitignore
  • ASSETS_IGNORE_FILE - defaults to .wporgassetsignore, customizable for other locations of list of files to be ignore like .gitignore
  • DIST_LOCATION - defaults to ./dist/, option to save final zip files.

Excluding files from deployment

If there are files or directories to be excluded from deployment, such as tests or editor config files, they can be specified in your .wporgignore file. If you use this method, please be sure to include the following items:

# Directories
.wordpress-org
.github

# Files
/.gitattributes
/.gitignore

⚠️ Note: You Should Provide Github Token. If Not No Updated File Will Be Committed & Pushed

Example Workflow File

name: Deploy to WordPress.org
on:
  push:
    branches:
    - refs/tags/*
jobs:
  tag:
    name: New tag
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@master
    - name: WordPress Plugin Deploy
      uses: varunsridharan/action-wp-org-deploy@master
      with:
        WORDPRESS_PASSWORD: ${{ secrets.WORDPRESS_PASSWORD }}
        WORDPRESS_USERNAME: ${{ secrets.WORDPRESS_USERNAME }}
        SLUG: my-super-cool-plugin
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Credits

This Github Action Bootstrapped From


Change Log

1.3 - 29/04/2020

  • Added Custom Arg To Provide Path To Save Dist File.

1.2 - 29/04/2020

  • Improved Logging

1.1 - 06/09/2019

  • Added Option To Exclude Files When Updating Assets Folder.

1.0 - 24/08/2019

  • First Release

Contribute

If you would like to help, please take a look at the list of issues or the To Do checklist.

License

Our GitHub Actions are available for use and remix under the MIT license.

2017 - 2018 Varun Sridharan, varunsridharan.in

If you find it useful, let me know 😉

You can contact me on Twitter or through my email.

Backed By

DigitalOcean JetBrains Tidio Chat