Skip to content

feat: default to AIO 2609 and skip the OPC UA template when disabled - #75

Merged
Paymaun (digimaun) merged 2 commits into
Azure:mainfrom
digimaun:feat/aio-2609
Oct 15, 2026
Merged

Paymaun (digimaun) merged 2 commits into
Azure:mainfrom
digimaun:feat/aio-2609

Conversation

@digimaun

Copy link
Copy Markdown
Member

Summary

Sites, guided installation and E2E runs default to AIO release 2609
(AIO 1.4.112). 2607 and 2608 remain selectable. Install and upgrade create
the OPC UA connector template only when the instance's OPC UA feature is not
Disabled, matching the AIO 1.4.112 deployment templates.

AIO 2609

  • parameters/aio-releases/2609.yaml pins AIO 1.4.112, connectors 1.4.14,
    cert-manager 1.1.2 and secret store 1.5.3 on instance API 2026-07-01
    and ADR API 2026-04-01. These match the AIO 1.4.112 product templates
    and AIO CLI v2.10.0.
  • sites/base-site.yaml, the guided aioRelease input, the API profile of
    the guided Secret Sync route and E2E runs default to 2609. A test keeps
    these defaults consistent.
  • Sites select 2607 or 2608 with properties.aioRelease, and guided
    installation with --input aioRelease=2608.
  • 2608.yaml pins the OPC UA connector template to 1.4.11, the version the
    AIO 1.4.73 release templates deploy.

OPC UA connector template

  • Install and upgrade skip the template when the instance's OPC UA feature
    mode is Disabled. The legacy connectors feature applies when opcua
    is absent, and opcua takes precedence.
  • Upgrade reads the resolved features of the existing instance, so it
    follows the same rule as a fresh installation.
  • Tests compile the real install and upgrade templates and evaluate the
    deployment conditions for absent features, each mode, the legacy name and
    its precedence.

Release acceptance and E2E

  • The release acceptance fleet deploys its two Sites on 2607 and 2609, the
    previous default and the new one.
  • E2E runs accept opcua-modes. A Disabled cell renders a Site with OPC UA
    disabled and asserts that install and upgrade create no connector
    template. Stable cells omit features and assert the template exists.
  • docs/e2e-testing.md documents the runs that qualify an AIO release.

Upgrading

Sites that do not pin properties.aioRelease deploy 2609 next. Pin
"2607" to stay on the v1.0.0b6 default, and use aio-upgrade to move an
existing instance. docs/migrating.md has the details.

Validation

Unit and workflow tests pass on Linux and Windows. On the maintainer fork,
E2E runs installed AIO 2609 with OPC UA enabled and disabled, and upgraded
2608 Sites to 2609 with OPC UA enabled and disabled, all with Secret Sync.
Sites with OPC UA disabled created no connector template, and enabled Sites
created one. With OPC UA enabled, 2609 passed the full integration suite,
including the OPC UA solution, the dataflow and resource set samples, and
secret synchronization.

Add AIO release 2609 (AIO 1.4.112, connectors 1.4.14, cert-manager 1.1.2
and secret store 1.5.3 on instance API 2026-07-01) and make it the default
for Sites, guided installation, the Secret Sync profile and E2E runs. Sites
can still pin 2607 or 2608, and the migration guide shows how.

Install and upgrade create the OPC UA connector template only when the
instance's OPC UA feature is not Disabled. The legacy connectors feature
name applies when opcua is absent, and opcua takes precedence. This matches
the AIO 1.4.112 deployment templates, which skip the template because no
supervisor reconciles it while OPC UA is disabled.

Release acceptance deploys its second fleet Site on 2609, so the fleet
combines the v1.0.0b6 default with the new one. E2E runs gain an
opcua-modes input for Disabled Sites, Stable Sites keep omitting features,
and the E2E guide documents the runs that qualify 2609.
The AIO 1.4.73 release templates deploy the OPC UA connector template with
connectors 1.4.11, which the 2608 release configuration now pins. The AIO
releases guide notes that the disabled OPC UA guard covers 2608 as well as
2609, because both deploy the same connector template.
Copilot AI balanced review requested due to automatic review settings October 15, 2026 18:46

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔵 Needs a closer look

Fleet-wide default changes and live upgrade behavior require human confirmation of the reported installation, upgrade and qualification evidence.

0 open findings

What changed in this PR

Updates Scale Kit’s default AIO release to 2609 (1.4.112) and makes OPC UA connector-template deployment respect the effective feature mode during installation and upgrade.

Changes:

  • Adds 2609 release pins and aligns Site, guided installation and E2E defaults.
  • Skips OPC UA templates when disabled, preserving legacy alias handling.
  • Extends qualification coverage and updates migration and operator guidance.
