As of Feb 4 2018, docker-compose.yml
pulls the most recent build from dockerhub instead of locally building.
To do development builds, the compose needs to be augmented with the info that is in build-compose-override.yml
So to enable docker-compose to work locally use the following arguments to compose:
docker-compose -f docker-compose.yml -f build-compose-override.yml XXXX
As of April 15 ew added NGINX as a reverse proxy, to ease development we added an aditional override that will enable you to run the API and UI on your terminal windows and still be able to use the NGINX proxy:
docker-compose -f docker-compose.yml -f dev-compose-override.yml -f dev-gateway-override.yml XXXX
running this command will route the NGINX docker container to the host API and UI ports.
[XXXX
being what ever compose command you wanted to run, up
, down
, build api
, etc)
This project uses a 'cactus' branching strategy https://barro.github.io/2016/02/a-succesful-git-branching-model-considered-harmful/
This means:
- The head of
master
is the newest development code - Released code can be found by looking at GitHub releases and/or project tags
- Primary use of branches on GitHub is for releases (feel free to use locally, just don't try and push them unless they for a release)
- Don't just
pull
- you should always usepull --rebase
, in other word only do fast-forward merges - Any pull requests will need to be rebased to the head of
master
before they will be merge
-
Process begins as soon as all the features that are destin for the release are in master
- Make a release branch - "git checkout -b v0.5"
-
Test/bug-fix until the release is ready
- Set the "patch" number your attempting to build (
MAJOR.MINOR.PATCH
) - Edit the
docker-compoose.yml
so that it points to that version - "api:0.5.1" - Commit & push
- Do a local build then a up to double-check mods -
docker-compose -f docker-compose.yml -f build-compose-override.yml up
- Set the "patch" number your attempting to build (
-
If everything above all seems clean and your ready to really make the release (trigger the automatic builds)
- Tag with the full verison info -
git tag -a -m "The release" v0.5.1 ; git push origin v0.5.1
- (Wait for dockerhub to finish building everything
- Do a
docker-compose up
and make sure its still as expected (best on clean clone and clean docker (flush releated images)
- Tag with the full verison info -
-
Make the release on github
- Click on "X releases" in github and "Draft a new release" with the version tag used above
- Build the Tar/Zips for the release
- Start in a clean/empty directory
clone https://github.com/samtecspg/articulate.git
mv articulate articulate-src
cd articulate-src
git checkout v0.5.1
cd ..
mkdir articulate-0.5.1
cp -r articulate-src/docker-compose.yml articulate-src/local-storage articulate-0.5.1
rm articulate-0.5.1/local-storage/redis-data/.gitignore articulate-0.5.1/local-storage/rasa/nlu-model/.gitignore
zip -9 -y -r articulate-0.5.1.zip articulate-0.5.1
tar cvf articulate-0.5.1.tar articulate-0.5.1
gzip -9 articulate-0.5.1.tar
-
"Edit" the github relase and drag
articulate-0.5.1.zip
&articulate-0.5.1.tar.gz
onto the release -
Edit the GitHub release with any useful notes, upload the tar/zip