worker-pools.yml
author Marco Castelluccio <mcastelluccio@mozilla.com>
Tue, 07 Feb 2023 07:40:28 +0000
changeset 1658 bdfec3fd8f362a2904dd089d08bdf46ede5d3f12
parent 1657 5fab0e50e2c8bad3368bcb1c7354cc7aaece277f
permissions -rw-r--r--
Bug 1798886 - Update code-coverage bot image paths. r=releng-reviewers,jcristau Differential Revision: https://phabricator.services.mozilla.com/D169013

---
# This file contains definitions for the worker pools related to Firefox CI.
#
# Each worker pool is named by its <provisionerId>/<workerType> pair, each with
# the following structure (matching that for taskcluster-worker-manager):
#
# - `description` -- description of this workerType
# - `owner` -- owner of this workerType
# - `email_on_error` -- if true, email the owner on provisioning errors
# - `provider_id` -- the worker-manager provider for this worker pool
# - `config` -- the configuration for this worker pool, specific to the provider type
#
# A top-level `image` property in the config will be interpreted by ci-configuration and
# translated into a region[..].launchSpec.ImageId value based on worker-pools.yml.
worker-defaults:
  lifecycle:
    registrationTimeout: 1800
    reregistrationTimeout: 345600
  worker-config:
    by-implementation:
      docker-worker:
        shutdown:
          enabled: true
          afterIdleSeconds: 900
        deviceManagement:
          hostSharedMemory: {enabled: false}
          kvm: {enabled: false}
        artifacts:
          # FIXME: remove after workers are updated to >= 45.0.1
          skipCompressionExtensions:
            - .7z
            - .bz2
            - .deb
            - .dmg
            - .flv
            - .gif
            - .gz
            - .jpeg
            - .jpg
            - .png
            - .swf
            - .tbz
            - .tgz
            - .webp
            - .whl
            - .woff
            - .woff2
            - .xz
            - .zip
            - .zst
            - lz4
      generic-worker/windows:
        genericWorker:
          config:
            idleTimeoutSecs: 90
            cachesDir: Z:\caches
            cleanUpTaskDirs: true
            deploymentId: f37dd7ee1cae
            disableReboots: false
            downloadsDir: Z:\downloads
            ed25519SigningKeyLocation: C:\generic-worker\ed25519-private.key
            livelogExecutable: C:\generic-worker\livelog.exe
            livelogPUTPort: 60022
            numberOfTasksToRun: 0
            runAfterUserCreation: C:\generic-worker\task-user-init.cmd
            runTasksAsCurrentUser: false
            sentryProject: generic-worker
            shutdownMachineOnIdle: true
            shutdownMachineOnInternalError: true
            taskclusterProxyExecutable: C:\generic-worker\taskcluster-proxy.exe
            taskclusterProxyPort: 80
            tasksDir: Z:\
            wstAudience: firefoxcitc
      generic-worker/worker-runner-windows:
        genericWorker:
          config:
            cachesDir: Z:\caches
            cleanUpTaskDirs: true
            disableReboots: false
            downloadsDir: Z:\downloads
            livelogExecutable: C:\generic-worker\livelog.exe
            ed25519SigningKeyLocation: C:\generic-worker\ed25519-private.key
            idleTimeoutSecs: 960
            numberOfTasksToRun: 0
            runAfterUserCreation: C:\generic-worker\task-user-init.cmd
            runTasksAsCurrentUser: false
            sentryProject: generic-worker
            shutdownMachineOnIdle: true
            shutdownMachineOnInternalError: true
            taskclusterProxyExecutable: C:\generic-worker\taskcluster-proxy.exe
            taskclusterProxyPort: 80
            tasksDir: Z:\
            wstAudience: firefoxcitc
      generic-worker/occ-8047eee:
        genericWorker:
          config:
            cachesDir: Z:\caches
            cleanUpTaskDirs: true
            deploymentId: 8047eee
            disableReboots: false
            downloadsDir: Z:\downloads
            livelogExecutable: C:\generic-worker\livelog.exe
            ed25519SigningKeyLocation: C:\generic-worker\ed25519-private.key
            idleTimeoutSecs: 300
            numberOfTasksToRun: 0
            runAfterUserCreation: C:\generic-worker\task-user-init.cmd
            runTasksAsCurrentUser: false
            sentryProject: generic-worker
            shutdownMachineOnIdle: true
            shutdownMachineOnInternalError: true
            taskclusterProxyExecutable: C:\generic-worker\taskcluster-proxy.exe
            taskclusterProxyPort: 80
            tasksDir: Z:\
            wstAudience: firefoxcitc
      generic-worker/windows-nss:
        genericWorker:
          config:
            idleTimeoutSecs: 90
            checkForNewDeploymentEverySecs: 120
            cleanUpTaskDirs: true
            ed25519SigningKeyLocation: C:\generic-worker\generic-worker-ed25519-signing-key.key
            livelogExecutable: C:\generic-worker\livelog.exe
            sentryProject: generic-worker
            shutdownMachineOnInternalError: false
            taskclusterProxyExecutable: C:\generic-worker\taskcluster-proxy.exe
            wstAudience: firefoxcitc

