How to test your pull request

The medium-term plan is have github to request a build automatically for each pull-request.

Meanwhile, there are two approaches depending if you have a Jenkins Inria account.

I don't have a Jenkins account

If you do not yet have an account at our Jenkins instance, you can create one:

Then:

You'll have to wait until some of the existing members of the project actually confirms your membership.

I have a Jenkins account

The following sections describe how you can use your Jenkins account

Check if a given branch breaks some of the tracked developments

E.g. in case of this pull request it means we have to "build" the opam-install job with the following parameters:

opam-install.3.png

Benchmarking (without "overlays")

E.g. in case of this pull request it means we have to "build" the benchmark-part-of-the-branch job with the following parameters:

benchmark-part-of-the-branch.5.png

where the field coq_opam_packages is by default set to:


coq-hott coq-flocq coq-compcert coq-vst coq-geocoq coq-color coq-fiat-crypto coq-fiat-parsers coq-unimath coq-sf coq-mathcomp-ssreflect coq-iris coq-mathcomp-fingroup coq-mathcomp-finmap coq-coquelicot coq-mathcomp-algebra coq-mathcomp-solvable coq-mathcomp-field coq-mathcomp-character coq-mathcomp-odd_order


Assuming that you will use the above value for the coq_opam_packages field, the benchmarking will finish in:


The job itself produces a looooong log. At its end you should see the results rendered as a table:

benchmarking-results.0.png

Each line shows the measurement for a single OPAM package.

Each measured/computed quantity has its own column.

The git commits, that were considered are stated explicitely below the table as NEW and OLD.

E.g., in the table shown above, we see that the compilation of coq-geocoq

The lines of the table are ordered wrt. improvements in the overall compilation times.

Benchmarking (with "overlays")

The following two parameters of the job:

enable us to define "overlays", i.e. tweak the definitions of OPAM packages to be used with new_coq_commit.

Concretely, one has to:

Cocorico: ContinuousIntegration (last edited 20-04-2017 21:34:09 by MatejKosik)

Cocorico!WikiLicense