CLI tools for GitHub Actions.
- Automate writing GitHub workflow configs with a generator tool
- Automate setting GitHub secrets for repositories
- Integrate the tools into your pipeline for setting up new microservices
Microservice architecture may have dozens and dozens of lookalikes services that require similar CI/CD workflows.
With infrastructure as code approach taken by the GitHub Actions, why not using workflows generation?
Setting up a new microservice repository may also be automated. This is where
workflow-tools come in handy.
workflow_secret --owner=anna-money --repo=workflow-tools \ --token="YOUR-PERSONAL-ACCESS-TOKEN" \ update --key=MY_SECRET_KEY --value=MY_VALUE
Now let's use a fragment of Jinja2 template for a GitHub Actions workflow to generate resulting config:
WORKFLOW_RUNNER_VERSION=ubuntu-18.04 WORKFLOW_PYTHON27=2.7 WORKFLOW_PYTHON37=3.7 \ workflow_generator # Press Enter to start pasting Jinja2 workflow template into stdin jobs: test: runs-on: [[ workflow.runner_version ]] strategy: matrix: python: - [[ workflow.python27 ]] - [[ workflow.python37 ]] # Press Ctrl+D to render resulting workflow # For real workflow templates use reading/writing from/to a file, load variables from envfile jobs: test: runs-on: ubuntu-18.04 strategy: matrix: python: - 2.7 - 3.7
See documentation for more details. Use
--help flag for each tool in the package.
pip install -U workflow-tools