Commit Graph

273 Commits (8d59c0b1a3fd35027118ef34b18e61b31e5ba15a)

Author SHA1 Message Date
Ansariel 39a6735fc9 Merge branch 'main' of https://github.com/secondlife/viewer
# Conflicts:
#	.gitignore
#	autobuild.xml
#	indra/cmake/APR.cmake
#	indra/newview/CMakeLists.txt
#	indra/newview/installers/windows/installer_template.nsi
#	indra/newview/viewer_manifest.py
#	indra/test/namedtempfile.h
2023-10-26 15:49:12 +02:00
Nat Goodspeed 1570153a84 SL-18837: build.sh shouldn't even check for an installer.
We no longer package the installer before this point, and we want to upload
symbol files even so.
2023-10-04 19:40:46 -04:00
Nat Goodspeed 89191059ef SL-18837: Upload symbol file and physics pkg without installer.
build.sh logic used to test whether the installer existed and skip the
symbol-file and llphysicsextensions uploads if not. Since we now sign and
package the built viewer in a later build job, it's no longer appropriate to
gate these uploads on existence of the installer.
2023-10-04 16:54:07 -04:00
Nat Goodspeed 1684d62499 SL-19242: Remove signing and packaging from viewer_manifest.py
for Mac and Windows. That's now done by subsequent jobs in the GitHub build.
Remove workflow step to upload installers before signing and packaging jobs.

Remove from viewer_manifest.py conditionals for 32-bit Windows or Mac.

Also bump to actions/checkout@v4, per dependabot.
2023-10-03 19:02:40 -04:00
Nat Goodspeed fab7b300b9 SL-19242: Re-enable the rest of the build product uploads. 2023-09-11 15:34:14 -04:00
Nat Goodspeed 63d5d38e36 SL-18837: Stop failing build.sh if there's no installer.
This unblocks ReleaseOS builds, and also preps for SL-19242.

