Creating a new repo is a simple PTL driven process.
- Clone LF's info-master repo: https://gerrit.linuxfoundation.org/infra/admin/repos/releng/info-master
- cd into the right location in the repo for ONAP's gerrit configuration: cd info-master/gerrit.onap.org/example-parent/
Create a new folder for the repo to be created: mkdir example-child/ && cd example-child
At this point, we are in the right folder that patches the repo path. The INFO.yaml will need to be created using any of these ways:
Manually, easy when the INFO.yaml matches an existing child repo of the same parent
Using lftools:
lftools --help Options: --directory TEXT custom gerrit directory, eg not /r/ --empty Create info file for uncreated project. --tsc_approval TEXT optionally provide a tsc approval link --help Show this message and exit.
For adding a repo to an existing project:
New Repo In An Existing Project
lftools infofile create-info-file gerrit.example.org example-parent/example-child > INFO.yaml
For creating the initial repo in a newly approved project:
New Repo for a New Project
lftools infofile create-info-file gerrit.example.org example-parent/example-child --empty --tsc_approval "https://link.to.meeting.minutes" > INFO.yaml
New Project Creation
A new project must be approved by the TSC. The process to follow to submit a new project is here: New Project Proposals
- For all, run tox to verify your INFO file passes
- Complete or fix any missing or incorrect fields
- Commit your change and push it to gerrit.linuxfoundation.org
After your change is pushed...
- Automation will tag the main LF Releng engineers representative for ONAP
- The change will be reviewed by the LF Releng engineer and any needed follow up with the owner will be posted in the comments.
- Once the change is merged, automation will process the INFO.yaml file, create the repo, update Nexus access and Jenkins settings files.