Since the change to native symbol formats, the archived packages are huge and are
occupying too much disk space in Jenkins master. Therefore limit it to the case
in which they are really uploaded to backtrace and products released.
Summary:
Backtrace accepts a wide range of native debugging formats, e.g. PDB, dSYM, ELF files. Instead of converting to an intermediate format being breakpad sym files, package and upload the native formats directly.
Also reduce the list of debugging symbols to a reasonable minimum. Sample and test symbols are not required.
Reviewers: #gatekeepers, msutcliffe
Reviewed By: #gatekeepers, msutcliffe
Subscribers: msutcliffe
Maniphest Tasks: T588
Differential Revision: https://dev.swift-project.org/D102
Summary:
In the previous attempt, the parent directory was added to the tar file with it being renamed to ".".
So it still had a directory and was not a flat tar file. Instead add all files from the symbol path individually.
Reviewers: #swift_pilot_client
Differential Revision: https://dev.swift-project.org/D86
Symbol files were never copied one to one to a break server. Therefore
setting up the required directory structure is not necessary.
In contrast, backtrace.io wants a tarball without any subdirs.
The config is loaded from json files by qmake, and we define the qmake
function `swiftConfig` for checking whether a feature is enabled.
This function can be directly used in `buildconfig_gen.cpp.in`,
so the trick with C++ comment tokens in variables is not needed.
Depending on the branch, we override the end of live date relative in month
from the build time.
develop/ builds expire in 6 month
release/ builds expire in 12 month
all others expire in 3 month.
ref T319
Summary:
- Changed the name in all build artifacts
- Everywhere in C++
Reviewers: #swift_pilot_client, kbasan
Reviewed By: #swift_pilot_client, kbasan
Subscribers: jenkins
Maniphest Tasks: T205
Differential Revision: https://dev.swift-project.org/D69
Summary:
The version number used for packaging symbols and xswiftbus was not the
full one including the timestamp.
This change adds the last commit timestamp (in contrast to the build
timestamp used before) as regular part of the version number. This helps
us to also keep the version number consistent with the content across all
installers. The version number will change only, if the last commit was
modified and not with each different build.
In the end, all jenkins jobs building from the same commit should produce
artifacts with the same version everywhere.
ref T204
Reviewers: #swift_pilot_client, kbasan
Reviewed By: #swift_pilot_client, kbasan
Subscribers: jenkins
Maniphest Tasks: T204
Differential Revision: https://dev.swift-project.org/D68
For 32 bit we still use the binary compatible MSVC 2015 prebuilt Qt binaries.
For 64 bit, we change to the MSVC 2017 prebuilt binaries.
Redistributables are in no packaged from MSVC 2017 installs.
Summary:
This change adds an automatic shared files update step during the jenkins
build. This guarantees, that we always have the latest DB data packaged
into the installers.
The updated files will be written into the source directory, so install
step will automatically pick up the updated ones.
ref T158
Reviewers: #swift_pilot_client, msutcliffe
Reviewed By: #swift_pilot_client, msutcliffe
Subscribers: jenkins
Maniphest Tasks: T158
Differential Revision: https://dev.swift-project.org/D56
By default, uploading of symbols is disabled. It will enabled for specific
release builds only.
This supersedes copying the symbol tarbal in the jenkins job.
ref T69