All Projects → openedx → repo-tools

openedx / repo-tools

Licence: Apache-2.0 License
Tools for repo maintenance, etc.

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects
Makefile
30231 projects

Open EdX Repo Tools

This repo contains a number of tools Open edX uses for working with GitHub repositories.

  • oep2: Report on OEP-2 compliance across repositories.
  • tag_release: Tags multiple repos as part of the release process.

Setting up GitHub authentication

Most of these make GitHub API calls, and so will need GitHub credentials in order to not be severely rate-limited. Edit (or create) ~/.netrc so that it has an entry like this:

machine api.github.com
  login your_user_name
  password ddf9079e12042ac022c101c61c0235965851e209

Change the login to your GitHub user name. You'll get the password value from https://github.com/settings/applications. Visit that page, click on Developer Settings and in the section called "Personal access tokens," click "Generate new token." It will prompt you for your password, then you'll see a scary list of scopes. Check the "repo" option and click "Generate token." Copy the password that appears. Paste it into your ~/.netrc.

Working in the repo

To work on these tools:

  1. Use a virtualenv.

  2. Install dependencies:

    make dev-install
    
  3. Run tests:

    make test
    
  4. Older tools were Python files run from the root of the repo. Now we are being more disciplined and putting code into importable modules with entry points in setup.py.

Older Tools

There are many programs in this repo in various stages of disrepair. A few of them are described in this repo's older README.md file. Others are not described at all, but may be useful, or have useful tidbits in the code.

Feedback

Please send any feedback to [email protected].

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].