pools:
  - pool_id: infra/build-decision
    description: Worker for firefox-ci automation.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: fxci-level1-gcp
    config:
      minCapacity: 1
      maxCapacity: 4
      regions: [us-central1, us-west1]
      image: monopacker-docker-worker-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - &persistent-disk-75
              autoDelete: true
              boot: true
              initializeParams:
                diskSizeGb: 75
                sourceImage: <image>
              type: PERSISTENT
            - &scratch-disk
              autoDelete: true
              initializeParams:
                diskType: diskTypes/local-ssd
              type: SCRATCH
              interface: NVME
          machine_type: n2-standard-2
          capacityPerInstance: 8
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: '{pool-group}/b-linux'
    description: Worker for gecko-based automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: kaios-1
      - pool-group: kaios-2
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      maxCapacity:
        by-pool-group:
          gecko-.*: 1000
          comm-.*: 200
          kaios-.*: 10
      instance_types:
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: c5d.4xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
          utility: 2
        - instanceType: m5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: c5n.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: m5d.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: m5n.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: m5dn.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
  # Temporary entry to test out new monopacker images that will replace the
  # existing b-linux ones: https://bugzilla.mozilla.org/show_bug.cgi?id=1637302
  - pool_id: gecko-1/b-linux-alpha
    description: Worker for gecko-based automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: monopacker-docker-worker-current
      maxCapacity: 20
      worker-config:
        deviceManagement:
          loopbackAudio: {enabled: false}
          loopbackVideo: {enabled: false}
      instance_types:
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: c5d.4xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
          utility: 2
        - instanceType: m5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
  - pool_id: gecko-1/b-linux-perf
    description: Worker for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      maxCapacity: 20
      instance_types:
        - instanceType: c5d.4xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
          utility: 2
  - pool_id: gecko-1/b-linux-aws
    description: Worker for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      maxCapacity: 50
      instance_types:
        - instanceType: c5d.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
  - pool_id: gecko-1/b-linux-experiment
    description: Worker for Firefox automation experiment
    owner: glandium@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-west-2]
      image: docker-worker-hvm-builder-current
      maxCapacity: 6
      instance_types:
        - instanceType: c5d.9xlarge
          capacityPerInstance: 3
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
  - pool_id: '{pool-group}/b-linux-gcp'
    description: Worker for Firefox automation.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: app-services-1
      - pool-group: app-services-3
        chain-of-trust: trusted
      - pool-group: mozillaonline-1
      - pool-group: mozillaonline-3
        chain-of-trust: trusted
    provider_id:
      by-chain-of-trust:
        trusted: fxci-level3-gcp
        default: fxci-level1-gcp
    config:
      minCapacity: 0
      maxCapacity:
        by-pool-group:
          gecko-.*: 1000
          comm-.*: 300
          app-services-1: 50
          app-services-3: 100
          mozillaonline-.*: 10
          default: 100
      regions: [us-central1, us-west1]
      image:
        by-chain-of-trust:
          trusted: monopacker-docker-worker-trusted-current-gcp
          default: monopacker-docker-worker-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - &persistent-disk-20
              autoDelete: true
              boot: true
              initializeParams:
                diskSizeGb: 20
                sourceImage: <image>
              type: PERSISTENT
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
          machine_type: n2-custom-16-73728
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: '{pool-group}/b-linux-gcp'
    description: Worker for Firefox automation.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    variants:
      - pool-group: glean-1
      - pool-group: glean-3
        chain-of-trust: trusted
      - pool-group: mobile-1
      - pool-group: mobile-3
        chain-of-trust: trusted
      - pool-group: mozillavpn-1
      - pool-group: mozillavpn-3
        chain-of-trust: trusted
      - pool-group: adhoc-1
      - pool-group: adhoc-3
        chain-of-trust: trusted
      - pool-group: scriptworker-1
      - pool-group: scriptworker-3
        chain-of-trust: trusted
      - pool-group: xpi-1
      - pool-group: xpi-3
        chain-of-trust: trusted
      - pool-group: releng-1
      - pool-group: releng-3
        chain-of-trust: trusted
    provider_id:
      by-chain-of-trust:
        trusted: fxci-level3-gcp
        default: fxci-level1-gcp
    config:
      minCapacity:
        by-pool-group:
          glean-.*: 2
          default: 0
      maxCapacity:
        by-pool-group:
          mobile-.*: 50
          mozillavpn-.*: 10
          default: 100
      regions: [us-central1, us-west1]
      image:
        by-chain-of-trust:
          trusted: monopacker-docker-worker-trusted-current-gcp
          default: monopacker-docker-worker-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-20
            - *scratch-disk
          machine_type: n2-standard-4
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: '{pool-group}/b-linux-large-gcp'
    description: Worker for Firefox automation.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: mozillavpn-1
      - pool-group: mozillavpn-3
        chain-of-trust: trusted
    provider_id:
      by-chain-of-trust:
        trusted: fxci-level3-gcp
        default: fxci-level1-gcp
    config:
      minCapacity: 0
      maxCapacity:
        by-pool-group:
          gecko-.*: 1000
          comm-.*: 20
          default: 10
      regions: [us-central1, us-west1]
      image:
        by-chain-of-trust:
          trusted: monopacker-docker-worker-trusted-current-gcp
          default: monopacker-docker-worker-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-20
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
          machine_type: n2-custom-32-73728
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: '{pool-group}/b-linux-large-gcp'
    description: Worker for Firefox automation.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    variants:
      - pool-group: mobile-1
      - pool-group: mobile-3
        chain-of-trust: trusted
    provider_id:
      by-chain-of-trust:
        trusted: fxci-level3-gcp
        default: fxci-level1-gcp
    config:
      minCapacity: 0
      maxCapacity:
        by-pool-group:
          mobile-1: 50
          mobile-3: 100
          default: 10
      regions: [us-central1, us-west1]
      image:
        by-chain-of-trust:
          trusted: monopacker-docker-worker-trusted-current-gcp
          default: monopacker-docker-worker-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-20
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
          machine_type: n2-standard-8
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: '{pool-group}/b-linux-xlarge-gcp'
    description: Worker for Firefox automation.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: mobile-1
      - pool-group: mobile-3
        chain-of-trust: trusted
    provider_id:
      by-chain-of-trust:
        trusted: fxci-level3-gcp
        default: fxci-level1-gcp
    config:
      minCapacity: 0
      maxCapacity:
        by-pool-group:
          gecko-.*: 1000
          comm-.*: 20
          mobile-.*: 100
          default: 10
      regions: [us-central1, us-west1]
      image:
        by-chain-of-trust:
          trusted: monopacker-docker-worker-trusted-current-gcp
          default: monopacker-docker-worker-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-20
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
          machine_type: n2-custom-64-102400
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: gecko-1/masterwayz-bug1806341
    description: GCP Linux image testing pool for Firefox CI Automation
    owner: fxci-gcp-testers@mozilla.com
    email_on_error: true
    provider_id: fxci-level1-gcp
    config:
      minCapacity: 0
      maxCapacity: 20
      regions: [us-central1]
      image: monopacker-docker-worker-testing-bug1806341
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          metadata:
            items:
              - key: 'startup-script'
                value: "#!/usr/bin/awk BEGIN{system(\"sed -i s/aws/google/ /etc/start-worker.yml;sed -i s'/^&/#/' /etc/rsyslog.d/*cloud*;sleep 300\")}"
              - key: 'startup-script-url'
                value: 'gs://relops/worker_setup.sh'
          disks:
            - *persistent-disk-75
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
            - *scratch-disk
          machine_type: n2-custom-16-73728
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: '{pool-group}/b-linux-large'
    description: Worker for gecko-based automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: kaios-1
      - pool-group: kaios-2
      - pool-group: mozillavpn-1
      - pool-group: mozillavpn-3
        chain-of-trust: trusted
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      maxCapacity: 10
      instance_types:
        - instanceType: c5d.9xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: m5d.12xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: m5.12xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: m4.10xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: c5.9xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: c4.8xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
  - pool_id: '{pool-group}/decision'
    description: Worker for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: kaios-1
      - pool-group: kaios-2
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      minCapacity: 0
      maxCapacity:
        by-pool-group:
          gecko-1: 40
          gecko-3: 20
          default: 4
      instance_types:
        - instanceType: c5d.xlarge
          capacityPerInstance: 2
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
            shutdown:
              afterIdleSeconds: 7200
        - instanceType: m5d.xlarge
          capacityPerInstance: 2
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
            shutdown:
              afterIdleSeconds: 7200
  - pool_id: '{pool-group}/decision-gcp'
    description: Worker for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id:
      by-chain-of-trust:
        trusted: fxci-level3-gcp
        default: fxci-level1-gcp
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: kaios-1
      - pool-group: kaios-2
    config:
      regions: [us-central1, us-west1]
      image:
        by-chain-of-trust:
          trusted: monopacker-docker-worker-trusted-current-gcp
          default: monopacker-docker-worker-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      minCapacity:
        by-pool-group:
          gecko-[13]: 5
          default: 0
      maxCapacity:
        by-pool-group:
          gecko-1: 40
          gecko-3: 20
          default: 4
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-75
            - *scratch-disk
          machine_type: n2-standard-4
          capacityPerInstance: 2
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: '{pool-group}/decision-gcp'
    description: Worker for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id:
      by-chain-of-trust:
        trusted: fxci-level3-gcp
        default: fxci-level1-gcp
    variants:
      - pool-group: adhoc-1
      - pool-group: adhoc-3
        chain-of-trust: trusted
      - pool-group: app-services-1
      - pool-group: app-services-3
        chain-of-trust: trusted
      - pool-group: glean-1
      - pool-group: glean-3
        chain-of-trust: trusted
      - pool-group: mozillavpn-1
      - pool-group: mozillavpn-3
        chain-of-trust: trusted
      - pool-group: scriptworker-1
      - pool-group: scriptworker-3
        chain-of-trust: trusted
      - pool-group: xpi-1
      - pool-group: xpi-3
        chain-of-trust: trusted
      - pool-group: ci-1
      - pool-group: ci-3
        chain-of-trust: trusted
      - pool-group: l10n-1
      - pool-group: l10n-3
        chain-of-trust: trusted
      - pool-group: relops-3
        chain-of-trust: trusted
      - pool-group: taskgraph-1
      - pool-group: taskgraph-3
        chain-of-trust: trusted
      - pool-group: releng-1
      - pool-group: releng-3
        chain-of-trust: trusted
      - pool-group: mobile-1
      - pool-group: mobile-3
        chain-of-trust: trusted
    config:
      regions: [us-central1, us-west1]
      image:
        by-chain-of-trust:
          trusted: monopacker-docker-worker-trusted-current-gcp
          default: monopacker-docker-worker-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      minCapacity: 0
      maxCapacity: 10
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-75
            - *scratch-disk
          machine_type: n2-standard-2
          capacityPerInstance: 2
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: '{pool-group}/images'
    description: 'Builds docker images; NOTE: capacity set to 1 instead of 3 (and
      downgraded to xlarge) to try to avoid [issues with dind](https://bugzilla.mozilla.org/show_bug.cgi?id=1427096)'
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: adhoc-1
      - pool-group: adhoc-3
        chain-of-trust: trusted
      - pool-group: app-services-1
      - pool-group: app-services-3
        chain-of-trust: trusted
      - pool-group: kaios-1
      - pool-group: kaios-2
      - pool-group: mozillavpn-1
      - pool-group: mozillavpn-3
        chain-of-trust: trusted
    config:
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      minCapacity: 0
      maxCapacity:
        by-pool-group:
          (comm|gecko)-.*: 30
          default: 10
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      regions: [us-east-1, us-west-1, us-west-2]
      instance_types:
        - instanceType: c5d.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
        - instanceType: m5d.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
        - instanceType: c5.xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
  - pool_id: '{pool-group}/images-gcp'
    description: 'Builds docker images; NOTE: capacity set to 1 instead of 3
      to try to avoid [issues with dind](https://bugzilla.mozilla.org/show_bug.cgi?id=1427096)'
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id:
      by-chain-of-trust:
        trusted: fxci-level3-gcp
        default: fxci-level1-gcp
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: adhoc-1
      - pool-group: adhoc-3
        chain-of-trust: trusted
      - pool-group: app-services-1
      - pool-group: app-services-3
        chain-of-trust: trusted
      - pool-group: kaios-1
      - pool-group: kaios-2
      - pool-group: mozillavpn-1
      - pool-group: mozillavpn-3
        chain-of-trust: trusted
      - pool-group: mobile-1
      - pool-group: mobile-3
        chain-of-trust: trusted
      - pool-group: glean-1
      - pool-group: glean-3
        chain-of-trust: trusted
      - pool-group: l10n-1
      - pool-group: l10n-3
        chain-of-trust: trusted
      - pool-group: xpi-1
      - pool-group: xpi-3
        chain-of-trust: trusted
      - pool-group: taskgraph-1
      - pool-group: taskgraph-3
        chain-of-trust: trusted
      - pool-group: ci-1
      - pool-group: ci-3
        chain-of-trust: trusted
      - pool-group: scriptworker-1
      - pool-group: scriptworker-3
        chain-of-trust: trusted
    config:
      image:
        by-chain-of-trust:
          trusted: monopacker-docker-worker-trusted-current-gcp
          default: monopacker-docker-worker-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      minCapacity: 0
      maxCapacity:
        by-pool-group:
          (comm|gecko)-.*: 30
          default: 10
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      regions: [us-central1, us-west1]
      instance_types:
        by-pool-group:
          mobile-.*:
            - minCpuPlatform: Intel Cascadelake
              disks:
                - *persistent-disk-75
                - *scratch-disk
                - *scratch-disk
                - *scratch-disk
                - *scratch-disk
              machine_type: n2-standard-32
              capacityPerInstance: 1
              networkInterfaces:
                - accessConfigs:
                    - type: ONE_TO_ONE_NAT
          (l10n|taskgraph|ci)-.*:
            - minCpuPlatform: Intel Cascadelake
              disks:
                - *persistent-disk-75
                - *scratch-disk
              machine_type: n2-standard-2
              capacityPerInstance: 1
              networkInterfaces:
                - accessConfigs:
                    - type: ONE_TO_ONE_NAT
          default:
            - minCpuPlatform: Intel Cascadelake
              disks:
                - *persistent-disk-75
                - *scratch-disk
              machine_type: n2-standard-4
              capacityPerInstance: 1
              networkInterfaces:
                - accessConfigs:
                    - type: ONE_TO_ONE_NAT
  - pool_id: gecko-3/b-linux-aws
    description: Worker for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      maxCapacity: 50
      security: trusted
      regions: [us-east-1, us-west-1, us-west-2]
      instance_types:
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: c5d.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
          utility: 2
        - instanceType: m5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
  - pool_id: '{pool-group}/b-linux-xlarge'
    description: Worker for gecko-based automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: gecko-1
      - pool-group: gecko-2
      - pool-group: gecko-3
        chain-of-trust: trusted
      - pool-group: comm-1
      - pool-group: comm-2
      - pool-group: comm-3
        chain-of-trust: trusted
      - pool-group: kaios-1
      - pool-group: kaios-2
      - pool-group: mobile-1
      - pool-group: mobile-3
        chain-of-trust: trusted
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      maxCapacity: 10
      instance_types:
        - instanceType: c5d.18xlarge
          utility: 1.1
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: m5d.24xlarge
          utility: 1.3
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: m5.24xlarge
          utility: 1.1
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: m4.16xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
        - instanceType: c5.18xlarge
          utility: 0.9
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
  - pool_id: '{pool-group}/t-linux-xlarge{suffix}'
    description: Worker for gecko-based automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: gecko-t
        suffix: ''
      - pool-group: gecko-3
        suffix: ''
        chain-of-trust: trusted
      - pool-group: comm-t
        suffix: ''
      - pool-group: kaios-t
        suffix: ''
        # Separate pool of workers with source checkout caches
      - pool-group: gecko-t
        suffix: -source
      - pool-group: comm-t
        suffix: -source
      - pool-group: kaios-t
        suffix: -source
    config:
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      maxCapacity:
        by-pool-group:
          gecko-t:
            by-suffix:
              '': 1500
              -source: 200
          comm-t: 10
          kaios-t: 10
          gecko-3: 10
      worker-config:
        dockerConfig: {allowPrivileged: false}
      regions: [us-east-1, us-west-1, us-west-2]
      instance_types:
        - instanceType: m5.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: m5a.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: m5d.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: '{pool-group}/t-linux-xlarge{suffix}-gcp'
    description: Worker for gecko-based automation.
    owner: release+tc-workers@mozilla.com
    variants:
      - pool-group: gecko-t
        suffix: ''
      - pool-group: gecko-3
        suffix: ''
        chain-of-trust: trusted
      - pool-group: comm-t
        suffix: ''
      - pool-group: gecko-t
        suffix: -source
      - pool-group: comm-t
        suffix: -source
    email_on_error: true
    provider_id:
      by-chain-of-trust:
        trusted: fxci-level3-gcp
        default: fxci-level1-gcp
    config:
      minCapacity: 0
      maxCapacity:
        by-pool-group:
          gecko-.*:
            by-suffix:
              '': 2500
              -source: 200
          comm-t: 10
      regions: [us-central1, us-west1]
      image:
        by-chain-of-trust:
          trusted: monopacker-docker-worker-trusted-current-gcp
          default: monopacker-docker-worker-gcp-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-75
            - *scratch-disk
          machine_type: n2-standard-4
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: 'gecko-t/t-linux-xlarge-gcp-bug1806341'
    description: Worker for gecko-based automation.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: fxci-level1-gcp
    config:
      minCapacity: 0
      maxCapacity: 50
      regions: [us-central1, us-west1]
      image: monopacker-docker-worker-gcp-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-75
            - *scratch-disk
          machine_type: n2-standard-4
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: 'gecko-t/t-linux-kvm-gcp'
    description: Worker for gecko-based automation.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: fxci-level1-gcp
    config:
      minCapacity: 0
      maxCapacity: 400
      regions: [us-central1, us-west1]
      image: monopacker-docker-worker-gcp-current
      worker-config:
        deviceManagement:
          kvm:
            enabled: true
        dockerConfig:
          allowPrivileged: true
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-75
            - *scratch-disk
            - *scratch-disk
          machine_type: n2-standard-16
          advancedMachineFeatures:
            enableNestedVirtualization: true
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: '{pool-group}/misc'
    description: Miscellaneous short, low-latency, simple tasks, shared between Gecko
      SCM levels.  Used for things like indexing tasks.  Note that disk space is limited
      (total 80GB, 9GB per task).
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: gecko-t
      - pool-group: comm-t
      - pool-group: kaios-t
    config:
      image: docker-worker-hvm-builder-current
      maxCapacity: 32
      instance_types:
        - instanceType: r5d.xlarge
          capacityPerInstance: 8
          worker-config:
            capacityManagement: {diskspaceThreshold: 9000000000}
        - instanceType: m5d.xlarge
          capacityPerInstance: 8
          worker-config:
            capacityManagement: {diskspaceThreshold: 9000000000}
        - instanceType: c5d.xlarge
          capacityPerInstance: 8
          worker-config:
            capacityManagement: {diskspaceThreshold: 9000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  # Windows Server 2012
  - pool_id: gecko-1/b-win2012
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-b-win2012-current
      maxCapacity: 512
      additional-user-data:
        workerType: gecko-1-b-win2012
      regions: [eu-central-1, us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: '{pool-group}/misc-gcp'
    description: Miscellaneous short, low-latency, simple tasks, shared between Gecko
      SCM levels.  Used for things like indexing tasks.  Note that disk space is limited
      (total 80GB, 9GB per task).
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    variants:
      - pool-group: gecko-t
      - pool-group: comm-t
      - pool-group: kaios-t
    provider_id: fxci-level1-gcp
    config:
      minCapacity: 0
      maxCapacity: 32
      regions: [us-central1, us-west1]
      image: monopacker-docker-worker-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - autoDelete: true
              boot: true
              initializeParams:
                diskSizeGb: 20
                sourceImage: <image>
              type: PERSISTENT
            - autoDelete: true
              initializeParams:
                diskType: diskTypes/local-ssd
              type: SCRATCH
              interface: NVME
            - autoDelete: true
              initializeParams:
                diskType: diskTypes/local-ssd
              type: SCRATCH
              interface: NVME
            - autoDelete: true
              initializeParams:
                diskType: diskTypes/local-ssd
              type: SCRATCH
              interface: NVME
            - autoDelete: true
              initializeParams:
                diskType: diskTypes/local-ssd
              type: SCRATCH
              interface: NVME
          machine_type: n2-standard-4
          capacityPerInstance: 8
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: gecko-1/b-win2012-beta
    description: experimental gecko builder
    owner: relops-aws-provisioning@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      image: occ-b-win2012-beta
      maxCapacity: 512
      additional-user-data:
        workerType: gecko-1-b-win2012-beta
      regions: [eu-central-1, us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: gecko-2/b-win2012
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-b-win2012-current
      maxCapacity: 512
      additional-user-data:
        workerType: gecko-2-b-win2012
      regions: [eu-central-1, us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: gecko-3/b-win2012
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-b-win2012-trusted-current
      maxCapacity: 600
      additional-user-data:
        workerType: gecko-3-b-win2012
      regions: [us-east-1, us-west-1, us-west-2]
      security: trusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: gecko-1/b-win2012-azure-alpha
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-alpha
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-1
      locations: [central-us, north-central-us]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: win_2012
        sourceRepository: ronin_puppet
        sourceOrganisation: markcor
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-1/b-win2012-azure-beta
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-beta
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-1
      locations: [central-us, north-central-us]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: win_2012
        sourceRepository: ronin_puppet
        sourceOrganisation: markcor
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-1/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-1
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 500
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-2/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-2
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 500
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: clouds_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-3/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure_trusted
    config:
      image: ronin-b3-windows2012-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-3
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 500
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: comm-1/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: comm-1
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: comm-2/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: comm-2
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: comm-3/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure_trusted
    config:
      image: ronin-b3-windows2012-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: comm-3
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: mozillavpn-1/masterwayz-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-bug1801167
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: vpn-1
      locations: [central-us]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: mozillavpn-1/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-vs-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: vpn-1
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: mozillavpn-3/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure_trusted
    config:
      image: ronin-b3-windows2012-vs-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: vpn-3
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: mozillavpn-1/b-win2012-azure-alpha
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-vs-alpha
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: vpn-1
      locations: [central-us, north-central-us]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: nss-1/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-vs-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: nss-1
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: nss-3/b-win2012-azure
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure_trusted
    config:
      image: ronin-b3-windows2012-vs-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: nss-3
      locations: [central-us, north-central-us, east-us-2, west-us-2]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: nss-1/b-win2012-azure-alpha
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b1-windows2012-vs-py2-alpha
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: nss-1
      locations: [central-us, north-central-us]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  # Windows Server 2022
  - pool_id: gecko-1/win2022-alpha
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b-windows2022-alpha
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-1
      locations: [central-us, north-central-us]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            workerType: win2012-azure
            provisionerId: gecko-b
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: win_2012
        sourceRepository: ronin_puppet
        sourceOrganisation: markcor
      spot: true
      vmSizes:
        - vmSize: Standard_F16s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F16s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-1/win2022-alpha-f32
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-b-windows2022-alpha
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-1
      locations: [central-us, north-central-us]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            workerType: win2012-azure
            provisionerId: gecko-b
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: win_2012
        sourceRepository: ronin_puppet
        sourceOrganisation: markcor
      spot: true
      vmSizes:
        - vmSize: Standard_F32s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
                - lun: 1
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F32s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  # Windows 10
  - pool_id: gecko-t/win10-64-2004-alpha
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-alpha
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, south-central-us, north-europe]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-alpha
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win10-64-2004-beta
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-beta
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, south-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-beta
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win10-64-2004
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, south-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 600
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win10-64-2004-gpu-alpha
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-alpha
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [north-central-us, south-central-us, north-europe]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-gpu-alpha
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_NV6
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_NV6
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
  - pool_id: gecko-t/win10-64-2004-gpu-beta
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-beta
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [north-central-us, south-central-us, north-europe]
      maxCapacity: 25
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-gpu-beta
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_NV6
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_NV6
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
  - pool_id: gecko-t/win10-64-2004-gpu
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [north-central-us, south-central-us, north-europe, west-europe]
      maxCapacity: 600
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-gpu
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_NV6
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_NV6
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win10-64-2004-perf
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [north-central-us, south-central-us, east-us, north-europe, west-europe]
      maxCapacity: 600
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-perf
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_NV12
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_NV12
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win10-64-2004-source-ssd
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, south-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-source-ssd
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 500
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win10-64-2004-source
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, south-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-source
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win10-64-2004-ssd
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, south-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-ssd
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                diskSizeGB: 500
                osType: Windows
                managedDisk:
                  storageAccountType: Premium_LRS
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win10-64-2004-ssd-datatest
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      old-style-worker-config: true
      image: ronin-t-windows10-64-2004-datadisk-test
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, south-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-ssd-datatest
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        workerType: gecko-t-win10-64-2004-ssd-datatest
        deploymentId: f160361
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceRevision: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                diskSizeGB: 500
                osType: Windows
                managedDisk:
                  storageAccountType: Premium_LRS
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 100
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win10-64-2004-ssd-gpu
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [south-central-us, east-us, north-europe, west-europe]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004-ssd-gpu
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_NV12s_v3
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                diskSizeGB: 500
                osType: Windows
                managedDisk:
                  storageAccountType: Premium_LRS
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_NV12s_v3
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  # Windows 11
  - pool_id: gecko-t/win11-64-2009
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows11-64-2009-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [canada-central, central-india, central-us, north-europe, south-india, north-central-us, east-us, east-us-2, west-us, west-us-2, west-us-3]
      maxCapacity: 600
      worker-config:
        genericWorker:
          config:
            workerType: win11-64-2009
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win11-64-2009-alpha
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows11-64-2009-alpha
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, east-us, east-us-2, north-central-us, north-europe, west-us, west-us-2]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win11-64-2009-alpha
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win11-64-2009-gpu
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows11-64-2009-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [north-central-us, east-us, north-europe]
      maxCapacity: 600
      worker-config:
        genericWorker:
          config:
            workerType: win11-64-2009-gpu
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_NV12s_v3
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_NV12s_v3
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win11-64-2009-gpu-alpha
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows11-64-2009-alpha
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, east-us, east-us-2, north-central-us, north-europe, west-us, west-us-2]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win11-64-2009-gpu-alpha
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_NV12s_v3
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_NV12s_v3
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
  - pool_id: gecko-t/win11-64-2009-perf
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows11-64-2009-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [north-central-us, east-us, north-europe]
      maxCapacity: 600
      worker-config:
        genericWorker:
          config:
            workerType: win11-64-2009-perf
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_NV12
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_NV12
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win11-64-2009-source
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows11-64-2009-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win11-64-2009-source
            provisionerId: gecko-t
            idleTimeoutSecs: 5400
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win11-64-2009-ssd
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows11-64-2009-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win11-64-2009-ssd
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                diskSizeGB: 500
                osType: Windows
                managedDisk:
                  storageAccountType: Premium_LRS
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 120
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win11-64-2009-ssd-datatest
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      old-style-worker-config: true
      image: ronin-t-windows11-64-2009-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [central-us, north-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win11-64-2009-ssd-datatest
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        workerType: gecko-t-win11-64-2009-ssd-datatest
        deploymentId: f160361
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceRevision: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                diskSizeGB: 500
                osType: Windows
                managedDisk:
                  storageAccountType: Premium_LRS
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 100
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/win11-64-2009-ssd-gpu
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows11-64-2009-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: gecko-t
      locations: [east-us, north-europe]
      maxCapacity: 100
      worker-config:
        genericWorker:
          config:
            workerType: win11-64-2009-ssd-gpu
            provisionerId: gecko-t
            idleTimeoutSecs: 1800
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_NV12s_v3
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                diskSizeGB: 500
                osType: Windows
                managedDisk:
                  storageAccountType: Premium_LRS
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Premium_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_NV12s_v3
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  # Windows 7
  - pool_id: gecko-t/t-win7-32
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-t-win7-32-current
      maxCapacity: 256
      additional-user-data:
        workerType: gecko-t-win7-32
      regions: [eu-central-1, us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/windows
      instance_types:
        - instanceType: c4.2xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {VolumeType: gp2, VolumeSize: 30, DeleteOnTermination: true}
              - DeviceName: /dev/sdb
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
              - DeviceName: /dev/sdc
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1
  - pool_id: gecko-t/t-win7-32-beta
    description: experimental gecko tester
    owner: relops-aws-provisioning@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      image: occ-t-win7-32-beta
      maxCapacity: 16
      additional-user-data:
        workerType: gecko-t-win7-32-beta
      regions: [eu-central-1, us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/windows
      instance_types:
        - instanceType: c4.2xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {VolumeType: gp2, VolumeSize: 30, DeleteOnTermination: true}
              - DeviceName: /dev/sdb
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
              - DeviceName: /dev/sdc
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1
  - pool_id: gecko-t/t-win7-32-gpu
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-t-win7-32-gpu-current
      maxCapacity: 128
      additional-user-data:
        workerType: gecko-t-win7-32-gpu
      regions: [us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/windows
      instance_types:
        - instanceType: g2.2xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {VolumeType: gp2, VolumeSize: 30, DeleteOnTermination: true}
              - DeviceName: /dev/sdb
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
              - DeviceName: /dev/sdc
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
        - instanceType: g3.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {VolumeType: gp2, VolumeSize: 30, DeleteOnTermination: true}
              - DeviceName: /dev/sdb
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
              - DeviceName: /dev/sdc
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1
  - pool_id: gecko-t/t-win7-32-gpu-b
    description: experimental gecko tester
    owner: relops-aws-provisioning@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      image: occ-t-win7-32-gpu-beta
      maxCapacity: 16
      additional-user-data:
        workerType: gecko-t-win7-32-gpu-b
      regions: [us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/windows
      instance_types:
        - instanceType: g4dn.xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {VolumeType: gp2, VolumeSize: 30, DeleteOnTermination: true}
              - DeviceName: /dev/sdb
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
              - DeviceName: /dev/sdc
                Ebs: {VolumeType: gp2, VolumeSize: 120, DeleteOnTermination: true}
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1
  - pool_id: comm-1/b-win2012
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-b-win2012-current
      maxCapacity: 512
      additional-user-data:
        workerType: gecko-1-b-win2012
      regions: [eu-central-1, us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: comm-2/b-win2012
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-b-win2012-current
      maxCapacity: 4
      additional-user-data:
        workerType: gecko-2-b-win2012
      regions: [eu-central-1, us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: comm-3/b-win2012
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-b-win2012-trusted-current
      maxCapacity: 600
      additional-user-data:
        workerType: gecko-3-b-win2012
      regions: [us-east-1, us-west-1, us-west-2]
      security: trusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: comm-t/win10-64-2004
    description: ''
    owner: relops-azure-provisioning@mozilla.com
    email_on_error: true
    provider_id: azure2
    config:
      image: ronin-t-windows10-64-2004-prod
      image_resource_group: rg-packer-through-cib
      implementation: generic-worker/worker-runner-windows
      worker-purpose: comm-t
      locations: [central-us, north-central-us, south-central-us, east-us, east-us-2, west-us, west-us-2]
      maxCapacity: 600
      worker-config:
        genericWorker:
          config:
            workerType: win10-64-2004
            provisionerId: comm-t
            idleTimeoutSecs: 3600
      tags:
        sourceScript: provisioners/windows/azure/azure-bootstrap.ps1
        sourceBranch: cloud_windows
        sourceRepository: ronin_puppet
        sourceOrganisation: mozilla-platform-ops
      spot: true
      vmSizes:
        - vmSize: Standard_F8s_v2
          launchConfig:
            osProfile:
              windowsConfiguration:
                timeZone: UTC
                enableAutomaticUpdates: false
            storageProfile:
              osDisk:
                osType: Windows
                createOption: FromImage
              dataDisks:
                - lun: 0
                  diskSizeGB: 30
                  managedDisk:
                    storageAccountType: Standard_LRS
                  createOption: Empty
            hardwareProfile:
              vmSize: Standard_F8s_v2
            diagnosticsProfile:
              bootDiagnostics:
                enabled: false
      capacityPerInstance: 1
  - pool_id: gecko-t/t-linux-large
    description: Worker for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      maxCapacity: 2500
      worker-config:
        dockerConfig: {allowPrivileged: false}
        shutdown:
          afterIdleSeconds: 15
      instance_types:
        - instanceType: m5.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 32, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 20000000000}
  # Temporary entry to test out new monopacker images that will replace the
  # existing b-linux ones: https://bugzilla.mozilla.org/show_bug.cgi?id=1637302
  - pool_id: gecko-t/t-linux-large-alpha
    description: Worker for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: monopacker-docker-worker-current
      maxCapacity: 20
      worker-config:
        dockerConfig: {allowPrivileged: false}
        shutdown:
          afterIdleSeconds: 15
      instance_types:
        - instanceType: m5.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 32, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 20000000000}
  - pool_id: '{pool-group}/t-linux-large-gcp'
    description: Worker for gecko-based automation.
    owner: release+tc-workers@mozilla.com
    provider_id: fxci-level1-gcp
    variants:
      - pool-group: gecko-t
      - pool-group: comm-t
    email_on_error: true
    config:
      minCapacity: 0
      maxCapacity:
        by-pool-group:
          gecko-t: 2500
          comm-t: 100
      regions: [us-central1, us-west1]
      image: monopacker-docker-worker-gcp-current
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - autoDelete: true
              boot: true
              initializeParams:
                diskSizeGb: 75
                sourceImage: <image>
              type: PERSISTENT
            - autoDelete: true
              initializeParams:
                diskType: diskTypes/local-ssd
              type: SCRATCH
              interface: NVME
          machine_type: n2-standard-2
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: comm-t/t-linux-large
    description: Worker for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      maxCapacity: 100
      worker-config:
        dockerConfig: {allowPrivileged: false}
      instance_types:
        - instanceType: m5.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 32, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 20000000000}
  - pool_id: releng-1/linux
    description: Releng github worker
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 100
      worker-config: {dindImage: taskcluster/dind-service:v4.0}
      instance_types:
        - instanceType: m5d.xlarge
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: releng-3/linux
    description: Releng github worker
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      security: trusted
      minCapacity: 0
      maxCapacity: 100
      worker-config: {dindImage: taskcluster/dind-service:v4.0}
      instance_types:
        - instanceType: m5d.xlarge
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: releng-t/linux
    description: Releng github worker
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 100
      worker-config: {dindImage: taskcluster/dind-service:v4.0}
      instance_types:
        - instanceType: m5d.xlarge
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: relops-3/win2019
    description: build windows cloud images for taskcluster windows workloads
    owner: relops-aws-provisioning@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      image: relops-image-builder-current
      maxCapacity: 12
      regions: [eu-central-1, us-east-1, us-west-1, us-west-2]
      security: trusted
      implementation: generic-worker/windows
      additional-user-data:
        workerType: relops-image-builder
      instance_types:
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: nss-1/linux
    description: Worker type that can be used for nss related pushes.
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 150
      instance_types:
        - instanceType: m5d.xlarge
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: nss-3/linux
    description: Worker type that can be used for nss related pushes.
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 150
      security: trusted
      instance_types:
        - instanceType: m5d.xlarge
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: nss-1/win2012r2
    description: Worker type that can be used for nss related pushes.
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: nss-win2012r2-current
      maxCapacity: 150
      additional-user-data:
        workerType: gecko-1-b-win2012
      regions: [us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/windows-nss
      instance_types:
        - instanceType: m5d.2xlarge
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1
  - pool_id: nss-3/win2012r2
    description: Worker type that can be used for nss related pushes.
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: nss-win2012r2-current
      maxCapacity: 150
      additional-user-data:
        workerType: gecko-1-b-win2012
      regions: [us-west-1, us-west-2]
      security: trusted
      implementation: generic-worker/windows-nss
      instance_types:
        - instanceType: m5d.2xlarge
      worker-config:
        genericWorker:
          config:
            idleTimeoutSecs: 1
  - pool_id: mobile-1/b-linux-large
    description: General-purpose worker for projects by android components team (to
      build and release a very large suite of Kotlin components)
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 50
      instance_types:
        - instanceType: c5d.2xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: mobile-1/b-linux
    description: Level 1 build workers for mobile projects
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 50
      instance_types:
        - instanceType: m5d.xlarge
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: mobile-1/images
    description: 'Builds docker images for mobile projects; NOTE: capacity set to
      1 instead of 3 (and downgraded to xlarge) to try to avoid [issues with dind](https://bugzilla.mozilla.org/show_bug.cgi?id=1427096)'
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 30
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      instance_types:
        - instanceType: c5.9xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
            restrictCPU: false
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: mobile-1/bitrise
    description: Level 1 workers to interact with bitrise.io (iOS CI)
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 1  # We can only have 3 concurrent builds with the plan we pay. Let's not overload the queue with level 1 jobs
      instance_types:
        # No need for a big instance, it just delegates the heavy lifting to bitrise. That said, we
        # can't use t3 instances. The AMIs aren't compatible
        - instanceType: m5d.large
          capacityPerInstance: 1  # capacity reduced to 1 (instead of 8), because we don't want more than 1 task for level 1
          worker-config:
            capacityManagement: {diskspaceThreshold: 9000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: mobile-3/b-linux-large
    description: General-purpose worker for projects by android components team (to
      build and release a very large suite of Kotlin components)
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      minCapacity: 0
      maxCapacity: 100
      security: trusted
      instance_types:
        - instanceType: c5d.2xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: mobile-3/b-linux
    description: Level 3 build workers for mobile projects
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      minCapacity: 0
      maxCapacity: 50
      security: trusted
      instance_types:
        - instanceType: m5d.xlarge
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: mobile-3/images
    description: 'Builds docker images for mobile projects; NOTE: capacity set to
      1 instead of 3 (and downgraded to xlarge) to try to avoid [issues with dind](https://bugzilla.mozilla.org/show_bug.cgi?id=1427096)'
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      minCapacity: 0
      maxCapacity: 30
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      security: trusted
      instance_types:
        - instanceType: c5.9xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
            restrictCPU: false
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: mobile-3/bitrise
    description: Level 3 workers to interact with bitrise.io (iOS CI)
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      minCapacity: 0
      maxCapacity: 3  # We can only have 3 concurrent builds with the plan we pay
      security: trusted
      instance_types:
        # No need for a big instance, it just delegates the heavy lifting to
        # bitrise. That said, we can't use t3 instances. The AMIs aren't
        # compatible
        - instanceType: m5d.large
          capacityPerInstance: 3  # capacity reduced to 3 (instead of 8), because we don't want more than 3 tasks for level 3
          worker-config:
            capacityManagement: {diskspaceThreshold: 9000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: '{pool-group}/decision'
    description: Worker for decision tasks
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: adhoc-1
      - pool-group: adhoc-3
        chain-of-trust: trusted
      - pool-group: app-services-1
      - pool-group: app-services-3
        chain-of-trust: trusted
      - pool-group: glean-1
      - pool-group: glean-3
        chain-of-trust: trusted
      - pool-group: mozillavpn-1
      - pool-group: mozillavpn-3
        chain-of-trust: trusted
      - pool-group: scriptworker-1
      - pool-group: scriptworker-3
        chain-of-trust: trusted
      - pool-group: xpi-1
      - pool-group: xpi-3
        chain-of-trust: trusted
      - pool-group: ci-1
      - pool-group: ci-3
      - pool-group: l10n-1
      - pool-group: l10n-3
      - pool-group: relops-3
      - pool-group: taskgraph-1
      - pool-group: taskgraph-3
      - pool-group: releng-1
      - pool-group: releng-3
        chain-of-trust: trusted
    config:
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-pool-group:
          .*-3: trusted
          default:
      minCapacity: 0
      maxCapacity: 10
      instance_types:
        - instanceType: c5d.large
          capacityPerInstance: 2
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
        - instanceType: m5d.large
          capacityPerInstance: 2
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: '{pool-group}/decision'
    description: Worker for decision tasks
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: mobile-1
      - pool-group: mobile-3
        chain-of-trust: trusted
    config:
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-pool-group:
          .*-3: trusted
          default:
      minCapacity: 0
      maxCapacity: 10
      instance_types:
        - instanceType: m5d.large
          capacityPerInstance: 2
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: app-services-1/b-linux
    description: Worker for rust projects by Application Services team
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 50
      instance_types:
        - instanceType: c5d.4xlarge
          utility: 2
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
            restrictCPU: false
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: app-services-3/b-linux
    description: Worker for rust projects by Application Services team
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      minCapacity: 0
      maxCapacity: 100
      security: trusted
      instance_types:
        - instanceType: c5d.4xlarge
          utility: 1
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: glean-1/images
    description: 'Builds docker images for gecko; NOTE: capacity set to 1 instead
      of 3 (and downgraded to xlarge) to try to avoid [issues with dind](https://bugzilla.mozilla.org/show_bug.cgi?id=1427096)'
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 15
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      instance_types:
        - instanceType: c5d.large
          launchSpec:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: glean-3/images
    description: 'Builds docker images for gecko; NOTE: capacity set to 1 instead
      of 3 (and downgraded to xlarge) to try to avoid [issues with dind](https://bugzilla.mozilla.org/show_bug.cgi?id=1427096)'
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      minCapacity: 0
      maxCapacity: 30
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      security: trusted
      instance_types:
        - instanceType: c5d.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: glean-1/b-linux
    description: Worker for rust projects by Glean team
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 100
      instance_types:
        # XXX: we might need befier instances (e.g. c5d.4x large) for rust compilation.
        - instanceType: c5d.large
          utility: 2
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
            restrictCPU: false
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: glean-3/b-linux
    description: Worker for rust projects by Glean team
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      minCapacity: 0
      maxCapacity: 100
      security: trusted
      instance_types:
        # XXX: we might need befier instances (e.g. c5d.4x large) for rust compilation.
        - instanceType: c5d.large
          utility: 1
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: mozillaonline-1/b-linux
    description: Worker for MozillaOnline automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      maxCapacity: 10
      instance_types:
        - instanceType: c5d.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: mozillaonline-3/b-linux
    description: Worker for MozillaOnline automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      security: trusted
      maxCapacity: 10
      instance_types:
        - instanceType: c5d.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 70000000000}
      regions:
        - us-east-1
        - us-west-1
        - us-west-2
  - pool_id: l10n-1/linux
    description: General-purpose worker for l10n automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 10
      instance_types:
        - instanceType: c5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.5
        - instanceType: m5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.4
        - instanceType: c5.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
  - pool_id: l10n-1/images
    description: General-purpose worker for l10n automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 10
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      instance_types:
        - instanceType: c5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.5
        - instanceType: m5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.4
        - instanceType: c5.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
  - pool_id: l10n-3/linux
    description: General-purpose worker for l10n automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      security: trusted
      minCapacity: 0
      maxCapacity: 10
      instance_types:
        - instanceType: c5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.5
        - instanceType: m5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.4
        - instanceType: c5.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
  - pool_id: l10n-3/images
    description: General-purpose worker for l10n automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      security: trusted
      minCapacity: 0
      maxCapacity: 10
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      instance_types:
        - instanceType: c5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.5
        - instanceType: m5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.4
        - instanceType: c5.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
  - pool_id: '{pool-group}/b-linux'
    description: Worker for linux build
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: mozillavpn-1
      - pool-group: mozillavpn-3
        chain-of-trust: trusted
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      maxCapacity: 10
      instance_types:
        - instanceType: c5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.5
        - instanceType: m5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.4
        - instanceType: c5.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
  - pool_id: mozillavpn-1/b-win2012
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      image: occ-b-win2012-current
      maxCapacity: 6
      additional-user-data:
        workerType: mozillavpn-1-b-win2012
      regions: [us-east-1, us-west-1, us-west-2]
      security: windows-untrusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: mozillavpn-3/b-win2012
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-b-win2012-trusted-current
      maxCapacity: 6
      additional-user-data:
        workerType: mozillavpn-3-b-win2012
      regions: [us-east-1, us-west-1, us-west-2]
      security: trusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: mpd001-3/b-win2012
    description: ''
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: occ-mpd001-b-win2012-trusted-current
      maxCapacity: 6
      additional-user-data:
        workerType: mpd001-3-b-win2012
      regions: [us-east-1, us-west-1, us-west-2]
      security: trusted
      implementation: generic-worker/occ-8047eee
      instance_types:
        - instanceType: c4.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
        - instanceType: c5.4xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/sda1
                Ebs: {DeleteOnTermination: true, VolumeSize: 40, VolumeType: gp2}
              - DeviceName: /dev/sdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
              - DeviceName: /dev/sdc
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
  - pool_id: xpi-1/images
    description: 'Builds docker images for XPI; NOTE: capacity set to 1 instead of
      3 (and downgraded to xlarge) to try to avoid [issues with dind](https://bugzilla.mozilla.org/show_bug.cgi?id=1427096)'
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-current
      maxCapacity: 10
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      regions: [us-east-1, us-west-1, us-west-2]
      instance_types:
        - instanceType: c5d.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
        - instanceType: m5d.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
        - instanceType: c5.xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
  - pool_id: xpi-3/images
    description: 'Builds docker images for xpi; NOTE: capacity set to 1 instead of
      3 (and downgraded to xlarge) to try to avoid [issues with dind](https://bugzilla.mozilla.org/show_bug.cgi?id=1427096)'
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      image: docker-worker-hvm-builder-trusted-current
      security: trusted
      minCapacity: 0
      maxCapacity: 10
      worker-config: {dindImage: taskcluster/dind-service:v4.1}
      regions: [us-east-1, us-west-1, us-west-2]
      instance_types:
        - instanceType: c5d.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
        - instanceType: m5d.xlarge
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
        - instanceType: c5.xlarge
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
  - pool_id: '{pool-group}/b-linux'
    description: Worker for linux build
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    variants:
      - pool-group: adhoc-1
      - pool-group: adhoc-3
        chain-of-trust: trusted
      - pool-group: scriptworker-1
      - pool-group: scriptworker-3
        chain-of-trust: trusted
      - pool-group: xpi-1
      - pool-group: xpi-3
        chain-of-trust: trusted
      - pool-group: releng-1
      - pool-group: releng-3
        chain-of-trust: trusted
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image:
        by-chain-of-trust:
          trusted: docker-worker-hvm-builder-trusted-current
          default: docker-worker-hvm-builder-current
      security:
        by-chain-of-trust:
          trusted: trusted
          default:
      maxCapacity: 10
      instance_types:
        - instanceType: c5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.5
        - instanceType: m5d.large
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
          utility: 1.4
        - instanceType: c5.large
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 120, VolumeType: gp2}
          worker-config:
            capacityManagement: {diskspaceThreshold: 30000000000}
  - pool_id: gecko-t/t-linux-metal
    description: Monopacker metal workers for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: monopacker-docker-worker-baremetal-current
      minCapacity: 0
      maxCapacity: 720
      scalingRatio: 0.5
      spot: true
      worker-config:
        shutdown: {afterIdleSeconds: 15}
        deviceManagement:
          kvm: {enabled: true}
      instance_types:
        - instanceType: r5.metal
          capacityPerInstance: 32
          additional-user-data:
            tmpfsSize: 576G
          worker-config:
            dockerConfig:
              allowPrivileged: true
            capacityManagement: {diskspaceThreshold: 16000000000}
        - instanceType: m5.metal
          capacityPerInstance: 15
          additional-user-data:
            tmpfsSize: 294G
          worker-config:
            dockerConfig:
              allowPrivileged: true
            capacityManagement: {diskspaceThreshold: 16000000000}
  - pool_id: gecko-t/t-linux-metal-alpha
    description: Monopacker metal workers for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: monopacker-docker-worker-baremetal-current
      minCapacity: 0
      maxCapacity: 30
      spot: true
      worker-config:
        shutdown: {afterIdleSeconds: 15}
        deviceManagement:
          kvm: {enabled: true}
      instance_types:
        - instanceType: r5.metal
          capacityPerInstance: 32
          additional-user-data:
            tmpfsSize: 576G
          worker-config:
            dockerConfig:
              allowPrivileged: true
            capacityManagement: {diskspaceThreshold: 16000000000}
        - instanceType: m5.metal
          capacityPerInstance: 15
          additional-user-data:
            tmpfsSize: 294G
          worker-config:
            dockerConfig:
              allowPrivileged: true
            capacityManagement: {diskspaceThreshold: 16000000000}
  - pool_id: kaios-t/t-linux-metal
    description: Monopacker metal workers for Firefox automation
    owner: release+tc-workers@mozilla.com
    email_on_error: false
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: monopacker-docker-worker-current
      minCapacity: 0
      maxCapacity: 15
      spot: true
      instance_types:
        - instanceType: m5.metal
          capacityPerInstance: 15
          additional-user-data:
            tmpfsSize: 294G
          worker-config:
            dockerConfig:
              allowPrivileged: true
            capacityManagement: {diskspaceThreshold: 16000000000}
  - pool_id: project-relman/relman-svc
    description: Release management workers
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 2
      worker-config:
        shutdown:
          afterIdleSeconds: 15
      instance_types:
        - instanceType: m5.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
  - pool_id: code-analysis-1/linux
    description: Worker for code-analysis CI/CD - level 1
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 10
      instance_types:
        - instanceType: m5d.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
  - pool_id: code-analysis-3/linux
    description: Worker for code-analysis CI/CD - level 3
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      security: trusted
      minCapacity: 0
      maxCapacity: 10
      instance_types:
        - instanceType: m5d.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
  - pool_id: code-review/bot
    description: Worker for the code-review bot.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 100
      instance_types:
        - instanceType: m5.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 10, VolumeType: gp2}
        - instanceType: m5a.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 10, VolumeType: gp2}
        - instanceType: m5d.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 10, VolumeType: gp2}
        - instanceType: m4.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 10, VolumeType: gp2}
  - pool_id: code-review/bot-gcp
    description: Worker for the code-review bot.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: fxci-level1-gcp
    config:
      regions: [us-central1, us-west1]
      image: monopacker-docker-worker-current
      minCapacity: 1
      maxCapacity: 100
      instance_types:
        - minCpuPlatform: Intel Cascadelake
          disks:
            - *persistent-disk-20
            - *scratch-disk
          machine_type: n2-standard-2
          networkInterfaces:
            - accessConfigs:
                - type: ONE_TO_ONE_NAT
  - pool_id: code-coverage/bot
    description: Worker for the code-coverage bot.
    owner: release+tc-workers@mozilla.com
    email_on_error: true
    provider_id: aws
    config:
      regions: [us-east-1, us-west-1, us-west-2]
      image: docker-worker-hvm-builder-current
      minCapacity: 0
      maxCapacity: 100
      instance_types:
        - instanceType: r5.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
        - instanceType: r5d.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
        - instanceType: r5a.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
        - instanceType: r5ad.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
        - instanceType: z1d.large
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
        - instanceType: m5.xlarge
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
        - instanceType: m5a.xlarge
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
        - instanceType: m5d.xlarge
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
        - instanceType: m4.xlarge
          worker-config:
            capacityManagement:
              diskspaceThreshold: 20000000000
          launchConfig:
            BlockDeviceMappings:
              - DeviceName: /dev/xvdb
                Ebs: {DeleteOnTermination: true, VolumeSize: 100, VolumeType: gp2}
        - instanceType