We may end in a deadlock if we publish dependencies archives at the end
of the compilation and if all compilation succeed.
For example project B may depend on project A.
If we change the project A API and the project B code to reflect the API
change and merge A' API in master and create a PR for B, the PR for B
will need a new archive with new project A' API.
However, as B' master fails with new A, the whole compilation fails and
nothing is publish. So B'PR is never compiled successfully.
By publish the archives as soons as generated, the A' new API will be
published and B'PR will compile correctly, even if master fails.
Will be able to merge B'PR without bypassing travisCI.
Those dependencies will be used by travis CI in other projects.
We want to avoid other project to need a ssh key to get them :
- To avoid spread(and maintenance) of ssh key.
- For PR coming from another repositories, ssh key is not available.
By making those dependencies available by http, we simplify the process.
Fix partially #34.
Archives download need to be updated in client projects.
If we want to build other projects (kiwix-lib, kiwix-tools) with travis,
it is better to have all dependencies already compiled.
kiwix-build project now compiles them and publishes the dependencies
archive at the right place where other projects can use them.
Make `kiwix-build.py` also fail if sub-command fail instead of just print
an error message and quit.
`kiwix-deploy.py` is far more simple and already fails miserably if a
sub-command fails.