Report Issue

New Infra Bootstrap

ci-management repo

Once Jenkins is available we can initialize a new ci-management repo.

Steps

  1. Create ci-management repo in Gerrit

  2. Create a README.md file explaining the purpose of the repo

  3. Setup tox/coala linting for jjb/ and packer directories

  4. Install global-jjb to GIT_ROOT/jjb/global-jjb

  5. Create the CI Jobs in jjb/ci-management/ci-jobs.yaml

    - project:
        name: ci-jobs
    
        jobs:
          - '{project-name}-ci-jobs'
    
        project: ci-management
        project-name: ci-management
        build-node: centos7-builder-2c-1g
    
  6. Manually push the initial ci-management jobs to Jenkins

  7. Git commit the current files and push to Gerrit

  8. Confirm verify jobs work

  9. Merge the patch and confirm merge job works

  10. Install common-packer to GIT_ROOT/packer/common-packer

    git submodule add https://github.com/lfit/releng-common-packer.git packer/common-packer
    
  11. Git commit and merge patch in Gerrit

  12. Create Initial CI Packer job in jjb/ci-management/ci-packer.yaml

    - project:
        name: packer-builder-jobs
        jobs:
          - gerrit-packer-merge
    
        project: ci-management
        project-name: ci-management
        build-node: centos7-builder-2c-1g
    
        platforms: centos
        templates: builder
    
  13. Git commit and merge patch in Gerrit

  14. Symlink common-packer/templates/builder.json.example to templates/builder.json

  15. Git commit and push patch to Gerrit

  16. Confirm packer verify job passes

  17. Merge patch and confirm merge job works

  18. Update and Create appropriate builders in Jenkins using the newly created image