See parent task for more details.
TL;DR:
- Creating a new project in toolsbeta harbor, with strict policies (both amount of images, retention and size quota)
- Creating a bot with access to it, for which the credentials will be public (or almost)
- Run tests but don't attempt to publish helmchart and image to harbor if patch owner is not a repo owner (this will still fail btw because of no access to secret. This step is purely to avoid the ugly red cicd failure icon)
- change toolforge_deploy_mr.py do the following:
- if the cicd pipeline is still running wait until it completes (currently default behaviour)
- if the cicd pipeline has completed successfully and image and chart exists in harbor, pull from harbor.
- if the cicd pipeline has completed successfully but image and chart are not in harbor, push them to the public harbor project created above.
- if cicd failed, do nothing.