auth
FreeAuthentication and authorization patterns for Rossoctl services
The English summary is being prepared. Showing the original description.
Run full end-to-end test workflows for Rossoctl. Supports Kind and HyperShift clusters with automated setup and testing.
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.
Run complete end-to-end test workflows that create clusters, deploy Rossoctl, and run tests.
# Full test with Kind cluster
./.github/scripts/local-setup/kind-full-test.sh
# Login to any OpenShift cluster
oc login https://api.your-cluster.example.com:6443 -u kubeadmin -p <password>
# Full test (no AWS/.env needed)
./.github/scripts/local-setup/openshift-full-test.sh
# Show help
./.github/scripts/local-setup/openshift-full-test.sh --help
# Setup first (one-time)
./.github/scripts/hypershift/preflight-check.sh
./.github/scripts/hypershift/setup-hypershift-ci-credentials.sh
./.github/scripts/hypershift/local-setup.sh
# Full test with HyperShift cluster (keeps cluster after)
source .env.rossoctl-hypershift-custom
./.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
# Show help
./.github/scripts/local-setup/hypershift-full-test.sh --help
The kind-full-test.sh script runs:
# Keep cluster after test (default)
./.github/scripts/local-setup/kind-full-test.sh
# Destroy cluster after test
./.github/scripts/local-setup/kind-full-test.sh --include-cluster-destroy
# Skip specific phases
SKIP_DEPLOY=true ./.github/scripts/local-setup/kind-full-test.sh
SKIP_TESTS=true ./.github/scripts/local-setup/kind-full-test.sh
The hypershift-full-test.sh script runs:
# With custom cluster suffix
./.github/scripts/local-setup/hypershift-full-test.sh pr529
# Keep cluster (default with --skip-cluster-destroy)
./.github/scripts/local-setup/hypershift-full-test.sh --skip-cluster-destroy
# Destroy cluster after test
./.github/scripts/local-setup/hypershift-full-test.sh --include-cluster-destroy
# 1. Create cluster
./.github/scripts/kind/create-cluster.sh
# 2. Deploy platform
./.github/scripts/kind/deploy-platform.sh
# 3. Run E2E tests
./.github/scripts/kind/run-e2e-tests.sh
# 4. Access UI
./.github/scripts/kind/access-ui.sh
# 1. Create cluster
./.github/scripts/hypershift/create-cluster.sh
# 2. Set kubeconfig
export KUBECONFIG=~/clusters/hcp/<cluster-name>/auth/kubeconfig
# 3. Deploy platform
./.github/scripts/operator/30-run-installer.sh --env ocp
./.github/scripts/operator/41-wait-crds.sh
# 4. Deploy 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
# 6. Cleanup (when done)
./.github/scripts/hypershift/destroy-cluster.sh <suffix>
# Show all deployed services and access URLs
./.github/scripts/local-setup/show-services.sh
Output includes:
For testing just the operator:
./.github/scripts/local-setup/deploy-rossoctl-operator.sh
| Variable | Description |
|---|---|
SKIP_DEPLOY | Skip platform deployment |
SKIP_TESTS | Skip E2E tests |
SKIP_OLLAMA | Skip Ollama installation (Kind) |
SKIP_LLAMA | Skip Ollama in HyperShift tests |
CLUSTER_NAME | Custom cluster name |
KUBECONFIG | Kubernetes config file (management cluster for HyperShift) |
HOSTED_KUBECONFIG | Hosted cluster kubeconfig (for running middle phases only) |
HyperShift workflows use two separate kubeconfigs:
| Kubeconfig | Purpose | Location |
|---|---|---|
| Management cluster | Create/destroy hosted clusters | Set via KUBECONFIG in .env.rossoctl-hypershift-custom |
| Hosted cluster | Deploy Rossoctl, run tests | ~/clusters/hcp/<cluster-name>/auth/kubeconfig |
The script automatically switches between them at phase boundaries.
When only running install/agents/test (skipping create/destroy), you can set just HOSTED_KUBECONFIG:
# No need to source .env - just set the hosted cluster kubeconfig
export HOSTED_KUBECONFIG=~/clusters/hcp/rossoctl-hypershift-custom-ladas/auth/kubeconfig
./.github/scripts/local-setup/hypershift-full-test.sh --skip-cluster-create --skip-cluster-destroy
# All namespaces
kubectl get pods -A | grep -v Running
# Specific namespace
kubectl get pods -n team1
kubectl get pods -n rossoctl-system
# Agent logs
kubectl logs -n team1 deployment/weather-service --tail=100
# Operator logs
kubectl logs -n rossoctl-system -l app=rossoctl-operator --tail=100
kubectl get events -A --sort-by='.lastTimestamp' | tail -30
# Just rerun tests (don't redeploy)
./.github/scripts/kind/run-e2e-tests.sh
# Or for HyperShift
./.github/scripts/operator/90-run-e2e-tests.sh
| Aspect | Kind | HyperShift |
|---|---|---|
| Setup time | ~15 min | ~25 min |
| Cost | Free | AWS costs |
| Platform | Docker | AWS |
| Use case | Dev, quick tests | Real OCP testing |
| Cleanup | Instant | ~5 min |
| Resources | Local machine | AWS EC2 |
.github/scripts/local-setup/README.md - Local setup documentationNo 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.