Skip to content

Commit

Permalink
Use up-to-date, maintained agent images in pipelines (#7104)
Browse files Browse the repository at this point in the history
Some of our CI/test/release pipelines are using 1ES-hosted agent images which are either outdated or unmaintained. To clarify, the "unmaintained" images still receive OS security patches, but they were originally built by hand and are not managed by our internal automated processes.
- CI build uses an unmaintained agent image to build Mariner 2.0 arm64
- Connectivity tests use outdated agent images
- End-to-end tests use an unmaintained agent image to test Mariner 2.0 arm64
- Nested end-to-end tests use an outdated agent image for some early test setup logic
- Package release pipeline uses an outdated agent image and an unmaintained agent image for post-release smoke tests

This change updates outdated agent images to the latest Ubuntu, and updates unmaintained agent images to their maintained equivalents.

To test, I ran each of the affected pipelines and confirmed they run/pass using the updated agent images. Note that I couldn't test the updates to the end-to-end tests and the package release pipeline change because the impacted jobs are currently disabled.

## Azure IoT Edge PR checklist:
  • Loading branch information
damonbarry authored Sep 5, 2023
1 parent 6d882ea commit b4e7b13
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 15 deletions.
6 changes: 3 additions & 3 deletions builds/e2e/connectivity.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -88,10 +88,10 @@ jobs:
pool:
name: $(pool.linux.name)
demands:
- ImageOverride -equals agent-aziotedge-ubuntu-18.04-msmoby
- ImageOverride -equals agent-aziotedge-ubuntu-22.04-msmoby
variables:
edgelet.artifact.name: 'iotedged-ubuntu18.04-amd64'
aziotis.artifact.name: 'packages_ubuntu-18.04_amd64'
edgelet.artifact.name: 'iotedged-ubuntu22.04-amd64'
aziotis.artifact.name: 'packages_ubuntu-22.04_amd64'
aziotis.package.filter: 'aziot-identity-service_*_amd64.deb'
steps:
- task: Bash@3
Expand Down
2 changes: 1 addition & 1 deletion builds/e2e/e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -367,7 +367,7 @@ jobs:
pool:
name: $(pool.linux.arm.name)
demands:
- ImageOverride -equals agent-aziotedge-mariner-2.0-arm64
- ImageOverride -equals agent-aziotedge-mariner-2.0-arm64-msmoby

variables:
os: linux
Expand Down
2 changes: 1 addition & 1 deletion builds/e2e/templates/lock-test-agents.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
pool:
name: $(pool.linux.name)
demands:
- ImageOverride -equals agent-aziotedge-ubuntu-18.04-docker
- ImageOverride -equals agent-aziotedge-ubuntu-22.04-msmoby
steps:
- template: nested-get-secrets.yaml
- script: scripts/linux/nestedAgentLock.sh -a "$(agent.group)" -b "$(Build.BuildId)" -n ${{ parameters['testRunnerCount'] }} -u ${{ parameters['upstream.protocol'] }}
Expand Down
18 changes: 9 additions & 9 deletions builds/misc/packages-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -516,16 +516,16 @@ stages:
displayName: Release Artifact Smoke Tests
strategy:
matrix:
Ubuntu1804-amd64:
Ubuntu2204-amd64:
pool_name: 'Azure-IoT-Edge-1ES-Hosted-Linux'
agent_demands: 'ImageOverride -equals agent-aziotedge-ubuntu-18.04-docker'
os: ubuntu18.04
agent_demands: 'ImageOverride -equals agent-aziotedge-ubuntu-22.04-msmoby'
os: ubuntu22.04
arch: amd64
ext: deb
Ubuntu1804-arm64:
Ubuntu2204-arm64:
pool_name: 'Azure-IoT-Edge-1ES-Hosted-Linux-Arm64'
agent_demands: 'ImageOverride -equals agent-aziotedge-ubuntu-18.04-arm64'
os: ubuntu18.04
agent_demands: 'ImageOverride -equals agent-aziotedge-ubuntu-22.04-arm64-msmoby'
os: ubuntu22.04
arch: arm64
ext: deb

Expand Down Expand Up @@ -584,11 +584,11 @@ stages:
if [[ "$(os)" == "ubuntu"* ]]; then
# Ubuntu
if [[ "$(os)" == *"20.04" ]]; then
if [[ "$(os)" == *"22.04" ]]; then
setup-config-apt "https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb"
elif [[ "$(os)" == *"20.04" ]]; then
setup-focal-source-apt
setup-config-apt "https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb"
elif [[ "$(os)" == *"18.04" ]]; then
setup-config-apt "https://packages.microsoft.com/config/ubuntu/18.04/multiarch/packages-microsoft-prod.deb"
else
echo "Unsupported OS: $(os)"
exit 1;
Expand Down
2 changes: 1 addition & 1 deletion builds/misc/templates/build-packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -249,7 +249,7 @@ stages:
pool:
name: $(pool.linux.arm.name)
demands:
- ImageOverride -equals agent-aziotedge-ubuntu-20.04-arm64
- ImageOverride -equals agent-aziotedge-ubuntu-20.04-arm64-docker
- DiskSizeGiB -equals 100 # EFLOW requires ~85GB to build the edgelet artifacts
- WorkFolder -equals /mnt/storage/_work
strategy:
Expand Down

0 comments on commit b4e7b13

Please sign in to comment.