Bowerbird
Bowerbird is a WordPress plugin update install tool. It queries a Jira API to find and simplify the process of updating WordPress plugins, while still tracking them via Jira tickets. Meant for an environment where strict version control is needed. Named after a very industrious little creature who excels at building.
![Bird](https://github.com/farghul/bowerbird/raw/330bf9fd52ea/bowerbird.webp)
Prerequisites
Googles' Go language installed to enable building executables from source code.
Login information to download update packages. -- premium content only --
An env.json
file containing your API URL and Basic token to enable authorized querying:
{
"dev": "Internal Development search keyword",
"wpac": "WordPress Packagist search keyword",
"prem": "Premium Subscription search keyword",
"root": "Path to folder containing all Premium repositories",
"repo": "Path to main repository",
"cloud": "Jira Issue base URL, ex. https://<domain>/rest/api/latest/",
"testing": "JQL search string to query the Jira API",
"token": "Email:Jira API Token combination with Base 64 Encoding"
}
A bundle.json
file containing everything needed to aquire the Premium plugin update files (see jsons
folder for reference)
Function
Bowerbird searches the targeted Jira API for tickets marked as "New" (aka ToDo), and filtered with labels such as wordpress-plugin. It then gathers the qualifying candidates and runs a series of composer require
commands on the composer.json file and pushes the updates to a designated test branch. Additional steps such as downloading update files and version tagging may be performed for premium or in-house content prior to the push.
Build
From the root folder containing main.go
, use the command that matches your environment:
Windows & Mac:
go build -o [name] .
Linux:
GOOS=linux GOARCH=amd64 go build -o [name] .
Run
Ensure the folder containing your composer.json file is predefined as variable and run:
[program] [flag]
Options
-c, --core Install WordPress core updates
-d, --developer Install internal developer updates
-h, --help Help Information
-p, --premium Install paid subscription updates
-v, --version Display Program Version
-w, --wpackagist Install free wpackagist updates
Example
bowerbird -w
License
Code is distributed under The Unlicense and is part of the Public Domain.