diff --git a/contrib/gitian/DOCKRUN.md b/contrib/gitian/DOCKRUN.md index fa5e13c82..7f44b7914 100644 --- a/contrib/gitian/DOCKRUN.md +++ b/contrib/gitian/DOCKRUN.md @@ -23,6 +23,13 @@ su $USER The final `su` command is needed to start a new shell with your new group membership, since the `usermod` command doesn't affect any existing sessions. +You'll also need to clone the monero repository and navigate to the `contrib/gitian` directory: + +```bash +git clone https://github.com/monero-project/monero.git +cd monero/contrib/gitian +``` + If you want Mac binaries included in your build, you need to obtain the MacOS SDK: ```bash @@ -56,13 +63,15 @@ The dockrun.sh script will do everything to build the binaries. Just specify the version to build as its only argument, e.g. ```bash -./dockrun.sh v0.17.2.3 +./dockrun.sh v0.17.3.0 ``` The build should run to completion with no errors, and will display the SHA256 checksums of the resulting binaries. You'll be prompted to check if the sums look good, and if so then the results will be signed, and the signatures will be pushed to GitHub. +***Note: In order to publish the signed assertions via this script, you need to have your SSH key uploaded to Github beforehand. See https://docs.github.com/articles/generating-an-ssh-key/ for more info.*** + You can also look in the [gitian.sigs](https://github.com/monero-project/gitian.sigs/) repo and / or [getmonero.org release checksums](https://web.getmonero.org/downloads/hashes.txt) to see if others got the same checksum for the same version tag. If there is ever a mismatch -- **STOP! Something is wrong**. Contact others on IRC / GitHub to figure out what is going on. @@ -74,12 +83,37 @@ You can set other options for that script by setting the OPT variable when runni e.g. ```bash -OPT="-j 8" ./dockrun.sh v0.17.2.3 +# Run build processes with 8 threads +OPT="-j 8" ./dockrun.sh v0.17.3.0 ``` -You can also examine the build and install logs by running a shell in the container, e.g. +Post-build +---------- + +You can examine the build and install logs by running a shell in the container, e.g. + +```bash +# Tail running logs +docker exec -it gitrun /bin/bash +tail -F builder/var/install.log +tail -F builder/var/build.log + +# Inspect logs, in format install-.log and build-.log +docker exec -it gitrun /bin/bash +more builder/var/install-linux.log +more builder/var/build-linux.log +``` + +You can find the compiled archives inside of the container at the following directory (be sure to replace `v0.17.3.0` with the version being built): ```bash docker exec -it gitrun /bin/bash -more builder/var/install-linux.log +ls -la out/v0.17.3.0/ +``` + +To copy the compiled archives to the local host out of the Docker container, you can run the following (be sure to replace `v0.17.3.0` with the version being built): + +```bash +mkdir out +docker cp gitrun:/home/ubuntu/out/v0.17.3.0 out ```