Commit Graph

25 Commits

Author SHA1 Message Date
Matthieu Gautier e031eced7c Fix deployment of release and nightly.
Docker image need to copy archive to deploy in the correct directory.
2019-05-06 14:34:25 +02:00
Matthieu Gautier 281adbd768 Build everything in a container.
Docker containers don't have the SSH_KEY so we need to copy
archives and git repo in a directory on the host and
launch deploy.sh script from there.
2019-05-02 17:44:56 +02:00
Matthieu Gautier 5a3ccd287f Look for the correct SSH_KEY in the docker environment. 2019-03-19 17:18:17 +01:00
Matthieu Gautier 827c963895 Update upload script to new server user "ci".
On new server, the user `nightlybot` as been renamed to `ci`.
The path of the data used by the download server has also changed.
2018-11-30 11:08:33 +01:00
Kelson d9ef792172 Update Travis for new download server 2018-11-03 14:38:46 +01:00
Matthieu Gautier ded38889cf Use docker to build native_dyn.
As we want to use qt and packages are available only since ubuntu artful, we
need to use docker because travis-ci is ubuntu trusty.

We could also build qt, but it takes too many time and travis timeout.
2018-06-11 16:50:44 +02:00
Matthieu Gautier e6c5624127 Create "date" directory when deploying nightly build.
The directory is create by simply copying the full directory instead of
individual files.
2018-05-14 22:10:40 +02:00
Matthieu Gautier 989889ca44 Deploy zim nightly on the right server.
zim related projects should be deployed on zim server, not kiwix.

Fix #156.
2018-04-23 14:02:45 +02:00
Matthieu Gautier b9abfa712d Deploy dist archive in project subdirectory (as for compiled binaries). 2018-03-21 12:14:58 +01:00
Matthieu Gautier 0594486afd Fix deployment of different release archives.
Fix #12.
2018-03-15 17:42:15 +01:00
Matthieu Gautier 6f6ffa5f87 Fix typos. 2018-02-26 11:31:12 +01:00
Matthieu Gautier 5ffa9ca323 Fixes typos and add download.openzim.org to known hosts. 2018-02-23 14:49:15 +01:00
Matthieu Gautier 4e35e70ef3
Add missing 'then' in deploy.sh 2018-02-07 08:36:17 +00:00
Matthieu Gautier cb468fc49f We must deploy releases archive when a tag is set not on cron. 2018-02-02 12:07:01 +01:00
Matthieu Gautier 06cf4d44d0 New travis script written in python and handle release deployement.
`compile_all.sh` script starts to be very complex.
Let's rewrite it in python.

In the same time, update the travis scripts to handle deployement of
release versions.
2018-02-01 18:21:59 +01:00
Matthieu Gautier bb5b85da50 Make travisCI publish binaries as release versions when tag is pushed.
This publish the same this that nightly build except that :
- Use the `--make-release` option to force kiwix-build to use tagged
  version of subprojects.
- The archives are named using the tag name.
- The archives are pushed to "releases" directory in download.kiwix.org.
2017-12-05 09:32:47 +00:00
Matthieu Gautier 254d036c42 Publish the dependencies archives as soon as they are generated.
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.
2017-04-18 11:58:51 +02:00
Matthieu Gautier cab89b38c0 Publish intermediate dependencies in a http accessible directory.
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.
2017-04-18 11:07:46 +02:00
Matthieu Gautier 77f66b6363 Cron job now publish dependencies archives for other travis 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.
2017-04-08 21:34:25 +02:00
Matthieu Gautier 716ffbc9ff Change the right of travisci_builder_id_key in the .travis.yml
This is better there. Instructions to prepare the ssh should be in the
same place.
2017-04-08 21:34:25 +02:00
Matthieu Gautier 29bba313bc [API change] Use just one option to specify the build target.
There is no more option for static or share build. This value is
integrated in the build-target.
2017-03-13 13:18:14 +01:00
Matthieu Gautier d78bc45be1 Properly fail in travis if sub-script fail.
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.
2017-02-13 11:53:40 +01:00
Matthieu Gautier 5f01937d69 [TRAVIS] Be sure that ssh key has correct file rights. (Bis)
The ssh key right mode must be 600. (644 is for public key...)
2017-02-12 19:09:10 +01:00
Matthieu Gautier 57eadef4a0 [TRAVIS] Be sure that ssh key has correct file rights.
The ssh key right mode must be 644.
2017-02-12 12:56:01 +01:00
Matthieu Gautier 99c94b552e [TRAVIS] Add a script to deploy archives on download.kiwix.org/nightly 2017-02-08 10:09:42 +01:00