Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 27 additions & 1 deletion .pipelines/azure-pipeline-aks-extension-managed-ev2-sdp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,28 @@ parameters:
- name: 'releaseTrain'
displayName: 'Release Train'
type: string
default: 'preview'
default: 'stable'
values:
- preview
- stable

# Optional. 'none' (the default) means NO rollback: the run is a normal
# roll-forward to the version selected above.
#
# Azure DevOps renders a parameter whose default is an empty string as a
# REQUIRED field, so we default to the 'none' sentinel and strip it back to an
# empty string in the ConfigurationOverrides below. The central artifacts
# register.sh writes an empty rollbackVersion as JSON null, i.e. no rollback.
#
# HOW TO ROLL BACK: RollbackVersion is stored on the version document that is
# being registered (the rollout PATCHes .../versions/<version>), so set BOTH:
# overrideExtensionVersion -> the bad version currently in the field (roll back FROM)
Comment on lines +43 to +44

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

# rollbackVersion -> the last known-good version (roll back TO)
- name: 'rollbackVersion'
displayName: 'Rollback version ("none" = roll forward)'
type: string
default: 'none'

- name: 'rolloutType'
displayName: 'SDP rollout type'
type: string
Expand Down Expand Up @@ -100,6 +117,10 @@ variables:
# files (now removed). MSI ARM IDs below must be the cloud-specific identity
# registered in the extension type registration document (msiClientIds field).
# See: https://msazure.visualstudio.com/One/_wiki/wikis/One.wiki/202225/Extension-Type-Registration
#
# rollbackVersion is resolved at compile time: the 'none' sentinel collapses to
# an empty string, which the central artifacts register.sh writes as JSON null
# (no rollback). See the rollbackVersion parameter above.

- name: ProdConfigurationOverrides
value: |
Expand All @@ -112,6 +133,7 @@ variables:
"userAssignedIdentity": "/subscriptions/30c56c3a-54da-46ea-b004-06eb33432687/resourceGroups/containerinsightsprod/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ev2-agent-release",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(parameters.rollbackVersion, 'none', '') }}",

@suyadav1 suyadav1 Sep 11, 2026 •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

"kustoGatingWaitDuration": "PT1H"
}
}
Expand All @@ -127,6 +149,7 @@ variables:
"userAssignedIdentity": "/subscriptions/e4f0f588-48fc-43c1-86b3-2861f1ddaa9d/resourcegroups/container-insights-extension-fairfax/providers/Microsoft.ManagedIdentity/userAssignedIdentities/extension-rollout-identity-ContainerInsights",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(parameters.rollbackVersion, 'none', '') }}",
"kustoGatingWaitDuration": "PT1H"
}
}
Expand All @@ -143,6 +166,7 @@ variables:
"userAssignedIdentity": "/subscriptions/fdbe2580-1746-4bb7-ae1a-da7ada55880b/resourcegroups/container-insights-extension-mooncake/providers/Microsoft.ManagedIdentity/userAssignedIdentities/Extension-insights-mooncake",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(parameters.rollbackVersion, 'none', '') }}",
"kustoGatingWaitDuration": "PT1H"
}
}
Expand All @@ -159,6 +183,7 @@ variables:
"userAssignedIdentity": "/subscriptions/f8272cc8-8c5a-438c-ad5c-21264c697c53/resourcegroups/ContainerInsights-AI/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ContainerInsights-MI",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(parameters.rollbackVersion, 'none', '') }}",
"kustoGatingWaitDuration": "PT1H"
}
}
Expand All @@ -175,6 +200,7 @@ variables:
"userAssignedIdentity": "/subscriptions/3be87dbe-53e1-410a-b8b7-a0d8fa86a9e9/resourcegroups/ContainerInsights-AI/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ContainerInsights-MI",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(parameters.rollbackVersion, 'none', '') }}",
"kustoGatingWaitDuration": "PT1H"
}
}
Expand Down
41 changes: 38 additions & 3 deletions .pipelines/azure-pipeline-arc-extension-managed-ev2-sdp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,33 @@ parameters:
- name: 'releaseTrain'
displayName: 'Release Train'
type: string
default: 'preview'
default: 'stable'
values:
- preview
- stable

