Job orb-freebsd

README

Skip to build

orb: check opam package reproductibility

This tool can check if an opam package build is reproductible (cf. https://reproducible-builds.org). It installs the package twice (different path & time) and check that installed files have the same hash.

Install & use

$ opam pin git+https://github.com/hannesm/orb#active
$ orb pkg [--diiffoscope]

This project is currently in early beta.

How does it work?

orb uses an already installed opam & opam root, and it follows those steps:

With option --diffoscope, mismatching files are copied locally and their diff generated, using diffoscope.

As orb generates temporary switches, packages dependencies are installed each time (also compiler), which can be time consuming when working on a package.

--keep-switches option permit to keep those generated switches for investigation needs. To manually remove them, don't just remove directory, but use opam switch remove <sw>.

Build 2021-07-23 21:16:18 -00:00

Back to readme

Build took 12min56s.

Execution result: exited 0.

Comparisons with other builds

With build 2021-07-22 21:35:26 -00:00 (output is identical binary)
With build 2021-07-21 21:14:51 -00:00 (output is identical binary)
With build 2021-07-20 21:14:41 -00:00 (output is identical binary)
With build 2021-07-12 14:25:34 -00:00 (output is identical binary)
With build 2021-07-01 14:21:29 -00:00 (output is identical binary)
With build 2021-06-30 14:20:53 -00:00 (output is identical binary)

Build artifacts

bin/orb.txz
SHA256:89af4315703e34fbd3bd2798d892f95a678d73cc4b71a720f7606a06f192485a (3.42MB)
build-environment
SHA256:96e4082aa8286fc53ec94defe0087807366dc13a1ed05b5979753f0f17ca2046 (261B)
opam-switch
SHA256:0b02982c1257950a2e3331f5d75d4fbbd09b8964fab9d04601eb02ca9f041acb (52.6kB)
system-packages
SHA256:ddcff03d4d468282ec45433c6d38df8e50957cc522b98296919aa25118940daf (238B)

Job script

#!/bin/sh

set -ex

fetch http://127.0.2.1:3000/job/orb-freebsd/build/latest/f/bin/orb.txz && pkg install -y orb.txz && rm orb.txz

repos="default:https://opam.ocaml.org,unikernels:https://git.robur.io/robur/unikernel-repo.git"
orb build --solver-timeout=600 --switch-name=/tmp/myswitch --date=1589138087 --out=. --repos=$repos orb

Build log

85 ms+ fetch http://127.0.2.1:3000/job/orb-freebsd/build/latest/f/bin/orb.txz
257 msorb.txz 3334 kB 75 MBps 00s
257 ms+ pkg install -y orb.txz
257 msUpdating poudriere repository catalogue...
257 ms[orbd.orb] Fetching meta.conf: . done
257 ms[orbd.orb] Fetching packagesite.txz: ..... done
745 msProcessing entries: .......... done
745 mspoudriere repository update completed. 112 packages processed.
745 msAll repositories are up to date.
865 msNew version of pkg detected; it needs to be installed first.
865 msThe following 1 package(s) will be affected (of 0 checked):
865 ms
865 msInstalled packages to be UPGRADED:
865 ms pkg: 1.16.3 -> 1.17.0
865 ms
865 msNumber of packages to be upgraded: 1
865 ms
865 ms4 MiB to be downloaded.
969 ms[orbd.orb] [1/1] Fetching pkg-1.17.0.pkg: .......... done
1_048 msChecking integrity... done (0 conflicting)
1_048 ms[orbd.orb] [1/1] Upgrading pkg from 1.16.3 to 1.17.0...
1_665 ms[orbd.orb] [1/1] Extracting pkg-1.17.0: .......... done
2_235 msUpdating poudriere repository catalogue...
2_235 mspoudriere repository is up to date.
2_235 msAll repositories are up to date.
2_345 msThe following 13 package(s) will be affected (of 0 checked):
2_345 ms
2_345 msNew packages to be INSTALLED:
2_345 ms bash: 5.1.8
2_345 ms ca_root_nss: 3.68
2_345 ms curl: 7.78.0
2_345 ms expat: 2.4.1
2_345 ms gettext-runtime: 0.21
2_345 ms git: 2.32.0_1
2_345 ms gmake: 4.3_2
2_345 ms libffi: 3.3_1
2_345 ms mpdecimal: 2.5.1
2_345 ms orb: 02deb66a
2_345 ms patch: 2.7.6_2
2_345 ms python38: 3.8.11
2_345 ms readline: 8.1.1
2_345 ms
2_345 msNumber of packages to be installed: 13
2_345 ms
2_345 msThe process will require 161 MiB more space.
2_345 ms24 MiB to be downloaded.
2_345 ms[orbd.orb] [1/13] Fetching gmake-4.3_2.pkg: .......... done
2_345 ms[orbd.orb] [2/13] Fetching ca_root_nss-3.68.pkg: .......... done
2_385 ms[orbd.orb] [3/13] Fetching bash-5.1.8.pkg: .......... done
2_425 ms[orbd.orb] [4/13] Fetching readline-8.1.1.pkg: .......... done
2_515 ms[orbd.orb] [5/13] Fetching git-2.32.0_1.pkg: .......... done
2_617 ms[orbd.orb] [6/13] Fetching expat-2.4.1.pkg: .......... done
3_018 ms[orbd.orb] [7/13] Fetching python38-3.8.11.pkg: .......... done
3_347 ms[orbd.orb] [8/13] Fetching mpdecimal-2.5.1.pkg: .......... done
3_347 ms[orbd.orb] [9/13] Fetching libffi-3.3_1.pkg: ..... done
3_348 ms[orbd.orb] [10/13] Fetching gettext-runtime-0.21.pkg: .......... done
3_387 ms[orbd.orb] [11/13] Fetching curl-7.78.0.pkg: .......... done
3_425 ms[orbd.orb] [12/13] Fetching patch-2.7.6_2.pkg: .......... done
3_846 msChecking integrity... done (0 conflicting)
3_887 ms[orbd.orb] [13/13] Installing ca_root_nss-3.68...
3_925 ms[orbd.orb] Extracting ca_root_nss-3.68: ........ done
4_035 ms[orbd.orb] [1/13] Installing readline-8.1.1...
4_128 ms[orbd.orb] [1/13] Extracting readline-8.1.1: .......... done
4_455 ms[orbd.orb] [2/13] Installing mpdecimal-2.5.1...
4_539 ms[orbd.orb] [2/13] Extracting mpdecimal-2.5.1: .......... done
4_648 ms[orbd.orb] [3/13] Installing libffi-3.3_1...
4_648 ms[orbd.orb] [3/13] Extracting libffi-3.3_1: .......... done
4_776 ms[orbd.orb] [4/13] Installing gettext-runtime-0.21...
4_815 ms[orbd.orb] [4/13] Extracting gettext-runtime-0.21: .......... done
4_925 ms[orbd.orb] [5/13] Installing expat-2.4.1...
4_925 ms[orbd.orb] [5/13] Extracting expat-2.4.1: .......... done
5_117 ms[orbd.orb] [6/13] Installing python38-3.8.11...
11_858 ms[orbd.orb] [6/13] Extracting python38-3.8.11: .......... done
15_035 ms[orbd.orb] [7/13] Installing curl-7.78.0...
15_325 ms[orbd.orb] [7/13] Extracting curl-7.78.0: .......... done
16_015 ms[orbd.orb] [8/13] Installing gmake-4.3_2...
16_058 ms[orbd.orb] [8/13] Extracting gmake-4.3_2: ......... done
16_155 ms[orbd.orb] [9/13] Installing bash-5.1.8...
16_368 ms[orbd.orb] [9/13] Extracting bash-5.1.8: .......... done
16_738 ms[orbd.orb] [10/13] Installing git-2.32.0_1...
16_738 ms===> Creating groups.
16_738 msCreating group 'git_daemon' with gid '964'.
16_818 ms===> Creating users
16_818 msCreating user 'git_daemon' with uid '964'.
17_696 ms[orbd.orb] [10/13] Extracting git-2.32.0_1: .......... done
18_765 ms[orbd.orb] [11/13] Installing patch-2.7.6_2...
18_765 ms[orbd.orb] [11/13] Extracting patch-2.7.6_2: ..... done
18_805 ms[orbd.orb] [12/13] Installing orb-02deb66a...
19_418 ms[orbd.orb] [12/13] Extracting orb-02deb66a: .. done
20_405 ms=====
20_405 msMessage from ca_root_nss-3.68:
20_405 ms
20_405 ms--
20_405 msFreeBSD does not, and can not warrant that the certification authorities
20_405 mswhose certificates are included in this package have in any way been
20_405 msaudited for trustworthiness or RFC 3647 compliance.
20_405 ms
20_405 msAssessment and verification of trust is the complete responsibility of the
20_405 mssystem administrator.
20_405 ms
20_405 ms
20_405 msThis package installs symlinks to support root certificates discovery by
20_405 msdefault for software that uses OpenSSL.
20_405 ms
20_405 msThis enables SSL Certificate Verification by client software without manual
20_405 msintervention.
20_405 ms
20_405 msIf you prefer to do this manually, replace the following symlinks with
20_405 mseither an empty file or your site-local certificate bundle.
20_405 ms
20_405 ms * /etc/ssl/cert.pem
20_405 ms * /usr/local/etc/ssl/cert.pem
20_405 ms * /usr/local/openssl/cert.pem
20_405 ms=====
20_405 msMessage from python38-3.8.11:
20_405 ms
20_405 ms--
20_405 msNote that some standard Python modules are provided as separate ports
20_405 msas they require additional dependencies. They are available as:
20_405 ms
20_405 mspy38-gdbm databases/py-gdbm@py38
20_405 mspy38-sqlite3 databases/py-sqlite3@py38
20_405 mspy38-tkinter x11-toolkits/py-tkinter@py38
20_405 ms=====
20_405 msMessage from git-2.32.0_1:
20_405 ms
20_405 ms--
20_405 msIf you installed the GITWEB option please follow these instructions:
20_405 ms
20_405 msIn the directory /usr/local/share/examples/git/gitweb you can find all files to
20_405 msmake gitweb work as a public repository on the web.
20_405 ms
20_405 msAll you have to do to make gitweb work is:
20_405 ms1) Please be sure you're able to execute CGI scripts in
20_405 ms /usr/local/share/examples/git/gitweb.
20_405 ms2) Set the GITWEB_CONFIG variable in your webserver's config to
20_405 ms /usr/local/etc/git/gitweb.conf. This variable is passed to gitweb.cgi.
20_405 ms3) Restart server.
20_405 ms
20_405 ms
20_405 msIf you installed the CONTRIB option please note that the scripts are
20_405 msinstalled in /usr/local/share/git-core/contrib. Some of them require
20_405 msother ports to be installed (perl, python, etc), which you may need to
20_405 msinstall manually.
20_445 ms+ rm orb.txz
20_445 ms+ repos=default:https://opam.ocaml.org,unikernels:https://git.robur.io/robur/unikernel-repo.git
20_445 ms+ orb build '--solver-timeout=600' '--switch-name=/tmp/myswitch' '--date=1589138087' '--out=.' '--repos=default:https://opam.ocaml.org,unikernels:https://git.robur.io/robur/unikernel-repo.git' orb
20_485 ms
20_485 ms<><> Fetching repository information ><><><><><><><><><><><><><><><><><><><><><>
20_485 ms[empty] Initialised
22_755 ms[unikernels] Initialised
33_669 ms[default] Initialised
113_795 ms[ORB] Switch /tmp/myswitch/build created!
113_795 ms[ORB] Install start
114_427 ms[ORB] Install orb
127_837 msThe following actions will be performed:
127_837 ms - install ocaml-options-vanilla 1
127_837 ms - install ocaml-base-compiler 4.12.0 [required by ocaml]
127_837 ms - install base-bigarray base [required by opam-core]
127_837 ms - install base-threads base [required by dune]
127_838 ms - install base-unix base [required by dune]
127_838 ms - install ocaml-config 2 [required by ocaml]
127_838 ms - install ocaml 4.12.0 [required by orb]
127_838 ms - install seq base [required by re]
127_838 ms - install ocamlfind 1.9.1 [required by extlib]
127_838 ms - install ocamlbuild 0.14.0 [required by cudf, dose3]
127_838 ms - install dune 2.9.0 [required by orb]
127_838 ms - install cmdliner 1.0.4 [required by orb]
127_838 ms - install base-bytes base [required by extlib]
127_838 ms - install stdlib-shims 0.3.0 [required by ocamlgraph]
127_838 ms - install re 1.9.0 [required by opam-client]
127_838 ms - install opam-file-format 2.1.3 [required by opam-format]
127_838 ms - install cppo 1.6.7 [required by extlib]
127_838 ms - install ocamlgraph 2.0.0 [required by dose3]
127_838 ms - install extlib 1.7.7-1 [required by opam-client]
127_838 ms - install opam-core 2.1.0~rc3 [required by orb]
127_838 ms - install cudf 0.9-1 [required by opam-solver]
127_838 ms - install opam-format 2.1.0~rc3 [required by orb]
127_838 ms - install mccs 1.1+13 [required by opam-solver]
127_838 ms - install dose3 5.0.1-1 [required by opam-solver]
127_838 ms - install opam-repository 2.1.0~rc3 [required by orb]
127_838 ms - install opam-solver 2.1.0~rc3 [required by orb]
127_838 ms - install opam-state 2.1.0~rc3 [required by orb]
127_838 ms - install opam-client 2.1.0~rc3 [required by orb]
127_838 ms - install orb 0.0.1~dev
127_838 ms===== 29 to install =====
127_838 ms
127_838 ms<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
137_868 ms-> installed base-bigarray.base
137_868 ms-> installed base-threads.base
137_868 ms-> installed base-unix.base
137_908 ms-> retrieved cudf.0.9-1 (https://opam.ocaml.org/cache)
137_947 ms-> retrieved cmdliner.1.0.4 (https://opam.ocaml.org/cache)
137_947 ms-> retrieved cppo.1.6.7 (https://opam.ocaml.org/cache)
139_068 ms-> retrieved extlib.1.7.7-1 (https://opam.ocaml.org/cache)
139_498 ms-> retrieved dose3.5.0.1-1 (https://opam.ocaml.org/cache)
141_477 ms-> retrieved mccs.1.1+13 (https://opam.ocaml.org/cache)
141_477 ms-> installed ocaml-options-vanilla.1
144_548 ms-> retrieved dune.2.9.0 (https://opam.ocaml.org/cache)
144_785 ms-> retrieved ocamlbuild.0.14.0 (https://opam.ocaml.org/cache)
150_018 ms-> retrieved ocaml-base-compiler.4.12.0 (https://opam.ocaml.org/cache)
151_205 ms-> retrieved ocamlfind.1.9.1 (https://opam.ocaml.org/cache)
151_418 ms-> retrieved ocamlgraph.2.0.0 (https://opam.ocaml.org/cache)
155_025 ms-> retrieved opam-file-format.2.1.3 (https://opam.ocaml.org/cache)
156_375 ms-> retrieved opam-client.2.1.0~rc3 (https://github.com/ocaml/opam/archive/2.1.0-rc2.tar.gz)
157_165 ms-> retrieved opam-format.2.1.0~rc3 (cached)
157_585 ms-> retrieved opam-repository.2.1.0~rc3 (cached)
157_905 ms-> retrieved opam-solver.2.1.0~rc3 (cached)
159_235 ms-> retrieved opam-state.2.1.0~rc3 (cached)
160_535 ms-> retrieved orb.0.0.1~dev (git+https://github.com/roburio/orb.git)
161_156 ms-> retrieved re.1.9.0 (https://opam.ocaml.org/cache)
161_808 ms-> retrieved stdlib-shims.0.3.0 (https://opam.ocaml.org/cache)
166_608 ms-> retrieved opam-core.2.1.0~rc3 (git+https://github.com/roburio/opam.git#no-unix-environment-at-top-level)
414_638 ms-> installed ocaml-base-compiler.4.12.0
414_638 ms-> installed ocaml-config.2
414_855 ms-> installed ocaml.4.12.0
417_725 ms-> installed seq.base
422_785 ms-> installed cmdliner.1.0.4
428_805 ms-> installed ocamlfind.1.9.1
428_805 ms-> installed base-bytes.base
434_945 ms-> installed ocamlbuild.0.14.0
455_545 ms-> installed dune.2.9.0
456_195 ms-> installed stdlib-shims.0.3.0
457_735 ms-> installed opam-file-format.2.1.3
458_075 ms-> installed cppo.1.6.7
459_925 ms-> installed re.1.9.0
464_675 ms-> installed ocamlgraph.2.0.0
465_165 ms-> installed extlib.1.7.7-1
471_185 ms-> installed cudf.0.9-1
476_325 ms-> installed opam-core.2.1.0~rc3
493_675 ms-> installed mccs.1.1+13
493_945 ms-> installed opam-format.2.1.0~rc3
503_875 ms-> installed opam-repository.2.1.0~rc3
525_305 ms-> installed dose3.5.0.1-1
525_595 ms-> installed opam-state.2.1.0~rc3
550_615 ms-> installed opam-solver.2.1.0~rc3
590_285 ms-> installed opam-client.2.1.0~rc3
628_375 ms-> installed orb.0.0.1~dev
675_625 msDone.
675_625 ms# Run eval $(opam env --switch=/tmp/myswitch/build) to update the current shell environment
675_625 ms[ORB] Installed orb
745_475 ms[ORB] tracking map got locks
745_475 ms[ORB] tracking map 1 atoms (package set 29 - 19585 packages)
745_475 ms[ORB] tracking map 1 packages
745_475 ms[ORB] tracking map 1 packages later
745_475 ms[ORB] tracking map got st and 1 packages (1 atoms_or_locals)
745_475 ms[ORB] tracking map got tr, dropping states
745_475 mscp: /tmp/myswitch/build/_opam/doc/orb is a directory (not copied).
745_475 ms[ORB] failed to copy /tmp/myswitch/build/_opam/doc/orb to ./doc/orb
745_475 ms[ORB] writing /tmp/builder-1523d5/orb.build-hashes
747_275 ms[ORB] cleaning up
775_219 ms[ORB] Switch /tmp/myswitch/build removed
775_219 ms[ORB] cleaning up