Skip to content

Automated test script for Bash installer#11472

Open
brooke-hamilton wants to merge 7 commits intomainfrom
brooke-hamilton/installer-test-script
Open

Automated test script for Bash installer#11472
brooke-hamilton wants to merge 7 commits intomainfrom
brooke-hamilton/installer-test-script

Conversation

@brooke-hamilton
Copy link
Copy Markdown
Member

Description

Automated integration test script for the deploy/install.sh Bash installer. This test script exercises every flag and environment variable documented in --help, installs into isolated temporary directories, and validates that the rad CLI binary is placed correctly and is functional.

Related to #11463 which updated the installer script. This PR adds the automated test infrastructure for that installer.

Changes

  • deploy/test-install.sh — New integration test script covering:

    • --help / -h flags
    • Default (latest stable) install
    • Specific version via --version / -v and --install-dir / -d
    • --include-rc / -rc flags
    • INSTALL_DIR, INCLUDE_RC, and RADIUS_INSTALL_DIR environment variables
    • Reinstall over an existing binary
    • Legacy positional version argument
    • Unknown flag rejection
    • PATH hint display
    • Non-root default directory (~/.local/bin)
    • Non-writable directory without sudo failure
  • .github/workflows/validate-installers.yaml — Updated workflow to:

    • Add a new verify-bash-installer job running on ubuntu-24.04
    • Rename the existing job to verify-powershell-installer for clarity
    • Trigger on changes to deploy/install.sh, deploy/test-install.sh, and deploy/test-pwsh-install.ps1
  • versions.yaml — Moved 0.56 RC entry out of supported and adjusted deprecated channel list

Type of change

  • This pull request is a minor refactor, code cleanup, test improvement, or other maintenance task and does not change the functionality of Radius (issue link optional).

Contributor checklist

Please verify that the PR meets the following requirements, where applicable:

  • An overview of proposed schema changes is included in a linked GitHub issue.
    • Yes
    • Not applicable
  • A design document PR is created in the design-notes repository, if new APIs are being introduced.
    • Yes
    • Not applicable
  • The design document has been reviewed and approved by Radius maintainers/approvers.
    • Yes
    • Not applicable
  • A PR for the samples repository is created, if existing samples are affected by the changes in this PR.
    • Yes
    • Not applicable
  • A PR for the documentation repository is created, if the changes in this PR affect the documentation or any user facing updates are made.
    • Yes
    • Not applicable
  • A PR for the recipes repository is created, if existing recipes are affected by the changes in this PR.
    • Yes
    • Not applicable

Signed-off-by: Brooke Hamilton <45323234+brooke-hamilton@users.noreply.github.com>
Signed-off-by: Brooke Hamilton <45323234+brooke-hamilton@users.noreply.github.com>
Signed-off-by: Brooke Hamilton <45323234+brooke-hamilton@users.noreply.github.com>
@brooke-hamilton brooke-hamilton requested a review from a team as a code owner March 23, 2026 00:04
Copilot AI review requested due to automatic review settings March 23, 2026 00:04
@brooke-hamilton brooke-hamilton requested review from a team as code owners March 23, 2026 00:04
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds automated integration coverage for the Bash-based Radius CLI installer and wires it into CI so installer regressions are caught on PRs that touch installer-related files.

Changes:

  • Added deploy/test-install.sh integration test script that exercises installer flags/env vars and validates the installed rad binary is functional.
  • Updated .github/workflows/validate-installers.yaml to run the new Bash installer tests on ubuntu-24.04 and to broaden the pull_request.paths filter to include the installer test scripts.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.

File Description
deploy/test-install.sh New Bash integration test runner for deploy/install.sh, covering help/flags/env vars and install behaviors.
.github/workflows/validate-installers.yaml Adds a Linux job to execute the new Bash installer integration tests in CI.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 23, 2026

Unit Tests

    2 files  ±0    415 suites  ±0   6m 48s ⏱️ +13s
4 862 tests ±0  4 860 ✅ ±0  2 💤 ±0  0 ❌ ±0 
5 764 runs  ±0  5 762 ✅ ±0  2 💤 ±0  0 ❌ ±0 

Results for commit e1ee53f. ± Comparison against base commit de4ac2d.

♻️ This comment has been updated with latest results.

@codecov
Copy link
Copy Markdown

codecov bot commented Mar 23, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 51.23%. Comparing base (de4ac2d) to head (e1ee53f).

Additional details and impacted files
@@           Coverage Diff           @@
##             main   #11472   +/-   ##
=======================================
  Coverage   51.23%   51.23%           
=======================================
  Files         699      699           
  Lines       44050    44050           
=======================================
+ Hits        22567    22568    +1     
+ Misses      19328    19326    -2     
- Partials     2155     2156    +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

brooke-hamilton and others added 3 commits March 28, 2026 21:34
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Brooke Hamilton <45323234+brooke-hamilton@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Brooke Hamilton <45323234+brooke-hamilton@users.noreply.github.com>
@radius-functional-tests
Copy link
Copy Markdown

radius-functional-tests bot commented Mar 29, 2026

Radius functional test overview

🔍 Go to test action run

Click here to see the test run details
Name Value
Repository radius-project/radius
Commit ref e1ee53f
Unique ID funca41a28d80f
Image tag pr-funca41a28d80f
  • gotestsum 1.13.0
  • KinD: v0.29.0
  • Dapr: 1.14.4
  • Azure KeyVault CSI driver: 1.4.2
  • Azure Workload identity webhook: 1.3.0
  • Bicep recipe location ghcr.io/radius-project/dev/test/testrecipes/test-bicep-recipes/<name>:pr-funca41a28d80f
  • Terraform recipe location http://tf-module-server.radius-test-tf-module-server.svc.cluster.local/<name>.zip (in cluster)
  • applications-rp test image location: ghcr.io/radius-project/dev/applications-rp:pr-funca41a28d80f
  • dynamic-rp test image location: ghcr.io/radius-project/dev/dynamic-rp:pr-funca41a28d80f
  • controller test image location: ghcr.io/radius-project/dev/controller:pr-funca41a28d80f
  • ucp test image location: ghcr.io/radius-project/dev/ucpd:pr-funca41a28d80f
  • deployment-engine test image location: ghcr.io/radius-project/deployment-engine:latest

Test Status

⌛ Building Radius and pushing container images for functional tests...
✅ Recipe publishing succeeded
✅ Container images build succeeded
⌛ Publishing Bicep Recipes for functional tests...
⌛ Starting corerp-cloud functional tests...
⌛ Starting ucp-cloud functional tests...
✅ Recipe publishing succeeded
⌛ Starting ucp-cloud functional tests...
⌛ Starting corerp-cloud functional tests...
✅ ucp-cloud functional tests succeeded
✅ ucp-cloud functional tests succeeded
✅ ucp-cloud functional tests succeeded
✅ corerp-cloud functional tests succeeded
❌ corerp-cloud functional test failed. Please check the logs for more details
✅ corerp-cloud functional tests succeeded

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.

2 participants