From: Thanh Ha Date: Fri, 12 Jan 2018 20:33:30 +0000 (-0500) Subject: Add project-bootstrap checklist X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F86%2F8386%2F4;p=releng%2Fdocs.git Add project-bootstrap checklist Issue: RELENG-513 Change-Id: I79d6b44d6538af6d6ef459c318a19240c4fac485 Signed-off-by: Thanh Ha --- diff --git a/docs/index.rst b/docs/index.rst index 47d9248..f69fbc0 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -40,6 +40,14 @@ Help: helpdesk +LF Internal: + +.. toctree:: + :maxdepth: 2 + + project-bootstrap + + Indices and tables ================== diff --git a/docs/project-bootstrap.rst b/docs/project-bootstrap.rst new file mode 100644 index 0000000..0c49a40 --- /dev/null +++ b/docs/project-bootstrap.rst @@ -0,0 +1,72 @@ +.. _lfreleng-docs-bootstrap: + +##################### +New Project Bootstrap +##################### + +ci-management repo +================== + +Once Jenkins is available we can initialize a new ci-management repo. + +Steps + +.. todo:: First bootstrap a builder so that we can bootstrap ci-management + +#. Create ci-management repo in Gerrit +#. Create a README.md file explaining the purpose of the repo +#. Setup tox/coala linting for jjb/ and packer directories +#. Install global-jjb to GIT_ROOT/jjb/global-jjb +#. Create the CI Jobs in jjb/ci-management/ci-jobs.yaml + + .. code-block:: yaml + + - project: + name: ci-jobs + + jobs: + - '{project-name}-ci-jobs' + + project: ci-management + project-name: ci-management + build-node: centos7-builder-2c-1g + +#. Manually push the initial ci-management jobs to Jenkins +#. Git commit the current files and push to Gerrit +#. Confirm verify jobs work +#. Merge the patch and confirm merge job works +#. Install lf-ansible to GIT_ROOT/lf-ansible:: + + git submodule add https://github.com/lfit/releng-lf-ansible.git lf-ansible + +#. Install common-packer to GIT_ROOT/packer/common-packer:: + + git submodule add https://github.com/lfit/releng-common-packer.git packer/common-packer + +#. Git commit and merge patch in Gerrit +#. Create Initial CI Packer job in jjb/ci-management/ci-packer.yaml + + .. code-block:: 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 + +#. Git commit and merge patch in Gerrit +#. Symlink common-packer/templates/builder.json.example to templates/builder.json +#. Git commit and push patch to Gerrit +#. Confirm packer verify job passes +#. Merge patch and confirm merge job works +#. Update and Create appropriate builders in Jenkins using the newly created image + +.. todo:: provide example README text +.. todo:: provide example tox.ini and .coafile +.. todo:: we need to make sure the ci-jobs macro includes the tox job for linting