Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Info

Table of Contents

info

Projects are still required to develop and review their code through Gerrit until Anuket is able to fully move to Gitlab later this year (2021).
Gitlab-CI can be used for post-merge CI jobs, but verification of patchsets currently still require JJB.



This guide is still under development Trevor Bramwell


Table of Contents

Contributor Roles

There are 3 project roles in Anuket:

...

  1. Clone the project

  2. edit, git add, commit
    Write you change (remember to include `-s` to sign off commits: `git commit -s`)

  3. git push

  4. Click the link from the message to open a merge request to the repository

  5. If you have multiple commits, write a detailed explanation about what you're asking to be merged in.
    Set the change to "Draft" if its still being worked on.

  6. Wait for CI to pass and a CODEOWNER to review and merge.

Gitlab-CI

There is a lot of documentation available through Gitlab for building and maintaining .gitlab-ci.yml files.

...

The Releng project also maintains some of templates for projects to use; Projects are under no obligation or requirement to use the templates provided by the Releng project.
Help can always be requested through a  support ticket with the Linux Foundation release engineering team if projects need assistance configuring or debugging their CI jobs or pipelines.
These examples can be used to include the templates in your own project's .gitlab-ci.yml

Code Block
languageyml
titleDocker
---
include:
  - project: anuket/releng
    file: '/gitlab-templates/Docker.gitlab-ci.yml'

...

Code Block
myscheduledjob:
  rules:
    - if: $CI_PIPELINE_SOURCE == "schedule" && $MY_SCHEDULE == "true"

Rules: "when: never"

When using if rules, a job will never be added if the only rules listed run "when: never" - There must always be a statement that specifies when the job is to be included in the pipeline in order for the job to runNote: When specifying rules for a job, there is an implicit "- when: never" rule as the last in the list, unless a previous rule specified "never".

Hosted Runners (External Hardware builds)

If a projects needs go beyond what Gitlab-CI shared runners provide, they can request hardware they have access to be added as a hosted runner to their project by creating a Linux Foundation support request. The Linux Foundation release engineering team will the provide the requester with a GitLab runner token they can used to enroll the new hardware.

New Project Creation

After a new project has been reviewed and approved by the TSC, they can request their project be created on Gitlab through the Linux Foundation support site.