WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Conversation

@vivek-shilimkar
Copy link
Contributor

@vivek-shilimkar vivek-shilimkar commented Nov 25, 2025

What does this PR do?

This PR introduces a comprehensive P0 end-to-end test suite for Alibaba (ACK) hosted clusters. These tests validates the Alibaba Hosted Cluster provisioning.

The new test suite covers the following scenarios:

  • Kubernetes cluster Provisioning: Validates the successful creation and readiness of an Alibaba ACK cluster.
  • Kubernetes Version Upgrade: Confirms that the Kubernetes version of a provisioned cluster can be successfully upgraded.
  • Node Pool Management:
    • Scaling a node pool up and down.
    • Adding a new node pool to an existing cluster.
    • Deleting a node pool from a cluster.

GH-Run - https://github.com/rancher/hosted-providers-e2e/actions/runs/19662001546/job/56310136502

Which issue(s) this PR fixes:

rancher/shepherd#443
rancher/shepherd#449

Comment on lines 57 to 70
uses: ./.github/workflows/main.yaml
secrets: inherit
with:
hosted_provider: alibaba
rancher_version: ${{ inputs.rancher_version || 'head/2.12' }}
k3s_version: ${{ inputs.k3s_version || 'v1.32.1+k3s1' }}
operator_nightly_chart: ${{ inputs.operator_nightly_chart == true || (github.event_name == 'schedule' && true) }}
tests_to_run: ${{ inputs.tests_to_run || 'p0_provisioning' }}
destroy_runner: ${{ inputs.destroy_runner ==true || (github.event_name == 'schedule' && true) }}
runner_template: ${{ inputs.runner_template || 'hosted-prov-e2e-ci-runner-spot-n2-highmem-16-gl-template-v3' }}
rancher_installed: ${{ inputs.rancher_installed || 'hostname/password' }}
downstream_cluster_cleanup: ${{ inputs.downstream_cluster_cleanup == true || (github.event_name == 'schedule' && true) }}
proxy: ${{ inputs.proxy == true }}
qase_run_id: ${{ inputs.qase_run_id || 'auto' }} No newline at end of file

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {}

Copilot Autofix

AI 10 days ago

To address the problem, add a permissions block to .github/workflows/alibaba.yaml, either at the root or under the jobs: key (for individual jobs). Since all jobs in this workflow simply delegate to another workflow and do not require direct write access to repository contents, the safest minimal permissions block is likely:

permissions:
  contents: read

This restricts GITHUB_TOKEN to read-only repository contents, adhering to least privilege. Place the block just after the name: and before the on: key (the recommended convention), so it applies to all jobs in the workflow. No new methods, imports, or definitions are needed.

Suggested changeset 1
.github/workflows/alibaba.yaml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/alibaba.yaml b/.github/workflows/alibaba.yaml
--- a/.github/workflows/alibaba.yaml
+++ b/.github/workflows/alibaba.yaml
@@ -1,5 +1,7 @@
 # This workflow calls the main workflow with custom variables
 name: Alibaba-E2E
+permissions:
+  contents: read
 run-name: Alibaba on Rancher ${{ inputs.rancher_version || 'head/2.13' }} deployed on ${{ inputs.k3s_version || 'v1.34.1+k3s1' }}
 
 on:
EOF
@@ -1,5 +1,7 @@
# This workflow calls the main workflow with custom variables
name: Alibaba-E2E
permissions:
contents: read
run-name: Alibaba on Rancher ${{ inputs.rancher_version || 'head/2.13' }} deployed on ${{ inputs.k3s_version || 'v1.34.1+k3s1' }}

on:
Copilot is powered by AI and may make mistakes. Always verify output.
@vivek-shilimkar vivek-shilimkar force-pushed the alibaba-automation branch 5 times, most recently from 4aa98a5 to fc7f290 Compare December 4, 2025 05:23
@vivek-shilimkar
Copy link
Contributor Author

Copy link
Collaborator

@valaparthvi valaparthvi left a comment

Choose a reason for hiding this comment

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

LGTM. With this being a huge PR, I'm sure there are things that we might have missed, but they should pop up soon enough.
Thank you for working on this!

Please re-run the tests before merging this.

@vivek-shilimkar
Copy link
Contributor Author

here is a re-run - https://github.com/rancher/hosted-providers-e2e/actions/runs/20025279032/job/57421230014

// All head versions and releases from prime-optimus[-alpha] channel require an extraEnv index of 2
// See https://github.com/rancher-sandbox/ele-testhelpers/blob/main/rancher/install.go
extraEnvIndex := 1
if rancherHeadVersion != "" || strings.Contains(rancherChannel, "prime-optimus") {
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
if rancherHeadVersion != "" || strings.Contains(rancherChannel, "prime-optimus") {
if rancherHeadVersion != "" || strings.Contains(rancherChannel, "prime-") {

The channel has been changed from prime-optimus* to prime-rc and prime-alpha recently in ele-testhelpers. IMO you should bump ele go-module first in this PR including ^ and then do this change everywhere in a follow up PR.

github.com/onsi/gomega v1.37.0
github.com/onsi/gomega v1.38.0
github.com/pkg/errors v0.9.1
github.com/rancher-sandbox/ele-testhelpers v0.0.0-20250711071119-c33617a1af7a
Copy link
Collaborator

Choose a reason for hiding this comment

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

This should be bumped to latest version.

Copy link
Collaborator

@thehejik thehejik left a comment

Choose a reason for hiding this comment

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

LGTM at first sight, thanks

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.

5 participants