I like the post. #1-#6 patters makes total sense.
I'm not sure on how #7 should be implemented. How can I create the "button" in GitLab or GitHub?
One of the authors here. In GitLab CI, you can create that manual trigger button by including the `when: manual` parameter in your .gitlab-ci.yml. You can also restrict who can click that button for protected pipelines, such as those that deploy to production. (https://docs.gitlab.com/ee/ci/yaml/#whenmanual)