This repository defines the organizational structure, team membership, and project ownership for ScottyLabs. It serves as the source of truth for our GitHub organization's governance model, formalizing permission as code.
.
├── __meta
│ ├── schemas # JSON schemas for validation
│ ├── synchronizer # Python-based permission synchronizer
│ ├── validators # Rust-based validation tools
│ └── visualizer # Force graph for visualizing relationships
├── contributors # Individual contributor definitions
├── docs # Specific instructions for all file types
├── scripts # Utility scripts for environment secret management
└── teams # Team definitions with members and repos-
Follow the instructions in docs/contributors.md to add your information as a new contributor.
-
Update the file of the team(s) you want to join under the
teams/directory:- If the team file has an
applicantsfield, add yourself there. - Otherwise, add yourself to the
contributorsfield.
- If the team file has an
-
Review each project's repo's
CONTRIBUTING.mdfile to understand any team-specific contribution guidelines (for example, some teams might require you submit a Google Form). The link to each repo is in the format ofhttps://github.com/<organization>/<repo>, where<organization>/<repo>is listed in thereposfield of the team file. (e.g.https://github.com/ScottyLabs/governance). -
Submit a PR once you are ready. Familiarize yourself with the PR Review Process to understand the expectations for contributors and reviewers.
-
Follow the instructions in docs/teams.md to create a new team file.
-
Submit a PR once you are ready. Familiarize yourself with the PR Review Process to understand the expectations for contributors and reviewers.
Check the validators README for more information on the checks your PR must pass before it can be merged.
Check the synchronizer README for more information on the synchronization process, including what permissions are granted.
This project is licensed under Apache-2.0, and is heavily inspired by
Concourse's governance.