summaryrefslogtreecommitdiff
path: root/MakeRelease.job
AgeCommit message (Collapse)Author
2021-01-17MakeRelease.job: Don't expand buildnumber to 4 digitsMaxim Kuvyrkov
... so that we can pass "--release_name 2021.01 --buildnumber 1" and get binaries named "2021.01-1" (not "2021.01-0001"). Change-Id: I3e7aa8a85b73fc8a66d64961371a2be7ba17abf8
2020-07-29MakeRelease.job: Fix use of port 22 to upload binary tarballs/take #2Christophe Lyon
Sigh, the previous patch used a syntax that applies only with using an rsync daemon (with rsync: protocol). Let's use -e 'ssh -p 22', like we do in other scripts. Change-Id: I41d3cb7ff843abcc56a94775e2fd04c5f317f7fa
2020-07-29MakeRelease.job: Fix use of port 22 to upload binary tarballsChristophe Lyon
Adding "-p 22" does not work for rsync, which expects the port number as a ":port" suffix for the host specification. Change-Id: I41dbfbe11f73fd02386f90a0266488557a0009c7
2020-07-10MakeRelease.job: Use port 22 to upload binary tarballsChristophe Lyon
Our default ssh config points to the host container where the directory containing the binary tarballs is not mapped. Use port 22 to upload them to the right location. Change-Id: I5f18365f9d36541e3133ca81ed9ac2ac560bef30
2020-04-30Shellcheck fixes round 4David Spickett
Fixes for: https://github.com/koalaman/shellcheck/wiki/SC2207 Are using the bash 4.x 'mapfile' syntax where the input to the array is seperated by newlines. If it's separated by spaces we use 'read' instead. Support for selecting libc in MakeRelease.job was removed in 3fa23da28ad73d0fe4b512c4aab269b5280a6650. So remove references to "libc" which were expanding to nothing anyway. In tcwg-llvm-common.sh PROJECTS->BRANCHED_PROJECTS is not strictly needed. However shellcheck can't tell that the local PROJECTS in this file is different from the PROJECTS in tcwg-llvm-build.sh. Change-Id: Ie55968e3bf185d0bd5795fe48014636cda1009bc
2020-04-28Shellcheck fixes round 3David Spickett
Now using the version that's present in the bionic images. Meaning we have more warnings but can also set the minimum level to ignore a lot of them. Fix the check for whether shellcheck supports --severity. (we have pipefail on, but we expect shellcheck to fail in this case) Change-Id: I296b8554591b7d327c75393e3924184abc6512b7
2020-04-23Shellcheck fixes round 2David Spickett
Also update the sanity check script to include .job files. Change-Id: Ibf72d9ff346ff7b012d4e282a6ac8f3b7e73590d
2019-02-26tcwg-dev-build: Enable builds using manifestsMaxim Kuvyrkov
If manifest.txt was uploaded in job's parameters, then pass --manifest option to MakeRelease.job. Fix MakeRelease.job to not pass --target when manifest is set, otherwise ABE complains. Change-Id: I2aa25d3840281159e2ed00cfaab3b9e47a661801
2018-11-26Don't ignore "null" values in variable expansionsMaxim Kuvyrkov
Replace ${var:-default} with ${var-default}. I learned something new about shell scripting today. From bash manual: === When not performing substring expansion, using the form described below (e.g., ‘:-’), Bash tests for a parameter that is unset or null. Omitting the colon results in a test only for a parameter that is unset. Put another way, if the colon is included, the operator tests for both parameter’s existence and that its value is not null; if the colon is omitted, the operator tests only for existence. === The immediate problem I need to fix is handling of host_aarchXX_excludecheck and host_x86_64_excludecheck parameters in tcwg-buildfarm.sh. With ":-" syntax the empty ("null") values are replaced by defaults, causing GCC testsuite to be ignored on aarchXX hosts when "--host_aarchXX_excludecheck ''" is given. There happens to be a single usage ":-" in ${rw:-rw} in start-container-qemu.sh, where ":-" is actually needed. Change-Id: Ibc8e070b698e1c76e2161eb65d40639b8cdec1f3
2018-11-01MakeRelease.job: Add option to skip manifest_validationMaxim Kuvyrkov
... which fails for native builds. Change-Id: I78db8bbf7d9fc2d3e6349e0106fb5c672a4be031
2018-07-02MakeRelease.job: Add --artifacts_top optionMaxim Kuvyrkov
... and make --fileserver parameter optional. This allows copying of binaries and logs to a local directory without uploading to a remote server. The intention is to then upload artifacts to snapshots.l.o under components/toolchain/dev-builds/ . Change-Id: Ifa315533c7cb1925343dd8dbd3fce1188ace6fe1
2018-07-02MakeRelease.job: Use rsync instead of scp.Maxim Kuvyrkov
Change-Id: Ibab34ca2382e4663c521a34db27d5c646409de69
2017-08-29MakeRelease.job: Handle aarch64-linux-gnu_ilp32 target.Maxim Kuvyrkov
Change-Id: I2c1f40c0f2eb41d74ff6ecec10f1721aa875257d
2017-04-19MakeRelease.job: Use predictable path for artifacts lists.Charles Baylis
Since tcwg-make-release.yaml needs to locate the artifacts lists, we need to ensure they are located at a suitable path. Therefore, put them at the top of ${WORKSPACE}. Change-Id: If12baa0a5d57b2c06018659f4218dbdbb902eb31
2017-04-12MakeRelease.job: Remove logic to select libc.Charles Baylis
It is not necessary for MakeRelease.job to set the libc on the Abe command line, because Abe already has the required logic to select the appropriate libc for the selected target and selected extraconfigdir. This fixes the build of GCC 7, which incorrectly selects eglibc as the C library for linux targets. Change-Id: I254192cda927ff33462bef603fb4f7b5d5230e29
2017-04-04MakeRelease.job: use abe --list-artifacts optionCharles Baylis
Remove uses of find to locate manifest by using --list-artifacts to record real location of the manifest. Change-Id: I5683f5decd034d21dd1ab2ecd22e48aed09cd079
2017-04-04MakeRelease.job: Rename --date into --release_name.Christophe Lyon
This is to match the change in the Jenkins job. Change-Id: Ibeb8f61f45b1a51c2440cdd3b7204bb451070e6f
2017-03-28MakeRelease.job: Do not rely on env variables:Christophe Lyon
gcc_src binutils_src glibc_src manifest_src toolchain_config To avoid a silent dependency on Jenkins setting them. Note that all these variables are optional, so not setting them won't result in an error. Change-Id: I5d0cbbf52cc39c628e170b858a5f5b5c970f353d
2017-03-20MakeRelease.job: Add --buildnumber option.Christophe Lyon
And do not rely on BUILD_NUMBER in the environment. Change-Id: I41e31968ffa2e34577d840d442357404edb18668
2017-03-20MakeRelease.job: Add --canadian option.Christophe Lyon
And no longer rely on an environment variable. Change-Id: I7f1c64e8632346e82a17e6ded8a5dbe588301b00
2017-02-17MakeRelease.job: Use GCC Major.minor for upload dirname.Christophe Lyon
Since GCC 5, use Major.minor, and use Major.minor.point for older releases. This makes the upload dirname consistent with the tarball names. Change-Id: I7289fb510eedcfc73cbc5fe0be5c13da3db20fc4
2017-02-17MakeRelease.job: Fix option handling.Christophe Lyon
Remove short option names support, shift args when current option requires an argument, and exit with an error code in case an unsupported option is supplied or a mandatory one is missing. Change-Id: I3dcb5a24cfd7f5b74682a12c43233ad2b73fe96c
2017-01-26MakeRelease.job: Remove unnecessary setarch.Maxim Kuvyrkov
We now build releases inside containers that have correct personality. Change-Id: I5c044b956e17a4d5eed86807d5f14cc29e9f3393
2017-01-10MakeRelease.job: add --binariesdir and --logsdir options.Christophe Lyon
They are currently optional, the script uses them if present, but still computes default values and warns if they differ. Change-Id: I62b1ab5ce19a430ed274091650d8a6cc703bff09
2016-12-20MakeRelease.job: Move fileserver duties to dev-01.tcwglabMaxim Kuvyrkov
... from ex40-01.tcwglab.linaro.org. Also update file path from /work/space/ to /home/tcwg-buildslave/releases/. Change-Id: I9d10f627adaa8daecfaa29cd2323b29be23516be
2016-12-14Update scripts from ABE. Merge remote-tracking branch 'jenkins-sh/master'Maxim Kuvyrkov
Change-Id: I8e66a03e2533620a6d941d2af4715502f87ef6d4
2016-12-04MakeRelease.job, jenkins.sh: Add --abedir option.Christophe Lyon
In MakeRelease.job, rename --abepath to --abedir for homogeneity. In jenkins.sh, replace --abe to --abedir, remove support for short option name (-c). Change-Id: Ic35f1a1a73e848da4da7221017db552d73d25db0
2016-11-17MakeRelease.job: Add --abepath mandatory option.Christophe Lyon
Change-Id: I9c231c28c3af82ba79aaa6c1ec771e0da1af293c
2016-11-06MakeRelease.job: Append build number to upload directory.Christophe Lyon
For both binary tarballs and logs. Implements TCWG-878 Change-Id: I64b653242d93cf856066d8352bd702ebf3271405
2016-11-06MakeRelease.job: add -${arch} suffix to log filename.Christophe Lyon
This will create MakeRelease-198-x86_64.log.xz and MakeRelease-198-i686.log.xz. Implements TCWG-877. Change-Id: I11f560d02812301c1dd981b7d5ecfc02a4f3b941
2016-10-21scripts/MakeRelease.job: Fix computation of $logfile.Christophe Lyon
Until command-line options have been parsed, in case workspace has been overriden. Change-Id: I615860b2c608d9c7eabbc112d7e267f4b288a211
2016-10-14Validate manifests after build.Charles Baylis
Use the abe-tests manifest validator to ensure that the manifest is correct. Since it is not currently possible to determine whether the build is for a release, release mode URL validation is not enabled. Change-Id: I8a435f9d082aab72599b1a98d32d8b2d3b4430aa
2016-09-19scripts/MakeRelease.job: append GCC version to fileserver upload directory namesChristophe Lyon
We want to upload releases of different gcc branches to different directories: 4.9-2016.08, 5-2016.08-2, 6-2016.08-2-rc2 for instance. The release YYYY.MM[-SPIN][-RC] is provided in Jenkins by the release manager, but the gcc release version is parsed from the generated manifest filenames. Change-Id: I9da981ea74c457184b4ef15459598a201a4238bc
2016-09-09MakeRelease.job should fail if 'date' isn't set.Ryan S. Arnold
Otherwise --release as passed to ABE will be empty. Change-Id: Id30ad5c0cb4044273f0b4678bde91569bfe3ffe5
2016-09-09scripts/MakeRelease.job: Fix cleanup.Christophe Lyon
${local_builds} is not defined, so don't try to cleanup below it. _build/builds/${host}/${target} shouldn't exist anyway when host is i686-w64-mingw32 as the script starts by cleaning _build/ Change-Id: I20d17cab9431e7c10e8cd4a87a476a02268afecf
2016-08-30scripts/MakeRelease.job: Fix copying of manifest.txtChristophe Lyon
When building a binary toolchain, the manifest is present under builds/${host}/${target} and under builds/destdir/${host}. No need to find both before copying (the 2nd one would silently overwrite the 1st one) Change-Id: I72df8e1a2d4fe6d650724b9d459a916cb1332d80
2016-08-08Build Linux and Win32 binary tarballs in the same MakeRelease.job pass.Rob Savoye
Tar the first (linux) cross-build when building the mingw32 host toolchain. Change-Id: Ia0e7c77adefe16ad399608fb560f997625239286
2016-08-05Cleanup usage of "fileserver" and "ref" options in scriptsMaxim Kuvyrkov
Remove --fileserver from jenkins.sh, but keep it in MakeRelease.job, since the latter is using fileserver as logserver. Also fix path to reference snapshots. Change-Id: Idbb77318810e5f9c0597a6182e2bc84d036e9400
2016-07-14scripts/MakeRelease.job: Use robust path to ABE checkoutMaxim Kuvyrkov
Change-Id: I0f9429d7b666f900fb862e92e92bdbb64b9a7b3c
2016-07-14scripts/MakeRelease.job: Fix typo.Maxim Kuvyrkov
Change-Id: I352be1a093e32d0935c0e8448205e19a1765274e
2016-07-08scripts/MakeRelease.job: Fix typos and whitespace errors.Ryan S. Arnold
Change-Id: I8c64fed1410c409d4934eab4d9c8fd27a73f9a18
2016-07-08scripts/MakeRelease.job: Remove 'snaps' as it is unused.Ryan S. Arnold
Change-Id: Ia33e1bb87e9357d8399ce08353da735237a81bd7
2016-07-08scripts/MakeRelease.job: Copy logs to fileserver even if toolchain builds fail.Ryan S. Arnold
Change-Id: I62c5edaeea682623a98e6fcb63780e29596ca5bc
2016-07-06Remove --tarbin logic from scripts/MakeRelease.jobRyan S. Arnold
Now that --tarsrc isn't supported by scripts/MakeRelease.job there's no reason to support --tarbin, as it is now the default behavior. Removing the command line option is safe, even though jenkins jobs might pass --tarbin because the option will just be ignored. Change-Id: I84e59d0d19beab4d5fe5bd639c19474f0cc397c0
2016-07-04scripts/MakeRelease.job: Remove broken --check support.Christophe Lyon
We do not use --check when building a release anyway. Change-Id: I55b0d90bdded21876fcdffa69b4d462cd5a69c0c
2016-07-01Dump stdout into a log file, and copy it to the fileserver.Rob Savoye
This will reduce stdout traffic to the Jenkins console which should improve release build time performance. Change-Id: I861f21b8064350ff9b17257c39b3ce0612c185b9
2016-07-01scripts/MakeRelease.job: Put binaries into directories based on gcc version.Maxim Kuvyrkov
Change-Id: Ie27bbfd179c8ed1691c1a02239ccf027afb7f2d2
2016-07-01Add usage() output for MakeRelease.job.Ryan S. Arnold
Change-Id: Ibcd0f74e624e749b3aac3cc6deaa9573449f75cb
2016-07-01Remove --tarsrc option.Ryan S. Arnold
The --tarsrc option has bit rot in ABE as it is not used for the current release process. Just remove this from the options. Change-Id: I3cd2277c48296a165f2536e177388f3bab4e4b64
2016-07-01Remove --nocheck optionRyan S. Arnold
The --nocheck option would cause binary tarballs to not be copied to the fileserver if --nocheck is used. We don't want this so we'll just remove it. Change-Id: Ic3e5a5a37dd99ec4d342db6b280c1e87d2204813