Details
-
Epic
-
Resolution: Unresolved
-
Undefined
-
None
-
None
-
None
-
None
-
Allow the rendering of hosted cluster and nodepool yaml specs without underlying infrastructure in the CLI
-
False
-
None
-
False
-
Not Selected
-
To Do
-
0
-
0%
-
0
-
0
-
0
Description
Goal
- As a user, I would like to be able to create hosted cluster and nodepool yaml specs without any underlying infrastructure in the HyperShift/HCP CLI.
Why is this important?
- As a user, I would like to be able to render the yaml specifications without the underlying infrastructure to be in place.
Scenarios
- ...
Acceptance Criteria
- Dev - Has a valid enhancement if necessary
- CI - MUST be running successfully with tests automated
- QE - covered in Polarion test plan and tests implemented
- Release Technical Enablement - Must have TE slides
- ...
Dependencies (internal and external)
- ...
Previous Work (Optional):
Currrently, this is not possible and will result in errors. For example:
- When my current cluster is AWS, but I wanted to see what an Agent NodePool spec looks like.
% ./bin/hcp create nodepool agent --cluster-name $CLUSTER_NAME --name $AMD64_NODEPOOL_NAME --node-count=$NODEPOOL_REPLICAS --render 2023-09-07T16:07:14-04:00 ERROR Failed to create nodepool {"error": "NodePool platform type Agent must be HostedCluster type AWS"}github.com/openshift/hypershift/cmd/nodepool/core.(*CreateNodePoolOptions).CreateRunFunc.func1 /Users/brcox/bryan-cox/hypershift/cmd/nodepool/core/create.go:39github.com/spf13/cobra.(*Command).execute /Users/brcox/bryan-cox/hypershift/vendor/github.com/spf13/cobra/command.go:916github.com/spf13/cobra.(*Command).ExecuteC /Users/brcox/bryan-cox/hypershift/vendor/github.com/spf13/cobra/command.go:1044github.com/spf13/cobra.(*Command).Execute /Users/brcox/bryan-cox/hypershift/vendor/github.com/spf13/cobra/command.go:968github.com/spf13/cobra.(*Command).ExecuteContext /Users/brcox/bryan-cox/hypershift/vendor/github.com/spf13/cobra/command.go:961main.main /Users/brcox/bryan-cox/hypershift/product-cli/main.go:60runtime.main /usr/local/go/src/runtime/proc.go:250Error: NodePool platform type Agent must be HostedCluster type AWSNodePool platform type Agent must be HostedCluster type AWS
- When my kubeconfig is not set, but I try to render a hosted cluster
$ ./bin/hcp create cluster aws --name example-hosted-cluster --node-pool-replicas=$NODEPOOL_REPLICAS --base-domain $BASE_DOMAIN --pull-secret $PULL_SECRET --aws-creds $AWS_CREDS --region $REGION --release-image quay.io/openshift-release-dev/ocp-release-nightly@sha256:40276e15b407fd81f85929a3c50ab5263a62f97022e280294ebc42a2e16e3708 --render 2023-09-07T16:31:24-04:00 ERROR Failed to create cluster {"error": "cannot discover HyperShift API version: Unauthorized"}github.com/openshift/hypershift/product-cli/cmd/cluster/aws.NewCreateCommand.func1 /Users/brcox/bryan-cox/hypershift/product-cli/cmd/cluster/aws/create.go:58github.com/spf13/cobra.(*Command).execute /Users/brcox/bryan-cox/hypershift/vendor/github.com/spf13/cobra/command.go:916github.com/spf13/cobra.(*Command).ExecuteC /Users/brcox/bryan-cox/hypershift/vendor/github.com/spf13/cobra/command.go:1044github.com/spf13/cobra.(*Command).Execute /Users/brcox/bryan-cox/hypershift/vendor/github.com/spf13/cobra/command.go:968github.com/spf13/cobra.(*Command).ExecuteContext /Users/brcox/bryan-cox/hypershift/vendor/github.com/spf13/cobra/command.go:961main.main /Users/brcox/bryan-cox/hypershift/product-cli/main.go:60runtime.main /usr/local/go/src/runtime/proc.go:250Error: cannot discover HyperShift API version: Unauthorizedcannot discover HyperShift API version: Unauthorized
Open questions:
- …
Done Checklist
- CI - CI is running, tests are automated and merged.
- Release Technical Enablement <link to Feature Enablement Presentation>
- DEV - Upstream documentation merged: <link to meaningful PR or GitHub Issue>
- DEV - Enhancement merged: <link to meaningful PR or GitHub Issue>
- QE - Test plans in Polarion: <link or reference to Polarion>
- QE - Automated tests merged: <link or reference to automated tests>
- DOC - Downstream documentation merged: <link to meaningful PR>