Skip to content

Latest commit

 

History

History
53 lines (44 loc) · 1.69 KB

README.md

File metadata and controls

53 lines (44 loc) · 1.69 KB

topology

Overview

This project manages (manually) the topology and hierarchies used on the Contributary website.

Adding Projects

Right now, all changes are submitted via PR and manually built and deployed into AWS.

To submit a project

  1. Create an issue in this repo
  2. Fork the repo
  3. Create a branch
  4. Add the project ("user" or "org") in the appropriate topology file in src/
  5. If you want to submit all repositories, use a wildcard selector "*"
  6. Submit a PR!

Examples

// adding a user and a specific repository
{
  "name": "Torvalds",
  "type": "user",
  "repositories": [{
    "name": "linux"
  }]
}

// adding an organization and all its repositories
{
  "name": "ContributaryCommunity",
  "type": "org",
  "repositories": ["*"] 
}

Read more about the architecture of the project, checkout the Contributary wiki.

Development

For contributing to this project and testing the output locally, you will need

  1. NodeJS v10.x
  2. Yarn v1.10 (>= 1.10)
  3. Create tmp/ directory in the root of the project
  • yarn lint - Validatse all JS and JSON passes linting
  • yarn develop - Runs the build task but write to a git ignored tmp/ directory
  • yarn build - Runs the build and outputs to the version controlled data/ directory, for release time
  • yarn release - Task to run at release time, to upload data/topology.json to S3

Release Procedure

  1. Merge all changes into master
  2. Run yarn release
  3. Review and commit any changes to data/ to master
  4. Bump package.json, git tag and push everything to master