Value Statement
Currently, our organization utilizes 3 GitHub "bot" users to interact with the GitHub API and push/pull content as part of CI jobs and operations clusters. It is difficult to share access to bot users' accounts, which are full GitHub user accounts, and these bots no longer require the ability to fork or hold repositories, so its time to move away from bot users and adopt GitHub applications. GitHub Apps provide all of the API access (including the ability to commit to repositories, clone repositories, access user and team lists, etc) while providing shared ownership and more transparent access control. GitHub recommends this method for automation integrations.
Definition of Done for Engineering Story Owner (Checklist)
- Each bot re-created into one or more GitHub Applications with access to fulfill its duties:
- acm-canary-bot
- acm-cicd-infra-bot
- acm-cicd-prow-bot
- GitHub Apps in use for all bot user use-cases
- GitHub users have all Personal Access Tokens (PATs) removed
- GitHub users are deleted
Development Complete
- The code is complete.
- Functionality is working.
- Any required downstream Docker file changes are made.
Tests Automated
- [ ] Unit/function tests have been automated and incorporated into the
build. - [ ] 100% automated unit/function test coverage for new or changed APIs.
Secure Design
- [ ] Security has been assessed and incorporated into your threat model.
Multidisciplinary Teams Readiness
- [ ] Create an informative documentation issue using the [Customer
Portal_doc_issue template](
https://github.com/stolostron/backlog/issues/new?assignees=&labels=squad%3Adoc&template=doc_issue.md&title=),
and ensure doc acceptance criteria is met. Link the development issue to
the doc issue. - [ ] Provide input to the QE team, and ensure QE acceptance criteria
(established between story owner and QE focal) are met.
Support Readiness
- [ ] The must-gather script has been updated.