Streamline build.sh's Uploads section.
2023-09-08 17:24:04 -04:00
Nat Goodspeed 5bf2317bd8 SL-19243: Skip older Mac symbol upload
because it moves the xcarchive.zip file away from where we later want to post
it to GitHub.
2023-09-02 12:19:26 -04:00
Nat Goodspeed 3eea556c28 SL-19243: Post xcarchive.zip instead of separate symbols tarball.
On Mac, in the CMake USE_BUGSPLAT logic, we created both xcarchive.zip (which
is what BugSplat wants to see) and secondlife-symbols-darwin -64.tar.bz2 (which
we don't think is used for anything). The tarball was posted to codeticket --
but why? If the point is to manually re-upload to BugSplat in case of failure,
we'll do better saving xcarchive.zip to codeticket.

For SL-19243, posting xcarchive.zip directly supports the goal of breaking out
the upload to BugSplat as a separate step.

Anyway, since xcarchive.zip is a superset of the tarball, the tarball can be
recreated from the zip file, whereas the zip file can't be recreated from the
tarball without opening the .dmg installer and extracting the viewer executable.

If the xcarchive.zip file exists (that is, on Mac), post that to codeticket or
GitHub, as applicable, instead of the tarball. In fact, in the USE_BUGSPLAT
case, don't even bother creating the tarball since we're going to ignore it.

Make the new build.sh logic that insists on BUGSPLAT_USER and BUGSPLAT_PASS
conditional on BUGSPLAT_DB.
2023-09-02 11:02:23 -04:00
Nat Goodspeed bfb059d4ff SL-19243: Try harder to list contents of xcarchive.zip.
upload-mac-symbols.sh actually moves the xcarchive.zip file to /tmp, which is
why we couldn't find it when trying to list its contents after the upload.
2023-09-01 15:28:36 -04:00
Nat Goodspeed 1f6213a584 SL-19243: Try to list contents of xcarchive.zip 2023-09-01 12:58:53 -04:00
Nat Goodspeed e8cd5205e8 SL-19243: Try to run Windows BugSplat uploads as a separate GH job.
Upload a new Windows-exe artifact containing just the executable (needed by
BugSplat) separately from the artifact containing the whole NSIS installer.
This requires a new viewer_exe step output set by viewer_manifest.py.

Define viewer_channel and viewer_version as build job outputs.

Set viewer_channel in build.yaml when tag is interpreted.

Set viewer_version in build.sh at the point when it would have posted
viewer_version.txt to codeticket.

Add a post-windows-symbols job dependent on the build job that engages
secondlife/viewer-post-bugsplat-windows, which in turn engages
secondlife/post-bugsplat-windows. We keep the actual upload code in a separate
repo in case we need to modify that code before rerunning to resolve upload
errors. If we kept the upload code in the viewer repo itself, rerunning the
upload with modifications would necessarily require rerunning the viewer
build, which would defeat the purpose of SL-19243.

Because of that new upload job in build.yaml, skip Windows symbol uploads
in build.sh.

Use a simple (platform name) artifact name for metadata because of
flatten_files.py's filename collision resolution.

Use hyphens, not spaces, in remaining artifact names: apparently
download-artifact doesn't much like artifacts with spaces in their names.

Only run the release job when in fact there's a tag. Without that, we get
errors. We need not create flatten_files.py's output directory beforehand
because it will do that implicitly.
2023-08-31 15:53:56 -04:00
Nat Goodspeed b449667d8d SL-19854: Ensure BugSplat credentials are exported. 2023-07-18 16:19:19 -04:00
Nat Goodspeed 479fa3e196 SL-18837: Conditionally upload llphysicsextensions-tpv package
but only when building viewer-private.

Also re-fix SL-19942 workaround by deleting AUTOBUILD_CONFIGURATION before
trying to build llphysicsextensions-tpv.
2023-07-18 09:56:11 -04:00
Nat Goodspeed 2b1a3cf9cd SL-18837: Use multi-line GitHub outputs to upload artifacts.
Having observed installer upload failures, I discovered the warning in
actions/upload-artifact/README.md about multiple concurrent jobs trying to
post the same pathname to the same artifact name. Try to disambiguate
artifacts not only for different platforms, but for different jobs running on
the same platform.

This change also reflects my understanding that an artifact is (effectively) a
distinct zip file that can contain multiple uploaded files. Because we'll want
to download metadata without having to download enormous installers, create a
separate metadata artifact per platform. Similarly, symbol files can get large:
use a third distinct artifact for symbol files.

But with those artifacts defined, leverage actions/upload-artifact's ability
to upload multiple paths to the same artifact. In build.sh, define bash arrays
installer, metadata, symbolfile and set up so that, on exit, each is written
to a GITHUB_OUTPUT variable with the corresponding name. This involves a
little magic to get macOS bash 3 to indirectly access an array.

These multi-line output variables are then used to drive the upload-artifact
step for each of the defined artifacts.
2023-07-07 06:38:03 -04:00
Nat Goodspeed ca5f3e3b35 SL-18837: Add addoutput, addarrayoutput functions to build.sh
and use them instead of codeticket addoutput to pass GitHub xxx_name, xxx_path
outputs to build.yaml.

Add upload steps to build.yaml to try to upload build products identified in
build.sh.
2023-07-06 17:29:40 -04:00
Nat Goodspeed 41d937d2c0 SL-18837: Don't try to engage git-hooks explicitly at all. 2023-06-28 17:15:06 -04:00
Nat Goodspeed ab6fd15d61 SL-18837: git-hooks no longer has requirements.txt? 2023-06-28 17:08:04 -04:00
Nat Goodspeed 853cf3928c SL-18837: Don't fetch (unmigrated) build-secrets, use GH secrets. 2023-06-28 16:44:03 -04:00
Ansariel c2f8517118 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-11-16 21:01:05 +01:00
Dave Houlton 353329c2c2 DRTVWR-546 merge in master v6.5.1 2021-11-16 11:44:55 -07:00
Ansariel 171c00d0bb Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-10-28 12:48:13 +02:00
Dave Houlton 6b2e40157b Merge branch 'master' v6.4.24 into DRTVWR-546 2021-10-13 16:41:24 -06:00
Beq 0911cae538 Initial merge of DRTVWR-541 into FS
Fixup a few niggly mistakes from the LL work
Add a couple of missing macros
replace all FS tracy macros with the corresponding LL ones.
2021-10-09 20:18:14 +01:00
Nat Goodspeed 3e12a97a7f SL-16040: Honor autobuild_{configure,build}_parameters variables.
The generic build.sh script honors these environment variables to specify
parameters to the autobuild configure and autobuild build steps, respectively.
Support them in the viewer-specific build.sh too.

In the generic build.sh, autobuild_configure_parameters allows specifying
command-line switches either for autobuild or, following --, for the
underlying tool (in our case, CMake). In order to support that variable the
same way here, we insert -- (as before) when autobuild_configure_parameters is
unset or empty, since the rest of the switches *we* specify are for CMake.

That means that, as with the generic build.sh, a non-empty
autobuild_configure_parameters override must precede any switches intended for
CMake with the -- separator.
2021-09-28 16:40:33 -04:00
Ansariel 7cdd463954 Merge branch 'DRTVWR-545-maint-mix' of https://bitbucket.org/lindenlab/viewer 2021-09-20 13:16:41 +02:00
Brad Payne (Vir Linden) e3c256bdaf SL-15572 - retry logic for codeticket.py commands 2021-09-09 23:07:15 +03:00
Ansariel e3e2904847 Merge branch 'DRTVWR-520-apple-notarization' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	autobuild.xml
#	indra/newview/CMakeLists.txt
#	indra/newview/viewer_manifest.py
2021-08-24 14:57:18 +02:00
Andrey Lihatskiy 97f09de4fc Merge branch 'master' into DRTVWR-520-apple-notarization
# Conflicts:
#	autobuild.xml
#	build.sh
#	indra/CMakeLists.txt
#	indra/newview/CMakeLists.txt
#	indra/newview/llappviewermacosx.cpp
#	indra/newview/llappviewerwin32.h
#	indra/newview/viewer_manifest.py
#	indra/win_crash_logger/llcrashloggerwindows.cpp
2021-08-12 23:13:12 +03:00
Ansariel 7ff7317779 Merge branch 'DRTVWR-521-maint' of https://bitbucket.org/lindenlab/viewer 2021-08-02 09:35:11 +02:00
Andrey Lihatskiy 6c8e6f033b Merge branch 'master' into DRTVWR-521-maint
# Conflicts:
#	autobuild.xml
#	indra/llcommon/llerror.cpp
#	indra/llui/llnotifications.h
#	indra/newview/llappviewer.cpp
#	indra/newview/llappviewermacosx.cpp
2021-07-20 02:48:05 +03:00
Brad Payne (Vir Linden) 4d15f18d92 SL-15572 - retry logic for codeticket.py commands 2021-07-13 21:40:00 +01:00
Brad Payne (Vir Linden) 502afc5ed2 SL-15572 - shorter sleeps in build.sh 2021-07-13 18:20:56 +01:00
Brad Payne (Vir Linden) 3d57b7946a SL-15572 - more sleeps in build.sh 2021-07-13 16:19:35 +01:00
Brad Payne (Vir Linden) e0eb9b96f7 SL-15572 - Possible fix for codeticket upload issue 2021-07-13 14:55:11 +01:00
Nat Goodspeed 6460b7ac41 SL-15500: Only run coding_policy_git.py on Mac
since it fails on Windows due to some problem in the underlying library.

Also wrap the coding policy checks in a TC log subsection.
2021-06-30 09:48:02 -04:00
Nat Goodspeed d2de2f9d25 SL-15500: Always have to work around Windows path incompatibilities. 2021-06-30 08:11:30 -04:00
Nat Goodspeed 0276a32569 SL-15500: Use plain pip install, not pip_install shell function.
pip_install doesn't know about the '-r requirements.txt' feature.
2021-06-29 18:04:03 -04:00
Nat Goodspeed ab185263fa SL-15500: Install git-hooks (and requirements) and run policy check
on the entire current (branch of the) viewer repo before starting any build.
2021-06-29 17:45:13 -04:00
Ansariel 9e415cdbb2 Merge branch 'DRTVWR-516-maint' of https://bitbucket.org/lindenlab/viewer 2021-05-25 11:03:48 +02:00
Nat Goodspeed fd1545197a SL-10297: Merge branch 'sl-10297-oz' into sl-10297.
Bring in Oz's tweaks to the way BugSplat is engaged and tested, plus a few
other miscellaneous goodies.
2021-05-12 13:56:19 -04:00
Ansariel 95b4dd072e Merge branch 'DRTVWR-513-maint' of https://bitbucket.org/lindenlab/viewer 2020-10-15 11:37:14 +02:00
Andrey Kleshchev 8803157a21 SL-13953 Builds should fail if symbols upload failed 2020-10-05 20:56:26 +03:00
Oz Linden a9d271c5a2 SL-10297 merged 6.4.7 2020-08-24 13:11:07 -04:00
Oz Linden 86009f885e SL-10297: merge up to master at 6.4.3 2020-06-15 15:29:04 -04:00
Nicky Dasmijn a4aff377e6 Merge branch 'master' into fs-vs2017 2020-04-29 20:02:19 +02:00
Anchor b09770946a [DRTVWR-476] - disable dbghelp.h warnings 2020-03-25 18:39:20 -04:00
Anchor 636989c139 [DRTVWR-476] - target windows 10 2020-03-25 18:39:20 -04:00
Nat Goodspeed e849dfb9fa DRTVWR-476: Update Copy3rdPartyLibs.cmake for VS 2017 version.
Also, on Windows, put build output into
build-vc$AUTOBUILD_VSVER-$AUTOBUILD_ADDRSIZE instead of hard-coding
build-vc120-$AUTOBUILD_ADDRSIZE.
2020-03-25 16:08:43 -04:00
Ansariel c8e0721bf5 Merge DRTVWR-496 2020-01-28 18:18:12 +01:00
Oz Linden 2c81050b68 SL-12615: Support a branch-specific setting for viewer_channel in TeamCity builds 2020-01-28 18:50:37 +02:00