Skip to main content Link Menu Expand (external link) Document Search Copy Copied

GitHub project maintenance

On this page

Project structure

The Developer Experience and Community Success team has ownership of two projects under the linuxfoundation GitHub org:

Most of the time, the public project will be used. At this time, the private repository is used only for onboarding issues, which contain confidential information. The information below apply to both, but is more relevant to the public repository.

The following GitHub features are enabled in those projects via their settings:

  • Code (in both repos)
  • Issues (in both repos)
  • Pages (in public repo only)
  • Actions (in public repo only)

Code, Actions and Pages

The code feature in the public repo is used solely to host the handbook content and site. It uses standard GitHub features to reduce dependencies and simplify maintenance. GitHub Pages are used to host the site, and a standard GitHub action to deploy the site automatically when a PR is merged to the main branch

Code, tooling and structure for the handbook are described on the tech stack section

The workflow for editing the handbook is described on the contribution section

Issues and Projects

Tasks for the team are filed as issues using standard GitHub functionality.

For project planning, Kanban-like functionality, the Projects feature is used. At this time, there are two projects set up:

  1. Backlog - Developer Experience and Community Success: a backlog to contain general issues that are not associated with a specific project or OKR
  2. OKRs - Developer Experience and Community Success: a project to define and track status of the team’s OKRs

Project permissions

In order for team members to have full permissions to those projects in GitHub, they need to be added to:

  1. The linuxfoundation GitHub org. Only IT Services can do this.
  2. The Developer Experience and Community Success team in GitHub, under the linuxfoundation GitHub org. Team maintainers (generally the team manager) can do this.

This process will generally happen during a team member onboarding. Learn how to add a team member to the GitHub org and team

If a new or additional GitHub maintainer for the team needs to be appointed, the current team maintainer(s) can do this using the GitHub UI as well. The individual needs to be added to the team first, and then their role can be updated by selecting them in the members list and then choosing the Change role... dropdown menu option.

Note that a maintainer only has additional permissions. The team has been set up for everyone to be able to do reviews and to merge PRs. No one on the team though, including maintainers can commit code directly to the main branch, which is protected. Everyone in the team can create branches, but they will need to be merged in a PR always.

In addition, to be able to change project settings there will need to be an Admin appointed as well. To add/remove Admins, navigate to the Manage Access section in the GitHub UI