auth
FreeAuthentication and authorization patterns for Rossoctl services
The English summary is being prepared. Showing the original description.
Create and destroy HyperShift clusters on AWS for testing Rossoctl platform. Manages ephemeral OpenShift clusters.
The English summary is being prepared. Showing the original description.
Run score Not tested
See how to installReview the instructions the agent will receive before you install.
Create, destroy, and manage HyperShift clusters on AWS for testing.
Before creating clusters, ensure setup is complete:
# 1. Run preflight check
./.github/scripts/hypershift/preflight-check.sh
# 2. Setup credentials (first time only, requires IAM admin)
./.github/scripts/hypershift/setup-hypershift-ci-credentials.sh
# 3. Setup local tools (hcp CLI, ansible, etc.)
./.github/scripts/hypershift/local-setup.sh
# Creates: rossoctl-hypershift-custom-<username>
./.github/scripts/hypershift/create-cluster.sh
# Creates: rossoctl-hypershift-custom-pr529
./.github/scripts/hypershift/create-cluster.sh pr529
# Creates: rossoctl-hypershift-custom-mytest
./.github/scripts/hypershift/create-cluster.sh mytest
# More worker nodes and larger instances
REPLICAS=3 INSTANCE_TYPE=m5.2xlarge ./.github/scripts/hypershift/create-cluster.sh
# Specific OCP version
OCP_VERSION=4.19.5 ./.github/scripts/hypershift/create-cluster.sh
| Variable | Default | Description |
|---|---|---|
REPLICAS | 2 | Number of worker nodes |
INSTANCE_TYPE | m5.xlarge | AWS instance type |
OCP_VERSION | 4.20.11 | OpenShift version |
CLUSTER_SUFFIX | username | Suffix for cluster name |
MANAGED_BY_TAG | rossoctl-hypershift-custom | IAM scope prefix |
# Destroy by suffix
./.github/scripts/hypershift/destroy-cluster.sh <suffix>
# Examples:
./.github/scripts/hypershift/destroy-cluster.sh pr529
./.github/scripts/hypershift/destroy-cluster.sh ladas
./.github/scripts/hypershift/destroy-cluster.sh rossoctl-hypershift-custom-pr529
The create script outputs next steps. Typical workflow:
# 1. Set kubeconfig to new cluster
export KUBECONFIG=~/clusters/hcp/<cluster-name>/auth/kubeconfig
# 2. Verify cluster access
oc get nodes
oc get clusterversion
# 3. Deploy Rossoctl platform
./.github/scripts/operator/30-run-installer.sh --env ocp
./.github/scripts/operator/41-wait-crds.sh
# 4. Deploy demo agents
./.github/scripts/operator/71-build-weather-tool.sh
./.github/scripts/operator/72-deploy-weather-tool.sh
./.github/scripts/operator/74-deploy-weather-agent.sh
# 5. Run E2E tests
export AGENT_URL="https://$(oc get route -n team1 weather-service -o jsonpath='{.spec.host}')"
export ROSSOCTL_CONFIG_FILE=deployments/envs/ocp_values.yaml
./.github/scripts/operator/90-run-e2e-tests.sh
Use the full test script for complete workflow:
# Full test: create cluster -> deploy -> test -> keep cluster
./.github/scripts/local-setup/hypershift-full-test.sh --skip-cluster-destroy
# With custom suffix
./.github/scripts/local-setup/hypershift-full-test.sh pr123 --skip-cluster-destroy
# Include cleanup after test
./.github/scripts/local-setup/hypershift-full-test.sh --include-cluster-destroy
Clusters are named: ${MANAGED_BY_TAG}-${CLUSTER_SUFFIX}
| MANAGED_BY_TAG | Use Case | Example |
|---|---|---|
rossoctl-hypershift-custom | Local development (default) | rossoctl-hypershift-custom-ladas |
rossoctl-hypershift-ci | CI/CD pipelines | rossoctl-hypershift-ci-pr529 |
# Check HostedCluster status (use management cluster kubeconfig)
source .env.rossoctl-hypershift-custom # or .env.hypershift-ci
oc get hostedcluster -n clusters
# Check conditions
oc get hostedcluster -n clusters <cluster-name> -o jsonpath='{range .status.conditions[*]}{.type}{": "}{.status}{" - "}{.message}{"\n"}{end}'
# Check NodePool
oc get nodepool -n clusters <cluster-name>
# Debug AWS resources
./.github/scripts/hypershift/debug-aws-hypershift.sh <cluster-name>
# Force remove finalizer (only if AWS resources are cleaned)
oc patch hostedcluster -n clusters <cluster-name> -p '{"metadata":{"finalizers":null}}' --type=merge
# If namespace is stuck terminating
oc delete ns clusters-<cluster-name> --wait=false
oc patch ns clusters-<cluster-name> -p '{"metadata":{"finalizers":null}}' --type=merge
# Before creating clusters, check capacity
./.github/scripts/hypershift/check-quotas.sh
.github/scripts/local-setup/README.md - Local setup documentationdocs/hypershift-hcp-research.md - HyperShift research and architectureNo reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Authentication and authorization patterns for Rossoctl services
The English summary is being prepared. Showing the original description.
Create confidential OAuth2 clients in Keycloak for server-to-service authentication
The English summary is being prepared. Showing the original description.
Configure MLflow with mlflow-oidc-auth plugin for Keycloak OIDC authentication
The English summary is being prepared. Showing the original description.
Configure OpenTelemetry Collector with OAuth2 authentication for trace export
The English summary is being prepared. Showing the original description.
CI pipeline monitoring, status checks, and PR validation workflows
The English summary is being prepared. Showing the original description.
Monitor running CI jobs, wait for completion, create tasks for results
The English summary is being prepared. Showing the original description.