This repo contains CFL's python package. This will be installed into all backend services.
In accordance with the Terms of Use of the Code for Life website, all copyright, trademarks, and other intellectual property rights in and relating to Code for Life (including all content of the Code for Life website, the Rapid Router application, the Kurono application, related software (including any drawn and/or animated avatars, whether or not such avatars have any modifications) and any other games, applications or any other content that we make available from time to time) are owned by Ocado Innovation Limited.
The source code of the Code for Life portal, the Rapid Router application and the Kurono/aimmo application are licensed under the GNU Affero General Public License. All other assets including images, logos, sounds etc., are not covered by this licence and no-one may copy, modify, distribute, show in public or create any derivative work from these assets.
To install this package, do one of the following options.
Ensure you're installing the package with the required python version. See setup.py.
Remember to replace the version number ("0.0.0") with your desired version.
Option 1: Run pipenv install
command:
pipenv install git+https://github.com/ocadotechnology/[email protected]#egg=codeforlife
Option 2: Add a row to [packages]
in Pipfile
:
[packages]
codeforlife = {ref = "v0.0.0", git = "https://github.com/ocadotechnology/codeforlife-package-python.git"}
To make changes, you must:
- Branch off of main.
- Push your changes on your branch.
- Ensure the pipeline runs successfully on your branch.
- Have your changes reviewed and approved by a peer.
- Merge your branch into the
main
branch. - Manually trigger
the
Main
pipeline for themain
branch.
You may wish to install and integrate your changes into a CFL backend before it's been peer-reviewed.
Remember to replace the branch name ("my-branch") with your branch.
[packages]
codeforlife = {ref = "my-branch", git = "https://github.com/ocadotechnology/codeforlife-package-python.git"}
New versions of this package are automatically created via a GitHub Actions workflow. Versions are determined using the semantic-release commit message format.
A new package may only be released if:
- there are no formatting errors;
- all unit tests pass;
- (TODO) test/code coverage is acceptable.