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. The specific permissions granted to contributors and each team are detailed in synchronizer/README.md.
.
├── __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 reposFor each team you want to join (and you must join at least one):
-
Fork the repository and clone it to your local machine.
-
Follow the instructions in docs/contributors.md to add your information as a new contributor.
-
Update the file of the team 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 of
https://github.com/<organization>/<repo>, where<organization>/<repo>is listed in thereposfield of the team file (e.g. https://github.com/ScottyLabs/governance).
- The link to each repo is in the format of
-
Submit a PR once you are ready. Familiarize yourself with the PR Review Process to understand the expectations for contributors and reviewers.
-
Fork the repository and clone it to your local machine.
-
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.
See the validators README for more information on the checks your PR must pass before it can be merged.
See the synchronizer README for more information on the synchronization process.
This project is licensed under Apache-2.0, and is heavily inspired by
Concourse's governance.