This document describes the governance structure of the WP-CLI project.
WP-CLI has one maintainer: schlessera. On a day to day basis, final decision-making authority resides with him.
The project roadmap is an organic, evolving vision developed between the project's maintainers, committers, and contributors. Generally, we try to make decisions in alignment with the project's philosophy and committers credo.
On occasion, we grant write access to contributors who have demonstrated, over a period of time, that they are capable and invested in moving the project forward. These committers are expected to:
- Hold product and code quality in the highest regard.
- Exhibit stellar judgement and communication.
- Participate in the project on a consistent basis.
Becoming a committer can seem glamorous, but it also comes with expectations of responsibility, commitment, and humility.
andreascreten is the original author of WP-CLI. scribu and danielbachhuber have been long time maintainers. schlessera is the current maintainer.
The maintainer is the person most directly responsible for the reliability and longevity of the project. They are expected to:
- Hold WP-CLI's overall quality in the utmost regard.
- Refine the project's vision and direction, and make sure it's understood by all.
- Enable everyone from new users to experienced committers.
- Take care of the boring day-to-day work (keeping CI passing, triaging new issues, etc.).
As of December 2017, WP-CLI is a formal WordPress project.
Practically speaking, this means we get to take advantage of the WordPress project's people and software infrastructure:
- Much of the WP-CLI documentation is hosted on the wordpress.org domain.
- We get to use the
#cli
channel in the WordPress Slack organization. - If we need help with something, we can ask.
- Two core committers (dd32 and pento) have ownership permissions to the WP-CLI GitHub organization, in the unlikely event everyone else gets hit by a bus.
Other than this, WP-CLI operates independently.
The WP-CLI GitHub organization contains all project code repositories. Some commands are bundled with WP-CLI, while others are independently installable. Commands are bundled with WP-CLI when they're stable, closely aligned with the project philosophy, and useful to a majority of users.
wp-cli/wp-cli is the main project repository, which pulls in command packages and other dependencies through Composer. Composer defines which version of which dependencies is included in the build. Changes to command packages are included in WP-CLI proper when a stable release is tagged for the package.
Nightly Phar builds are created by a Travis job that calls deploy.sh and pushes the build artifact to the builds repository. Releases are prepared manually in accordance to the release checklist.
The wp-cli.org
domain is currently owned by andreascreten. DNS is managed through a Cloudflare account that danielbachhuber holds credentials to.
Much of the WP-CLI documentation (command pages, etc.) is editable through wp-cli/handbook, and then synced to WordPress.org. The WP-CLI.org homepage is hosted on GitHub Pages.
From time to time, you may see a pull request from the wp-make-coffee
bot. These originate from a donated WebFaction server running some cron jobs calling bash scripts:
5 4 * * 1,3,5 source ~/.bash_profile; WP_CLI_DIR=~/wp-cli bash ~/wp-cli/utils/auto-composer-update.sh > ~/auto-composer-update.log 2>&1
5 6 * * 1,3,5 source ~/.bash_profile; WP_CLI_DIR=~/wp-cli-bundle bash ~/wp-cli-bundle/utils/auto-composer-update.sh > ~/auto-composer-update-bundle.log 2>&1
The wpcli Twitter account is managed by schlessera.
If you subscribe for email updates, your email address is registered with WordPress.com through Automattic's Jetpack plugin.