This repository contains all the information related to the use cases that are shown in the Brain Simulation Platform.
All the titles, images, descriptions, files, etc are described in usecases.json
This app is deployed in HBP Collab
- Install docker
- Clone your fork using:
git clone https://github.com/YOUR_GITHUB_ACCOUNT/usecases.git
- Move to the repo
cd usecases
- Sync branches:
- Add base repo:
git remote add upstream https://github.com/antonelepfl/usecases.git
- Get latest changes:
git fetch --all
- Reset branches:
- Go to DEV
git checkout dev
- Replace with original changes
git reset --hard upstream/dev
- Go to DEV
- Add base repo:
- Make your changes on DEV branch
- ....
- Build container
docker build -t usecases-local .
- Run container
docker run -it -p 8282:8282 -v $(pwd):/home usecases-local:latest
- Open in the browser with
http://localhost:8282/#/categories
- Select the category of your use case
- The use case will be shown as it is in the Brain Simulation Platform
- The user make a pull request to the
dev
branch - A travis plan is triggered to look for any error in the files.
- When the plan finishes, the owners of the repo can merge the new pull request to
dev
. - The user receives the notification that his/her pull request was merged.
- A jenkins plan is triggered.
- The new changes appear in Online Use Cases DEV
- The owner receives the confirmation from the tests and the user that everything works correctly.
- The owner create a pull request from
dev
environment tomaster
. - A jenkins plan is triggered.
- Go to jenkins Build with Parameters and check release
- The new changes appear in Brain Simulation Platform
- Download the notebook that is pointed in the
file
field in usecases.json (Collab UUID) - Add this notebook into usecases/production_notebooks folder
- Add a new field on the usecases.json next to
file
calledfile_prod
that points tohttps://api.github.com/repos/antonelepfl/usecases/contents/production_notebooks/<category>/<notebook_name>.ipynb?ref=master
(*) - Create a Pull Request to dev branch with this 2 changes
- After aproved in dev create a new Pull Request merging dev into master
- After dev is merged into master this jenkin plan is triggered
- To release the new version of the site, tick release checkbox on this plan
(*) We are using the Github API and not the raw content because we need the SHA to compare using the common header snippet