- Python 100%
|
|
||
|---|---|---|
| .github/workflows | ||
| oca_repo_maintainer | ||
| scripts | ||
| tests | ||
| .flake8 | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| .prettierrc.yml | ||
| .pylintrc | ||
| .pylintrc-mandatory | ||
| codecov.yml | ||
| LICENSE | ||
| README.md | ||
| requirements.txt | ||
| setup.cfg | ||
| setup.py | ||
Repo maintainer
This tool allows to manage repositories and teams via via YAML configuration. Features:
- create/update repositories
- create/update teams and roles
- create/update branches
- add new branches to existing YAML conf
Available tools
oca-repo-manageused to automatically maintain repositories based on YAML conf (see OCA conf below)oca-repo-pagesused to automatically generate repo inventory docs from the same YAML confoca-repo-add-branchused to manually add new branches to existing conf
I can use it on my own organization?
Yes, you can. You just add the repo on your organization, add a secret called ORG_TOKEN on you secrets and modify the secrets with your information.
OCA configuration
https://github.com/OCA/repo-maintainer-conf
Bootstrap
You can use the script scripts/bootstrap_data.py to generate the conf out of existing repos. Run it with --help to see the options.
Usage
Manage repos
This action is normally performed via GH actions in the conf repo. You should not run it manually.
Yet, here's the command:
oca-repo-manage --org $GITHUB_REPOSITORY_OWNER --token ${{secrets.GIT_PUSH_TOKEN}} --conf-dir ./conf
Generate docs
This action is normally performed via GH actions in the conf repo. You should not run it manually.
Yet, here's the command:
oca-repo-pages --org $GITHUB_REPOSITORY_OWNER --conf-dir conf --path docsource
Add new branches to all repos
This action has to be performed manually when you need a new branch to be added to all repos in your conf. Eg: when a new Odoo version is released.
Go to the conf repo on your file system and run this:
oca-repo-add-branch --conf-dir ./conf/ --branch 18.0
Review, stage all the changes, commit and open a PR.
You can prevent this tool to edit a repo by adding manual_branch_mgmt boolean flag to repo's conf.
Licenses
This repository is licensed under AGPL-3.0.
OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.
