- Create a Github repo.
- Fork repo to Organization (gpii, gpii-ops, etc.)
- Import Github repo to Gitlab.
- Make project public, disable shared runners, enable h5 runner (real components will want a dedicated registration -- see ansible-gpii-ci-worker).
- Create Dockerfile and .gitlab-ci.yml.
- Push to CI. Result should be a Docker image uploaded to Docker Hub under gpii/.
- Add an entry to gpii-version-updater/components.conf.
- Push to CI. Result should (eventually, after Ansible crons run on i46) be a new version.yml in gpii-infra referencing the new component's Docker image.
- Write a Kubernetes manifest in gpii-infra/modules/deploy/ referencing the new component in version.yml.
- Probably simplest to start with the manifest of a similar existing component.
- Go to gpii-infra/dev and
rake deploy
. Result should be the new component running in Kubernetes. - Push to CI. Result should be the new component running in
stg
.