Skip to content

Unify how we pass and choose pools#71584

Merged
dibarbet merged 1 commit intomainfrom
dev/dibarbet/unify_pools
Jan 16, 2024
Merged

Unify how we pass and choose pools#71584
dibarbet merged 1 commit intomainfrom
dev/dibarbet/unify_pools

Conversation

@dibarbet
Copy link
Member

@dibarbet dibarbet commented Jan 11, 2024

Consolidates our pool definitions so its easier to change which pool we're using.

Also switches us to the .net eng managed pools (which have higher parallelism and currently can provide machines faster).

@ghost ghost added Area-Infrastructure untriaged Issues and PRs which have not yet been triaged by a lead labels Jan 11, 2024
@dibarbet dibarbet force-pushed the dev/dibarbet/unify_pools branch from a5936de to 3c74204 Compare January 11, 2024 18:52
@dibarbet dibarbet force-pushed the dev/dibarbet/unify_pools branch from 3c74204 to 10670d8 Compare January 11, 2024 21:05
@dibarbet dibarbet marked this pull request as ready for review January 11, 2024 22:39
@dibarbet dibarbet requested a review from a team as a code owner January 11, 2024 22:39
@dibarbet dibarbet requested a review from jaredpar January 11, 2024 22:40
${{ else }}:
value: OSX.13.Amd64

parameters:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why did you use paramaters here and not just add onto variables? Usually I think of parameters in a top level YML as items we pass during manually queueing. This pipeline isn't manually queued that I'm aware of though.

Copy link
Member Author

@dibarbet dibarbet Jan 12, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't believe you can have object types variables - using parameters allows me to just pass around a single pool parameter, instead of having different sets of variables to set different fields in the pool (like we had to do before).

See https://learn.microsoft.com/en-us/azure/devops/pipelines/process/variables?view=azure-devops&tabs=yaml%2Cbatch

All variables are strings and are mutable.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed it is only parameters that can have complex data structures like objects. YAML always amazes me.

Note: variables can be marked as non-mutable now

variables: 
- name: key
   value: value
   readonly: true

@dibarbet
Copy link
Member Author

@jaredpar anything else on this?

jobs:
- job: ${{ parameters.jobName }}
pool:
${{ if ne(parameters.queueName, '') }}:
Copy link
Member Author

@dibarbet dibarbet Jan 16, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is the part where using a single pool parameter is much nicer. Don't need conditional definitions here and 3 separate arguments.

${{ else }}:
value: OSX.13.Amd64

parameters:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed it is only parameters that can have complex data structures like objects. YAML always amazes me.

Note: variables can be marked as non-mutable now

variables: 
- name: key
   value: value
   readonly: true

@dibarbet dibarbet merged commit 1c88444 into main Jan 16, 2024
@dibarbet dibarbet deleted the dev/dibarbet/unify_pools branch January 16, 2024 19:07
@ghost ghost added this to the Next milestone Jan 16, 2024
@Cosifne Cosifne modified the milestones: Next, 17.10 P1 Jan 30, 2024
JoeRobich added a commit that referenced this pull request Nov 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area-Infrastructure untriaged Issues and PRs which have not yet been triaged by a lead

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants