auth
FreeAuthentication and authorization patterns for Rossoctl services
The English summary is being prepared. Showing the original description.
Deploy and manage Rossoctl operator, agents, and tools on Kubernetes. Handles installer, CRDs, pipelines, and demo deployments.
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.
Deploy and manage Rossoctl operator, agents, and tools on Kubernetes clusters.
Deploy/build commands produce large output. Always redirect to files:
export LOG_DIR="${LOG_DIR:-${WORKSPACE_DIR:-/tmp}/rossoctl-deploy}"
mkdir -p "$LOG_DIR"
# Pattern: redirect build/deploy output
command > $LOG_DIR/<name>.log 2>&1; echo "EXIT:$?"
# On failure: Task(subagent_type='Explore') with Grep to find errors
# Deploy everything to Kind cluster
./.github/scripts/operator/30-run-installer.sh
# Wait for CRDs and apply pipeline template
./.github/scripts/operator/41-wait-crds.sh
# Set kubeconfig for target cluster
export KUBECONFIG=~/clusters/hcp/<cluster-name>/auth/kubeconfig
# Deploy with OCP values
./.github/scripts/operator/30-run-installer.sh --env ocp
# Wait for CRDs and apply pipeline template
./.github/scripts/operator/41-wait-crds.sh
Full demo deployment workflow:
# 1. Setup team1 namespace (if not exists)
./.github/scripts/operator/70-setup-team1-namespace.sh
# 2. Build weather tool (Tekton pipeline)
./.github/scripts/operator/71-build-weather-tool.sh
# 3. Deploy weather tool
./.github/scripts/operator/72-deploy-weather-tool.sh
# 5. Deploy weather agent
./.github/scripts/operator/74-deploy-weather-agent.sh
# Set agent URL (Kind)
export AGENT_URL="http://localhost:8000"
kubectl port-forward -n team1 svc/weather-service 8000:8000 &
# Set agent URL (OpenShift)
export AGENT_URL="https://$(oc get route -n team1 weather-service -o jsonpath='{.spec.host}')"
# Set config file
export ROSSOCTL_CONFIG_FILE=deployments/envs/dev_values.yaml # Kind
export ROSSOCTL_CONFIG_FILE=deployments/envs/ocp_values.yaml # OpenShift
# Run tests
./.github/scripts/operator/90-run-e2e-tests.sh
| Script | Description |
|---|---|
30-run-installer.sh | Run platform installer |
41-wait-crds.sh | Wait for Rossoctl CRDs to be available |
| Script | Description |
|---|---|
70-setup-team1-namespace.sh | Setup team1 namespace with required resources |
| Script | Description |
|---|---|
71-build-weather-tool.sh | Build weather tool via Tekton pipeline |
72-deploy-weather-tool.sh | Deploy weather tool Component CR |
74-deploy-weather-agent.sh | Deploy weather agent Component CR |
75-deploy-weather-tool-shipwright.sh | Alternative: deploy with Shipwright |
| Script | Description |
|---|---|
90-run-e2e-tests.sh | Run E2E test suite |
| Variable | Default | Description |
|---|---|---|
--env | dev | Environment (dev, ocp, test) |
KUBECONFIG | ~/.kube/config | Kubernetes config |
| Variable | Default | Description |
|---|---|---|
AGENT_URL | required | Agent endpoint URL |
ROSSOCTL_CONFIG_FILE | required | Values file for config |
PHOENIX_URL | (optional) | Phoenix observability URL |
# View all options
./.github/scripts/operator/30-run-installer.sh --help
# Common options:
./.github/scripts/operator/30-run-installer.sh --env dev # Kind/local
./.github/scripts/operator/30-run-installer.sh --env ocp # OpenShift
./.github/scripts/operator/30-run-installer.sh --env test # CI testing
# Operator pods
kubectl get pods -n rossoctl-system -l app=rossoctl-operator
# Operator logs
kubectl logs -n rossoctl-system -l app=rossoctl-operator --tail=100
# CRDs
kubectl get crd | grep rossoctl
# All components
kubectl get components -A
# Shipwright builds
kubectl get builds -A
kubectl get buildruns -A
# Deployments
kubectl get deployments -n team1
# Pipeline runs
kubectl get pipelineruns -n team1
# Task runs
kubectl get taskruns -n team1
# Pipeline logs
tkn pipelinerun logs -n team1 <pipeline-run-name>
# Kind (HTTPRoutes)
kubectl get httproutes -A
# OpenShift (Routes)
oc get routes -A
# Check installer logs
# (Logs are output during run)
# Check namespace
kubectl get ns rossoctl-system
# Check pods
kubectl get pods -n rossoctl-system
# Check CRD installation
kubectl get crd | grep rossoctl
# Re-run wait script
./.github/scripts/operator/41-wait-crds.sh
# Check Tekton pipeline run
kubectl get pipelineruns -n team1
# View pipeline logs
kubectl logs -n team1 -l tekton.dev/pipelineRun=<run-name>
# Check Tekton controller
kubectl logs -n tekton-pipelines deployment/tekton-pipelines-controller --tail=100
# Check pod status
kubectl get pods -n team1 -l app=weather-service
# View agent logs
kubectl logs -n team1 deployment/weather-service --tail=100
# Check service
kubectl get svc -n team1 weather-service
# Test connectivity
kubectl port-forward -n team1 svc/weather-service 8000:8000
curl http://localhost:8000/.well-known/agent.json
deployments/README.md - Deployment guidedocs/getting-started/install.md - Installation guidedocs/components.md - Component detailsNo 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.