# Optional. 'none' (the default) means NO rollback: the run is a normal
Comment thread
zanejohnson-azure marked this conversation as resolved.
# roll-forward to the version selected above.
#
# Provide the BASE version only, WITHOUT the '-arc' suffix (e.g.
# 3.7.0-ci-prod-08-28-2026-925ade3d). This pipeline appends '-arc' for you,
# exactly as it does for overrideExtensionVersion above.
#
# Azure DevOps renders a parameter whose default is an empty string as a
# REQUIRED field, so we default to the 'none' sentinel and strip it back to an
# empty string in the ConfigurationOverrides below. The central artifacts
# register.sh writes an empty rollbackVersion as JSON null, i.e. no rollback.
#
# HOW TO ROLL BACK: RollbackVersion is stored on the version document that is
# being registered (the rollout PATCHes .../versions/<version>), so set BOTH:
# overrideExtensionVersion -> the bad version currently in the field (roll back FROM)
# rollbackVersion -> the last known-good version (roll back TO)
# Both are base versions; '-arc' is appended to each automatically.
- name: 'rollbackVersion'
displayName: 'Rollback version - base version only, no -arc suffix ("none" = roll forward)'
type: string
default: 'none'

- name: 'rolloutType'
displayName: 'SDP rollout type'
type: string
Expand Down Expand Up @@ -94,8 +116,10 @@ variables:
# When `overrideExtensionVersion` is left at its default value of 'auto',
# the pipeline uses the runName of the latest upstream build pipeline run
# (resolved at runtime by the resources.pipelines reference). Any other
# value is taken as an explicit version override (e.g. for rollback or for
# pinning to a known-good build). The '-arc' suffix is always appended.
# value is taken as an explicit version override (e.g. pinning to a specific
# build, or naming the version to roll back FROM - see the rollbackVersion
# parameter, which is what actually triggers a rollback). The '-arc' suffix is
# always appended.
- ${{ if ne(parameters.overrideExtensionVersion, 'auto') }}:
- name: baseVersionValue
value: '${{ parameters.overrideExtensionVersion }}'
Expand All @@ -111,6 +135,12 @@ variables:
# userAssignedIdentity must be the MSI registered in the *cloud-specific*
# extension type registration document (msiClientIds field). See:
# https://msazure.visualstudio.com/One/_wiki/wikis/One.wiki/202225/Extension-Type-Registration
#
# rollbackVersion is resolved at compile time. The '-arc' suffix is appended
# FIRST and the sentinel is stripped SECOND, so that the default 'none' becomes
# 'none-arc' and then collapses to an empty string (= JSON null, no rollback).
# Stripping first would leave a bare '-arc', which is non-empty and would be
# registered as a real - and bogus - rollback target.

- name: ProdConfigurationOverrides
value: |
Expand All @@ -123,6 +153,7 @@ variables:
"userAssignedIdentity": "/subscriptions/30c56c3a-54da-46ea-b004-06eb33432687/resourceGroups/containerinsightsprod/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ev2-agent-release",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(format('{0}-arc', parameters.rollbackVersion), 'none-arc', '') }}",
"kustoGatingWaitDuration": "PT1H"
}
}
Expand All @@ -139,6 +170,7 @@ variables:
"userAssignedIdentity": "/subscriptions/e4f0f588-48fc-43c1-86b3-2861f1ddaa9d/resourcegroups/container-insights-extension-fairfax/providers/Microsoft.ManagedIdentity/userAssignedIdentities/extension-rollout-identity-ContainerInsights",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(format('{0}-arc', parameters.rollbackVersion), 'none-arc', '') }}",
"kustoGatingWaitDuration": "PT1H"
}
}
Expand All @@ -155,6 +187,7 @@ variables:
"userAssignedIdentity": "/subscriptions/fdbe2580-1746-4bb7-ae1a-da7ada55880b/resourcegroups/container-insights-extension-mooncake/providers/Microsoft.ManagedIdentity/userAssignedIdentities/Extension-insights-mooncake",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(format('{0}-arc', parameters.rollbackVersion), 'none-arc', '') }}",
"kustoGatingWaitDuration": "PT1H"
}
}
Expand All @@ -171,6 +204,7 @@ variables:
"userAssignedIdentity": "/subscriptions/f8272cc8-8c5a-438c-ad5c-21264c697c53/resourcegroups/ContainerInsights-AI/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ContainerInsights-MI",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(format('{0}-arc', parameters.rollbackVersion), 'none-arc', '') }}",
"kustoGatingWaitDuration": "PT1H"
}
}
Expand All @@ -187,6 +221,7 @@ variables:
"userAssignedIdentity": "/subscriptions/3be87dbe-53e1-410a-b8b7-a0d8fa86a9e9/resourcegroups/ContainerInsights-AI/providers/Microsoft.ManagedIdentity/userAssignedIdentities/ContainerInsights-MI",
"version": "$(extensionVersionValue)",
"releaseTrain": "${{ parameters.releaseTrain }}",
"rollbackVersion": "${{ replace(format('{0}-arc', parameters.rollbackVersion), 'none-arc', '') }}",
"kustoGatingWaitDuration": "PT1H"
}
}
Expand Down
Loading