github-to-wordpress-deploy-script

by mikejolley

Bash script to handle tagging on Github and deployment to WordPress SVN

200 Stars 54 Forks Last release: Not found GNU General Public License v3.0 20 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Github to WordPress.org Deployment Script

We all know releasing plugins can be quite a chore, and deep down we all loathe SVN so here is a neat little script for automating the process as much as possible.

What this script does

This script will pull down your remote GIT and SVN repositories, tag a release using the branch you specify, and commit everything to WordPress.org.

To use it you must:

  1. Host your code on GITHUB
  2. Obtain a personal access token (keep this private!)
  3. Already have a WordPress.org SVN repository setup for your plugin.
  4. Have both GIT and SVN setup on your machine and available from the command line.

Getting started

  1. Download the script release.sh from this repository and place it in a location of your choosing.
  2. Edit the script and set the GITHUBACCESSTOKEN
  3. Set the PLUGIN_SLUG to match the slug of your WordPress.org plugin
  4. Set the GITHUBREPOOWNER to the owner of the repository you wish to deploy. Usually your username.
  5. Set the GITHUBREPONAME to the name of your GITHUB repo.
  6. Save the script.

The script is ready to run.

Usage

  1. Open up terminal and cd to the directory containing the script.
  2. Run:
    sh release.sh
  3. Follow the prompts.

Demo

Here is a screencast of the process you'll typically see when running the script.

Demo

Final notes

  • This will checkout the remote version of your Github Repo.
  • Committing to WordPress.org can take a while so be patient.
  • I have tested this on Mac only.
  • Use at your own risk of course :)

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.