Commit graph

74 commits

Author SHA1 Message Date
Michael Yanni
e2cd442a8f
Fix indentation for log copy (#19122) 2024-03-21 07:40:20 +01: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
Alexander Köplinger
ec57fb5a22
Use PublishTestResults@2 task (#7321)
The build produces warnings about using the old task:

```
##[warning]Task 'PublishTestResults' (1.0.45) is using deprecated task execution handler. The task should use the supported task-lib: https://aka.ms/tasklib
```
2020-05-15 17:08:26 +02:00
Matt Mitchell
a03aed0acc
Remove set build info and do not run tests in official builds (#7286)
* Remoe unneeded parameters from build
Removes a bunch of old unused parameters and adds _AdditionalParameters to the whole matrix so AzDO doesn't throw out noisy warnings

* Do not run tests in official builds and cleanup build infra a bit
- Do not run the tests in official builds (build time improvement)
- Remove setbuildinfo.* and make parameters explicit.
- Remove a bunch of unused parameters
2020-04-27 08:53:02 -07:00
Daniel Plaisted
b1e4f4033d Disable arcade artifact and test result publishing 2020-02-12 13:33:55 -08:00
Sarah Oslund
88823e6e6c Merge branch 'release/3.1.2xx' into Merging3.1.2AndMaster 2020-01-21 11:18:35 -08:00
Livar Cunha
72f288ab58 Switching from using commit height for versioning to using Arcade's scheme. 2019-12-20 13:19:56 -08:00
DotNet Bot
cf07661867 Merge pull request 4761 from darc-internal/release/3.1.1xx-a3f652c4-54ef-4301-a394-b9bccc5859ac into internal/release/3.1.1xx 2019-12-10 17:16:42 +00:00
Divino César
624ec5e7b3 Augment DownloadFile task to make it able to download from public/private location (#5414)
* Patch to DownloadFile: retries + only use PrivateUri on 404 errors.

* Refactor PrivateURL in GenerateLayout.targets

* Address PR feedback.

* Addressing PR feedback.

* PR feedback

* PR feedback. Bug fix.

* Removing test related typo

* Fixup blob replacement

* Fixup blob replacement

* Broaden usage of read sas token to include PRs
2019-12-07 15:05:24 -08:00
Nick Guerrera
9525784940
Pass timeout along (#5302) 2019-10-23 11:08:02 -07:00
Divino César
57c03e2caf Download blobs from MSRC storage & Add CredProvider to Dockerfiles (#4753)
* Download core-setup files from MSRC storage

Add support for downloading core-setup files from an authenticated endpoint

* Update GenerateLayout.targets

* Adding changes to pass SAS token around

* Add credential provider to Dockerfile's

* Update after PR feedback

* Add comments about approach

* Copy NuGet config variables
2019-10-01 13:22:33 -07:00
riarenas
c84ef86d91 Changes for core-sdk to move to yaml stages 2019-09-12 13:19:14 -07:00
Daniel Plaisted
568ce3ae52 Upload test results even if there aren't failures 2019-08-30 09:39:05 -07:00
Daniel Plaisted
9795567194 Clean workspace 2019-08-30 08:53:22 -07:00
Daniel Plaisted
4740b1c146 Always gather logs 2019-08-30 08:53:22 -07:00
jbeisner
8043ad1479 Enabling and conditioning the 'NuGetCommand' task. 2019-07-22 01:37:00 +00:00
jbeisner
8ac8b67d71 Removing the 'NuGetCommand' task. 2019-07-19 16:49:10 +00:00
jbeisner
7c5e474d16 Enabling the 'NuGetCommand' task. 2019-07-19 14:44:53 +00:00
jbeisner
a83670dd09 Removing the 'Push Visual Studio NuPkgs' step as it failed in an official buld. 2019-07-17 02:20:37 +00:00
jbeisner
69624515c4 Removing 'dead' yml; enable 'NuGetCommand' task. 2019-07-16 16:13:55 +00:00
jbeisner
70037752ac Condition the push to VS feed on OS type and architecture 2019-07-11 23:56:48 +00:00
jbeisner
389f97841a Use the permanent communication service for the VS feed in ‘dnceng’. 2019-07-09 00:37:27 +00:00
jbeisner
6d2034efa9 Repositioning the NuGet push 2019-07-02 23:34:59 +00:00
jbeisner
dde78f901f Correcting logic... 2019-07-02 22:15:10 +00:00