summaryrefslogtreecommitdiff
path: root/tcwg-llvm-release.sh
AgeCommit message (Collapse)Author
2020-11-06tcwg-llvm-release: Run release script for branchesDiana Picus
Update our scripts so we can run test-release.sh with a custom git ref. This should allow us to test master or release/N.x without a tag. We already had this functionality before, but it was using the deprecated '-svn-path' parameter instead of the current '-git-ref'. Also remove the custom trunk "release candidate", since there's no need to treat master as a special branch. I will also update the Jenkins job accordingly. Change-Id: Iccac0eba68bfec60cdec7f2e7b96e993afd11936
2020-11-04tcwg-llvm-release: Copy release to artifactsDiana Picus
Copy the release archive to $WORKSPACE/artifacts. At the moment this also preserves the upload via ssh, until I get a functional artifact upload. Change-Id: I08465ad9a27b92a468848afc18c5e8be774ceb4b
2020-08-31tcwg-llvm-release: Deal with flang and mlirDiana Picus
Flang and MLIR are new to the monorepo. By default, MLIR is enabled and flang is disabled. This patch enables flang on aarch64 (and x86 for comparison purposes). It also disables MLIR on armv7 since we do not support it (there are many test failures since 32-bit support in general is missing / incomplete / untested in MLIR). Change-Id: I2cfa31762001fbffc0c41717d3d3792a5ac757d7
2020-06-01tcwg-llvm-release: Use port 22 for copying binariesDiana Picus
We're doing this because our .ssh/config connects to the host container on dev-01 by default, and that doesn't have the upload directory mapped. Change-Id: I80305eb168abd62eab95ce6c627178593a52a905
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-02-10tcwg-llvm-release.sh: Allow 2-digit majorsDiana Picus
Allow the release version major to contain 2 digits (since we're at LLVM 10.0.0). Change-Id: I3f49be448791c5abf1f86476fc69d3d530e4f3c9
2019-12-04tcwg-llvm-release: Get test-release.sh from GitHubDiana Picus
SVN doesn't work anymore, so we need to fetch test-release.sh from a GitHub link. The format of the release tag has also changed. Change-Id: I49ca98589ccc0456e92e1f10d8bad9b5685f7e40
2019-08-01tcwg-llvm-release.sh: Use ninja by defaultDiana Picus
Make it possible to use ninja for the release and make it the default. Add a command line parameter --use-ninja that we can set to false for older releases (< 9.0.0) that can't be built with ninja. Also limit the number of link jobs so we don't end up using too much memory on ARM. This uses the LINKJOBS value computed by tcwg-llvm-common.sh and is the main reason why we wanted to use ninja in the release job. Change-Id: I7f4f0f3c67c44490159cbd7894c6c511cd11bf79
2019-03-28tcwg-llvm-release.sh: Use tags instead of branchesDiana Picus
We are currently pulling the release script from branches/release_${MAJOR}${MINOR} This is a problem for the 7.1.0 release (first minor version with the new, post-LLVM-4.0 numbering scheme) because the release_71 branch doesn't exist. We could ask for it to be created, but it seems more robust to pull from tags/RELEASE_${MAJOR}${MINOR}${PATCH}/${RC} instead, since that's the path used by the upstream test-release.sh itself. Note that this doesn't work for --candidate values of 'trunk' or 'branch=', but I'm not sure the current version works either (in any case I didn't manage to guess a parameter combination that would work with such values). That can be fixed in a future patch. Change-Id: I19aa7e8a97eb635d076ac1c74bfa0f02200f046d
2018-09-12Add support for LLVM release from branchesThomas Preud'homme
To test the LLVM release process for regressions tcwg-llvm-release.sh needs to be able to build from a branch. The underlying test-release.sh script from upstream LLVM already has such support via the -svn-path option but tcwg-llvm-release.sh interface does not expose it. This patch extends the --candidate option to support the values trunk and branch=<LLVM branch>. Change-Id: Ia01a877b62457b462e718ec8019bc8374dad6e5a
2017-08-03tcwg-llvm-release.sh: Set LC_ALL to C for the releaseDiana Picus
The release now tries to set up the test-suite by default, and it runs into trouble because the locale is not set. Address this by setting LC_ALL=C before running the release script. Change-Id: Ia09157e33fb956221684f96a8ea7ba75aaa2eeda
2017-07-26tcwg-llvm-[build|release].sh: Echo URL at the end of the jobDiana Picus
Dump the toolchain URL at the end of the build and release jobs, so we can easily copy it and use it for triggering other jobs. Change-Id: Ie470fdf72c38a6440ef09f72e339233983e81ed9
2017-05-12tcwg-llvm-release.sh: openmp is now on by defaultRenato Golin
Change-Id: I22ec92c285086d714079e96feb310c9de4bce3ec
2017-05-12tcwg-llvm-*: Add compiler option, setting CC/CXXRenato Golin
In addition to an external toolchain, we also want to control which system compiler is to be used. If an option is passed, that will be the set into CC/CXX and used by the scripts in the same way an external toolchain would. Change-Id: I25366c6c3c725ead1667d7b8828b1100e5e925d3
2017-05-12tcwg-llvm-release.sh: Enabling OpenMP testing for AArch64/x86_64Renato Golin
Change-Id: I4fadef7c88336a553cbd1d23de1e5f49b3c96d3c
2017-05-12tcwg-llvm-release.sh: Use |& tee instead of >Renato Golin
Change-Id: Iada20b57de57c687ca1c4c155fe5d955246a5ccb
2017-05-12tcwg-llvm-release.sh: fix a few shellcheck warningsRenato Golin
Change-Id: Id18b64c451b25a0d9e0f525c8f036e725463cefd
2017-05-11tcwg-llbm-*: Standardise on TARGET, not TRIPLE, to avoid typosRenato Golin
Change-Id: I34c1f574dca80eee02f10c140a3cfc7d5db5f018
2017-05-08tcwg-llvm-*: Always use build ID and rev to identify buildsRenato Golin
To make sure stage two builds the same revision as stage 1 and to correctly identify the SVN revision of an LLVM build, calculate the SVN revision if one it not provided. Always passing down toolchain and revision, as they should always be available at that point. The test-suite job is free to ignore it. Change-Id: I5a79284ac4fbc5a42e5d85e69f39a8c6d68e0cc6
2017-05-05tcwg-llvm-*: Move toolchain name logic to toolchain_fileRenato Golin
Change-Id: I3742ada9e0c2e6342355a5d7294dd03648fa8ac2
2017-05-05tcwg-llvm-*: include common in the same basedirRenato Golin
Change-Id: I422ce0666089864ab50bf065af171c7ff0e4d1dd
2017-05-05tcwg-llvm-*: Additional argument to download_toolchainRenato Golin
Change-Id: Iedb0a501989dbaa6fd24d728d92e66a8dba1f9aa
2017-05-04tcwg-llvm-*: Moving common stuff outRenato Golin
This is an NFC patch that just common things up. I'm making sure that we only handle URLs and toolchain downloads in a single place, which will later be very useful when we get Jenkins to ask these scripts to create the trigger files. This is the first part of TCWG-1117. Adding the trigger files will be the second. I have tested on my box by sourcing the common file and calling the functions with the right parameters as well as running the scripts (build/release/test) with the appropriate arguments but with the core logic actually commented out. I have some empty tar balls with the right names on dev-01. :) Change-Id: Ice435ad9d5e20152e295413075c32a396ffc5e2a
2017-04-27tcwg-llvm-release.sh: Simplify release URLRenato Golin
Change-Id: I6d3e83f79f97bedb729ac3d6e0e75af8884fcd01
2017-04-21tcwg-llvm-release.sh: Ignore test results until the endRenato Golin
We want to push the binary up to be available to another job (say test-suite) even if there are test failures on the third stage, so we need to spawn it to background, so the return value can be handled without breaking the 'set -e' assumptions. Change-Id: I7e1621aee2d2c0b4bb79d997457a17440d01f2c8
2017-04-19tcwg-llvm-release.sh: Silly typo when executing the test-release scriptRenato Golin
Change-Id: Ieb055cd7a3db947eceabbb07f46d672791f9349c
2017-04-11tcwg-llvm-*: Fix toolchain argumentRenato Golin
Sometime during the development stages, we lost the ability to run with the system compiler instead of one specified in the arguments list. The test-suite still must have a toolchain (no point in testing the system compiler), but the release and the staged build (stage1) can use it. Change-Id: I66f8d9094f3f9f6aaccbbb279bd78862c0d9a803
2017-04-10tcwg-llvm-release.sh: New scriptRenato Golin
Adding a Jenkins script to run the LLVM release on a matrix job. This script won't do much more than call the already existing and tested upstream 'test-release.sh'. This is the official way to release LLVM. Change-Id: Id65ed06356bbc10123d482097d82099fc887b9a4