File Description
workspaces/​iot-operations/​templates/​aio/​upgrade/​modules/​deploy-release-resources-2026-07-01.bicep Guards connector deployment using resolved features.
workspaces/​iot-operations/​templates/​aio/​upgrade/​modules/​deploy-release-resources-2026-03-01.bicep Accepts the shared features parameter.
workspaces/​iot-operations/​templates/​aio/​upgrade/​modules/​deploy-release-resources-2025-10-01.bicep Accepts the shared features parameter.
workspaces/​iot-operations/​templates/​aio/​upgrade/​deploy-release-resources.bicep Forwards features to versioned modules.
workspaces/​iot-operations/​templates/​aio/​modules/​instance-2026-07-01.bicep Skips connector deployment when disabled.
workspaces/​iot-operations/​sites/​base-site.yaml Defaults Sites to 2609.
workspaces/​iot-operations/​siteops-index.json Updates catalog release guidance.
workspaces/​iot-operations/​siteops-index.inputs.json Refreshes catalog digests.
workspaces/​iot-operations/​samples/​resource-set-composition/​README.md Updates the sample’s release reference.
workspaces/​iot-operations/​samples/​opc-ua-solution/​README.md Documents the new inherited release.
workspaces/​iot-operations/​samples/​aio-with-opc-ua/​README.md Updates default-release guidance.
workspaces/​iot-operations/​parameters/​inputs/​aio-upgrade-deploy-release-resources.yaml Supplies resolved instance features.
workspaces/​iot-operations/​parameters/​aio-releases/​2609.yaml Adds 2609 component and API pins.
workspaces/​iot-operations/​parameters/​aio-releases/​2608.yaml Corrects the connector version pin.
workspaces/​iot-operations/​manifests/​secretsync/​README.md Documents 2609 API-profile support.
workspaces/​iot-operations/​manifests/​secretsync/​inputs.yaml Selects the 2609 API profile.
workspaces/​iot-operations/​manifests/​secretsync/​entry.yaml Updates supported-release guidance.
workspaces/​iot-operations/​manifests/​aio-install/​inputs.yaml Defaults guided installation to 2609.
workspaces/​iot-operations/​manifests/​aio-install/​entry.yaml Updates guided-default guidance.
tests/​workspace/​test_site_configuration.py Tests inherited and explicit release selections.
tests/​workspace/​test_parameter_chaining.py Includes 2609 in release-setting contracts.
tests/​workspace/​test_aio_release_behavior_contracts.py Tests compiled connector guards and feature forwarding.
tests/​workspace/​test_aio_2608_contracts.py Extends release contracts to 2609.
tests/​test_render_e2e_site.py Tests OPC UA feature rendering.
tests/​test_published_e2e_workflow.py Tests defaults, OPC UA matrices and qualification guidance.
tests/​test_packaging.py Updates packaged guided-default expectations.
tests/​test_kubectl_base.py Tests connector discovery and error propagation.
tests/​test_installation_guide.py Checks migration guidance.
tests/​test_guided_cli.py Tests 2609 defaults and explicit selection.
tests/​test_fleet_plan_probe.py Updates fleet expectations and rejection cases.
tests/​test_fleet_outcomes.py Checks 2609 fleet outcome evidence.
tests/​test_browse.py Updates catalog-output expectations.
tests/​integration/​test_aio_upgrade_manifest.py Checks connector presence against resolved features.
tests/​integration/​test_aio_install_manifest.py Checks connector presence against Site features.
tests/​integration/​helpers/​kube.py Adds connector discovery with absent-CRD handling.
tests/​e2e/​sites/​e2e-test.yaml.tmpl Supports optional OPC UA feature overrides.
scripts/​render-e2e-site.py Validates and renders OPC UA modes.
scripts/​probe-fleet-plan.py Requires 2609 for fleet slot two.
scripts/​deploy-release-fleet.py Deploys fleet releases 2607 and 2609.
scripts/​aggregate-fleet-results.py Validates the updated fleet release pair.
docs/​site-configuration.md Updates the release-selection example.
docs/​secret-sync.md Adds 2609 to guided-route guidance.
docs/​migrating.md Explains default changes, pins and upgrades.
docs/​guided-inputs.md Documents 2609 defaults and selection.
docs/​e2e-testing.md Documents OPC UA matrices and release qualification.
docs/​aio-releases.md Documents 2609 pins and connector behavior.
.github/​workflows/​e2e-test.yaml Adds OPC UA matrices and updates release defaults.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@digimaun
Paymaun (digimaun) merged commit 6278c92 into Azure:main Oct 15, 2026
14 checks passed
@digimaun
Paymaun (digimaun) deleted the feat/aio-2609 branch October 15, 2026 19:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants