rtCamp / github-actions-library

Collection of Github Actions useful for WordPress Deployments
99 stars 9 forks source link
cd ci ci-cd deployment github-actions

GitHub Actions Library by rtCamp

Project Status: Active ā€“ The project has reached a stable, usable state and is being actively developed.

A collection of GitHub Actions created by rtCamp.

This repo itself acts as a placeholder only. We have created a separate repo for each GitHub action to make our actions available via GitHub actions marketplace.

List of GitHub Actions

Please go to individual GitHub action to read more about them, including usage instructions. All our GitHub actions can be used individually or combined on projects according the requirements.

A minimal WordPress CI/CD including three actions has been setup on a skeleton repo.

GitHub Action GitHub Action's Purpose
šŸ•µļøā€ā™‚ļø PHPCS Code Review Run PHPCS on pull requests.
šŸš€ Deploy WordPress Deploy a WordPress site using using PHP's Deployer.org
ā— Slack Notify Send a notification to a Slack channel

Extras

WordPress Skeleton

We follow "One Site, One Repo" approach for all our WordPress projects. You can check our wordpress skeleton repo here. Some of our actions, such as WordPress Deployer, depends on git repo structure.

Hashicorp Vault (optional)

If you don't use Vault, you can ignore this part. This is completely optional.

We use Hashicorp Vault internally for secrets management. So all our actions support fetching secrets from Hashicorp Vault, in addition to GitHub secrets.

For some actions such as Slack Notify, Vault may seems redundant. But for other such as Deploy WordPress action, Vault is time saver.

GitHub doesn't support organization wide secrets. So with GitHub secrets, we need to duplicate many secrets, such as dev/test server SSH keys, across multiple repos.

Using Vault, we reduce this effort to setup Vault's token in GitHub secrets. Further, Vault policies help us enforce fine grain control.

WP Core and Plugins Auto-Update Reporting

PM: sohel.mistry@rtcamp.com
Devs: abhishek.kumar@rtcamp.com

Does this interest you?

Join us at rtCamp, we specialize in providing high performance enterprise WordPress solutions