README
shippy-cli
The indefatigable TELUS digital delivery platform assistant.
- Clone and deploy reference architecture starter kits
- Onboard users into OpenShift & HashiCorp Vault
- Create squads & assign tech leads & members
- Create projects & assign them to squads
- Toggle between environments & projects
- Edit Vault secrets & policies
- Bonanza of memes & laffs
Get it
$ npm install -g @telusdigital/shippy-cli
Run it
Help
$ shippy help
Initialize development environment tooling
$ shippy init
Search reference architecture documentation
$ shippy howdoi <feature>
Login
$ shippy login
Set environment and project
$ shippy environment sandbox
$ shippy project myproject
$ shippy status
environment: sandbox
project: shippy
Clone and deploy GitHub repos from starter kits
$ shippy create repo my-repo-name
$ shippy create pipeline my-repo-name
$ shippy create webhook my-repo-name
Change all the things!
$ shippy <create/get/edit/delete> <resource>
Use YAML
$ shippy get user test.user > testuser.yaml
$ shippy edit user test.user -f=testuser.yaml
Create a New User (requires escalated privileges)
$ shippy create user <name>
Note: Expected convention is your long-form name separated by a period (ie. john.doe)
Create a New Squad (requires escalated privileges)
$ shippy create squad <squadname>
Edit Existing Squad (requires escalated privileges)
shippy edit squad <squadname>
Create a New Project (requires escalated privileges)
$ shippy environment <sandbox|main>
$ shippy create project <project>
Note: Expected convention is your project's domain name/URL (ie. telus.com/foo would be foo
, and bar-baz.telus.com would be bar-baz
)
Create a starter-kit derived application
$ shippy environment <sandbox|main>
$ shippy project <myproject>
$ shippy create repo <myproject>
Note: You will be prompted with a list of starter-kits
Deploy your application pipeline to Openshift
$ shippy environment <sandbox|main>
$ shippy project <myproject>
$ shippy create pipeline <name>
Create a webhook to fire from GitHub to Jenkins
$ shippy environment <sandbox|main>
$ shippy project <myproject>
$ shippy create webhook <repository_name>
Create a new secret in Vault
$ shippy environment <sandbox|main>
$ shippy project <myproject>
$ shippy create secret <name>
key: <name>
value: <REDACTED>
Note: You will be taken to your preferred editor to paste the value
in
Chill out
$ shippy party