Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define per-repository configuration settings #2549

Open
tellison opened this issue May 10, 2022 · 8 comments
Open

Define per-repository configuration settings #2549

tellison opened this issue May 10, 2022 · 8 comments
Labels

Comments

@tellison
Copy link
Contributor

Adoptium currently has 47 repositories for various tasks. This issue is to define the expected settings for these repositories to ensure they are secure, allow people to be productive, and are consistent to avoid surprises.

Repository settings include such items as:

  • branch protection
  • access control lists (alignment with Eclipse requirements), and removing temporary admin access rights
  • required number of PR approvers
  • constraints on forced push
  • etc

First step is to define the expected settings for each type (infra, dev code, release repo, website/api, etc) of repository we handle. Second step is to bring the 47 repositories in line with these settings - which may require temporary admin access.

@sxa sxa added the security label May 30, 2022
@sxa
Copy link
Member

sxa commented Jun 22, 2022

Of the current set of reqpositories, we have the following categories:

Repository sets Repos Current mandatory reviewers
Source mirror repos 12 n/a - No PRs (Alpine JDK8?)
Binary repos 6 n/a - No PRs
Temurin 11 4 with zero, 2 with one, 2 with two
aqavit 7 4 with zero, 1 with one?, 2 with two?
adoptium 7 All zero, question over blog and dash
mission control 1 TBC
incubator 2 TBC

Spreadsheet (restricted access) currently at https://docs.google.com/spreadsheets/d/10PfKCBpnvx6RUQMhZfzK4EpBUMP5rPBnlUJ3SwidVLM/edit#gid=0

@tellison
Copy link
Contributor Author

@sxa Thanks for gathering the info. Please can you set up a call with interested folks to discuss and action this now?

@sxa
Copy link
Member

sxa commented Jul 5, 2022

Action items from today's call (Attendees: @sxa @tellison @gdams @smlambert @andrew-m-leonard @karianna)

  • @gdams to look at implications of implementing PR approvals on repositories which use bots/auto-mergess
  • @sxa to look at defining a template that can be used for all new repositories generated for the project
  • Project leads tor Incubators and Mission Control will be consulted regarding the options they wish to have on their repositories
  • DONE: ENABLED Follow-up on 2FA for the org, after ensuring the bots are safe.
  • Request for changes to the repository settings will be deferred until the July release is considered safe.

NOTE: The website-v2 repository is not controlled via the normal eclipse processes and is independent of the other repositories.

@sxa
Copy link
Member

sxa commented Jul 8, 2022

Summary of desired respository settings:

Project Repository Required reviewers
Adoptium All 1
n/a website-v2 1
aqavit TKG, aqa-tests 2
aqavit All others 1
temurin jdkXX, temurinXX-binaries, marketplace-data, build-jdk 1
temurin temurin-build, ci-jenkins-pipelines, github-release-sciprts, jenkins-helper, mirror-scripts, installer, containers, infrastructure 2
mission control - TBC
incubator - TBC

In terms of other settings, this is what we agreed we wanted across all adoptium, aqavit and temurin projects

Setting Yes/No
DIsmiss review state on new pushes No
Require review from code owners No
Require status checks to pass ECA requirement
Require rebase first No
Require conversation resolution No
Require linear history (No merges) Yes
Allow force pushes No (Engage eclipse if required for security)
Automatically delete head branches Yes?
Allow merge commits No
Allow squash merging Yes
Default to PR title for squash commits No
Allow rebase merging Yes
Always suggest updating PR branches Yes
Allow auto-merge Yes

@jiekang
Copy link

jiekang commented Jul 11, 2022

@sxa will website-v2 be made "part of" EF like the other repositories?

@sxa
Copy link
Member

sxa commented Jul 12, 2022

@sxa will website-v2 be made "part of" EF like the other repositories?

There are currently no plans to change it so for now it will remain unique.

@sxa
Copy link
Member

sxa commented Sep 1, 2022

Request for change to reviewer numbers: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/issues/1900

@sxa
Copy link
Member

sxa commented Oct 17, 2023

Noting that the configuration settings are now controlled using Otterdog with the configuration in https://github.com/adoptium/.eclipsefdn/blob/main/otterdog/adoptium.jsonnet

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Todo
Development

No branches or pull requests

3 participants