Commit graph

96 commits

Author SHA1 Message Date
Michael Yanni
b1274e228e Does this work?? 2024-03-19 09:59:38 -07:00
Michael Yanni
3ac27e46a8 This should work. 2024-03-18 13:42:22 -07:00
Michael Yanni
ea4af445c7 Trying this. 2024-03-18 13:26:42 -07:00
Michael Yanni
e0359ecd63 Fix name again. 2024-03-18 11:46:00 -07:00
Michael Yanni
1fbb219362 Fix name. 2024-03-18 11:44:24 -07:00
Michael Yanni
67c44e5ae3 Checking this. 2024-03-18 11:42:35 -07:00
Michael Yanni
58bf2fb4b7 Testing conditions. 2024-03-18 11:36:01 -07:00
Michael Yanni
41909be1a9 Fixed bugged indentation. 2024-03-18 11:33:58 -07:00
Michael Yanni
8794ac0482 Fix formatting. 2024-03-18 11:32:08 -07:00
Michael Yanni
4869ad51d9 Does this work without the else? 2024-03-18 11:29:31 -07:00
Michael Yanni
130b5dcaa2 Trying this real quick. 2024-03-18 11:24:31 -07:00
Michael Yanni
9a00de85df Let's see if this works. 2024-03-18 11:19:58 -07:00
Michael Yanni
d85e08bd91 Realized I wrote the if-else syntax improperly. 2024-03-18 11:14:28 -07:00
Michael Yanni
f317ecf7e1 Let's see if this does anything. 2024-03-15 15:55:51 -07:00
Michael Yanni
e1872332f6 Trying parameter for job template path. 2024-03-15 15:32:06 -07:00
Michael Yanni
b0646d26ef Testing using different variable syntax for condition. 2024-03-15 15:26:44 -07:00
Michael Yanni
b8641cb62a Failed evaluation allows me to not build. Commenting out conditions for now. 2024-03-15 14:54:53 -07:00
Michael Yanni
555a9b0faa Adding task to output all environment variables. Commenting out logging publish for now. 2024-03-15 14:45:23 -07:00
Michael Yanni
208e01ebac Forgot to use the correct notation for parameter values. 2024-03-15 14:40:26 -07:00
Michael Yanni
6be66ce388 Trying to conjure some wizard magic using expressions. 2024-03-15 14:39:16 -07:00
Michael Yanni
ef08bffd36 Convert variable to parameter. 2024-03-15 14:33:40 -07:00
Michael Yanni
d6ad8bfb4b Trying workaround for publish task name detection. 2024-03-15 14:32:19 -07:00
Michael Yanni
679eeef196 Allowed internal PRs to use the Unofficial templates. Removed component governance settings as they are likely not necessary. Switched the PR pipeline to use the build.yml. Updated build.yml to have conditional logic for the non-1ES PT PR pipeline. 2024-03-15 14:25:55 -07:00
Michael Yanni
10c4260fe8 Use the object syntax for containers again. Use the 1es images for all (except macOS) since the 1es images should all work with 1ES PT. 2024-03-14 10:03:43 -07:00
Michael Yanni
dab13ec5ec Readded public vs internal statements since removing them doesn't matter. Trying 1es-ubuntu-2204 since the other is not 1ES PT compatible. 2024-03-14 09:46:32 -07:00
Michael Yanni
2e3dc95383 Use non-pt images. 2024-03-14 09:28:44 -07:00
Michael Yanni
9504adc9da Re-added PR-specific logic since this pipeline could be used for internal PRs. Reverted adjustments specific to public logic statements. Removed commented code. 2024-03-13 11:46:44 -07:00
Michael Yanni
9dbffb5ec3 Trying to pass the containers directly to the template. 2024-03-12 11:20:55 -07:00
Michael Yanni
d159964710 Attempting to use container aliases. Switched back to ubuntu image. 2024-03-12 10:51:51 -07:00
Michael Yanni
4af3022c82 Trying this 1es-mariner-2-pt image for Linux. 2024-03-11 16:05:46 -07:00
Michael Yanni
4657a65be1 Go back to -pt images. Define the linux container used differently. 2024-03-11 15:51:48 -07:00
Michael Yanni
7439c0c5c6 Trying not -pt agent images. Trying to turn off component governance. 2024-03-11 15:19:58 -07:00
Michael Yanni
d90fa12bf8 Trying the 2004 image of Ubuntu instead of the 2204 image. 2024-03-08 15:55:16 -08:00
Michael Yanni
a215961e7e Using Microsoft hosted pool for the macOS agent. 2024-03-08 14:08:32 -08:00
Michael Yanni
08038a8205 Internal-only condition cleanup for some variables. Fixed another Windows agent to PT agent. Fixed Ubuntu agent to PT Ubuntu agent. 2024-03-08 13:58:01 -08:00
Michael Yanni
50803471c7 Replaced PublishBuildArtifacts with 1ES.PublishBuildArtifacts. 2024-03-08 13:27:50 -08:00
Michael Yanni
421270b99b Made the official CI pipeline use 1ES templates from Arcade. Created separate build-pr.yml for PR pipeline to use. Modified CI and normal build.yml to no longer have public conditional logic. Changed to using PT image for migration testing. Updated localization.yml to use the new templates. 2024-03-08 12:38:29 -08:00
Matt Mitchell
156efab2e4
Use native tools and update VS (#18525) 2024-02-07 08:38:21 +01:00
Marc Paine
0110f59fe3
Update to the automated build pool variables (#15438)
Co-authored-by: Michael Simons <msimons@microsoft.com>
Co-authored-by: Jason Zhai <v-wuzhai@microsoft.com>
2023-02-08 11:47:59 -08:00
Přemek Vysoký
ce1921c17d
Run VMR's pipelines from the VMR directly (#15124) 2022-12-15 09:33:09 +01:00
Přemek Vysoký
af14110139
Use relative paths when referencing YAML templates (#15086) 2022-12-05 18:27:45 +01:00
Jason Zhai
15bbb4c088 Merge branch 'release/7.0.1xx' 2022-09-28 19:50:17 -07:00
Matt Mitchell
982a120d0e
Remove VS nupkg push (#14611)
Signing happens at the end of the build now, even with in-build signing. The staging pipeline pushes the nupkgs. This step is not necessary, and pushes unsigned nupkgs.
2022-09-28 15:54:18 -04:00
Matt Mitchell
8dc41755cb
Switch repo to use native AzDO container support (#14541)
* Switch repo to use native AzDO container support

This is a major refactor of the YAML used by the installer repo. The goal is to utilize the native container support that AzDO provides, rather than building containers on the fly and issuing commands using custom infrastructure. To do this, the YAML requires a bit of a refactor. The matrix strategy approach used by the repo to build a ton of different OS's does not work with containers, because a matrix strategy only changes the variables available to each build command. It cannot change the AzDO host environment. In order to resolve this, I refactored build.yml to take and use optional container names. In the process of doing this, I discovered a number of other things about the old YAML that just happened to 'accidentally' work and fixed them or did general cleanup. Including:

- This construct, used in build.yml, does not work as you might expect. If the parameter is not declared as a boolean (or not declared at all), this evaluates to "does this parameter exist", not "is it true":

    ```
    ${{ if parameters.pgoInstrument }}:
    ```
- I fully specified all the parameters and their types to avoid issues in the future.
- Build pool selection was moved to build.yml
- Removed some unused parameters.
- There was a **very** subtle indentation change here: 762d2966ee/.vsts-ci.yml (L275-L281). This meant that this leg ran in both PR and official builds. I have no idea whether this was the intention or not, but I kept it this way and reorganized the file.

**One change of note:** One of the upsides of the original matrix based approach is that job dependencies are simple. The jobs generated by the matrix are referred to in `dependsOn` lists only by the original job that contains the matrix. That keeps the dependsOn list small even if the number of jobs generated is large. Installer has a large set of independently addressable jobs now. Normally, we would solve this by using the arcade jobs template. The jobs template takes a set of jobs and automatically adds dependsOn for the publishing jobs. BUT, AzDO does not allow templates to be passed as parameters to other templates. This would mean that you couldn't use the build.yml template in conjunction with the jobs template and would have to list all the installer jobs as dependencies. This list would be hard to keep up to date. To avoid this, I used a new feature of publishing (`publishAssetsImmediately`) which uses the Publish To Build Asset Registry job to do the actual publishing call, and put it in a separate phase, then eliminated the post-build.yml call. This means that the publishing stage depends on all jobs in the build stage, and does not need to address them individually. Eliminating the post-build.yml stage may seem odd, but this is what actually happens when `publishAssetsImmediately` is set to true anyway.
2022-09-27 11:15:12 -07:00
Matt Mitchell
9994b20baa
Changes for internal runtime build support for .NET 6 (#11422)
- Cherry pick the internal runtime download changes over
- Cherry pick changes to the arcade SB template over (making the next update a noop and unblocking P7+)
- Hoist out the variable groups and parameters needed for the internal download to the top level yaml file.
- Remove the old DownloadFile task and replace this with the Arcade version. Specifically this allows us to remove
  set/use of the DOTNETCLIMSRC_READ_SAS_TOKEN environment variable and instead rely on that task's ability to decode and
  use a base64 encoded SAS token. The reason for the environment variable usage before was that the
  non-encoded SAS token was getting mangled by msbuild/bash/etc. on non-Windows OSs.
- Update the source build tarball template with support for internal runtimes

Update to source build template
2021-08-06 13:54:33 -07:00
Matt Mitchell
e58843bebc
Remove Copy Blobs To Latest functionality and clean up some publishing (#10773)
- The stage has been subsumed by the aka.ms functionality and now can be removed.
- Clean up dead properties and functionality no longer needed because of it.
- Removing publishing of nupkg files as blobs. This used to be useful before because we often needed to get at the nupkgs in a flat, easy to copy format for pushing to the VS feed. But now the staging pipeline takes care of this, and moreover the use of post-build signing means that these files are not useful straight out of the build anyway. This should reduce publishing time and some post-build signing time.

Remove nupkg install in publishing.props
2021-05-26 15:13:19 -07:00
Matt Mitchell
f1b8e73e57
Disable VS package push when post build sign is true (#10189)
When post build signing is true, don't push VS packages. These unsigned packages will not successfully insert into Visual Studio
2021-04-09 11:34:12 -07:00
Andy Gocke
a98263b0da
Add support for building a PGO installer copy (#9877)
Uses the uninstrumented profiling PGO bits from the runtime when the
'-pgoinstrument' flag is set.
2021-03-24 01:02:14 -07:00
Steve MacLean
cfa5bc446d
Enable Apple Silicon SDK builds (#8990)
* Enable building osx-arm64
* Use osx-x64 NetStandardTargetingPack for osx-arm64
* Update readme for osx-arm64 SDK
2020-11-18 15:12:39 -05:00
juanam
d3989d63af Condition VS.Redist.* to PostBuildSign 2020-09-11 10:58:51 -07:00