I think it would be great for you to write a V2 of
https://thinktandem.io/blog/2017/10/23/killer-d8-workflow-using-lando-and-platform-sh/
To that end i think we want to add in a few extra things, some of which you can steal directly from proof of concept work ive done over here
https://github.com/lando/website
Good to read
https://docs.devwithlando.io/config/tooling.html#options-driven-tooling
Manual Steps
We need to document these better, what is below is just a sketch
- User forks project
- User clones project
- User runs
lando init --recipe=d8 --webroot=...
to override the base.yml file with something named better.
- User runs
lando start
- User manually gets required GITHUBTOKEN and PLATFORMTOKEN, note that if you are an agency you want to get the token for the agency owner
- User runs
lando setup
- User manually turns on github branch protection for
master
and sets it up as needed, for us this SHOULD include enforced code review and enforced passing of status checks
- User should set up bots like stale/delete merged pr and codeclimate
- User should modify the new projects readme with any additional considerations for this project
@labboy0276 am i missing any other good steps there?
Bonus Task
Right now we have no way to handle an error in the middle of the setup process, which means that we could end up with a Platform.sh project spun up without the other magic and no real way to address that beyond manually deleting it through the p.sh UI. I think what we want to do is catch any error that happens during the setup process (check out how to use "traps" in bash) and
- Inform the user that an error has occured
- Inform the user that we are rolling things back eg deleting the half baked platform instance
- Actually deleting the half backed platform instance