Skip to content

Add Claude slash command for creating a dev env#1420

Merged
istio-testing merged 1 commit intoistio-ecosystem:mainfrom
sridhargaddam:setup-dev-env-slash-cmd
Dec 3, 2025
Merged

Add Claude slash command for creating a dev env#1420
istio-testing merged 1 commit intoistio-ecosystem:mainfrom
sridhargaddam:setup-dev-env-slash-cmd

Conversation

@sridhargaddam
Copy link
Copy Markdown
Contributor

Add "/setup-dev-env" command for setting up a local dev environment with KIND for sidecar as well as ambient profiles.

Key changes:

  • The "/setup-dev-env" supports both sidecar and ambient profiles.
  • The sail operator, built from local source code is deployed to the kind cluster.
  • Sample apps (sleep and httpbin) are installed using the kustomization files.
  • Connectivity is validated using the sample apps.
  • A short summary along with some useful next steps is suggested at the end of the command run.

Assisted-by: Claude

Add "/setup-dev-env" command for setting up a local dev environment with
KIND, a local operator build, Istio, sample apps, and connectivity tests.

Key changes:
- The "/setup-dev-env" supports both sidecar and ambient profiles.
- The sail operator, built from local source code is deployed to the
  kind cluster.
- Sample apps (sleep and httpbin) use local kustomization files.
- Connectivity checks include mTLS validation.
- The command ends with a short summary and suggested next steps.

Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
@sridhargaddam sridhargaddam requested a review from a team as a code owner December 2, 2025 13:59
@sridhargaddam
Copy link
Copy Markdown
Contributor Author

Sample Output:

============================================
Development Environment Setup Complete!

CLUSTER
- Type: KIND
- Name: operator-integration-tests
- Status: Running
- Nodes: 1 Ready (v1.34.0)
- KUBECONFIG: /tmp/tmp.BDo4GiYInT/config

SAIL OPERATOR
- Namespace: sail-operator
- Status: Running (1/1)
- Image: localhost:5000/sail-operator:local (local build)
- Version: 1.28.0

ISTIO CONTROL PLANE (AMBIENT MODE)
- Profile: Ambient
- Namespace: istio-system
- Status: Healthy
- Revision: default
- Version: v1.28.0
- istiod: Running (1/1)

ISTIO CNI
- Namespace: istio-cni
- Status: Healthy
- DaemonSet: Running (1 node)

ZTUNNEL
- Namespace: ztunnel
- Status: Healthy
- DaemonSet: Running (1 node)

SAMPLE APPLICATIONS
- Namespace: sample
- Label: istio.io/dataplane-mode=ambient
- sleep: Running (1/1) - no sidecar
- httpbin: Running (1/1) - no sidecar
- Connectivity: Tested (200 OK)
- mTLS: Active (L4 via ztunnel)

SUMMARY
- KIND cluster created
- Sail Operator deployed (local build)
- IstioCNI daemonset running
- Istio control plane ready
- ZTunnel daemonset running
- Sample apps deployed (ambient mode)
- Connectivity test passed
- mTLS working (L4 via ztunnel)
- Ambient mode fully operational

NEXT STEPS

  1. Export KUBECONFIG for your shell:
    export KUBECONFIG=/tmp/tmp.BDo4GiYInT/config

  2. Test additional endpoints:
    kubectl exec -n sample deploy/sleep -- curl http://httpbin.sample:8000/get

  3. Deploy waypoint for L7 features:
    istioctl waypoint apply -n sample
    kubectl label namespace sample istio.io/use-waypoint=waypoint

  4. Deploy bookinfo sample:
    kubectl label namespace default istio.io/dataplane-mode=ambient
    kubectl apply -n default -f https://raw.githubusercontent.com/istio/istio/master/samples/bookinfo/platform/kube/bookinfo.yaml

  5. Check ztunnel workloads:
    istioctl ztunnel-config workloads

DOCUMENTATION
- Ambient mode: docs/common/istio-ambient-mode.adoc
- Waypoints: docs/common/istio-ambient-waypoint.adoc
- Migration guide: docs/migrate-from-sidecar-to-ambient/migration.adoc

CLEANUP
To tear down: kind delete cluster --name operator-integration-tests

@codecov
Copy link
Copy Markdown

codecov bot commented Dec 2, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 80.94%. Comparing base (0a3af7b) to head (ef34424).
⚠️ Report is 5 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1420      +/-   ##
==========================================
+ Coverage   80.64%   80.94%   +0.30%     
==========================================
  Files          44       44              
  Lines        2299     2299              
==========================================
+ Hits         1854     1861       +7     
+ Misses        327      322       -5     
+ Partials      118      116       -2     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown
Collaborator

@mkolesnik mkolesnik left a comment

Choose a reason for hiding this comment

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

Looks cool 👍

Copy link
Copy Markdown
Contributor

@fjglira fjglira left a comment

Choose a reason for hiding this comment

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

Nice!!!

@istio-testing istio-testing merged commit f873ca4 into istio-ecosystem:main Dec 3, 2025
17 checks passed
openshift-service-mesh-bot pushed a commit to openshift-service-mesh-bot/sail-operator that referenced this pull request Dec 3, 2025
* upstream/main:
  Add Claude slash command for creating a dev env (istio-ecosystem#1420)
dgn pushed a commit to dgn/sail-operator that referenced this pull request Mar 17, 2026
Add "/setup-dev-env" command for setting up a local dev environment with
KIND, a local operator build, Istio, sample apps, and connectivity tests.

Key changes:
- The "/setup-dev-env" supports both sidecar and ambient profiles.
- The sail operator, built from local source code is deployed to the
  kind cluster.
- Sample apps (sleep and httpbin) use local kustomization files.
- Connectivity checks include mTLS validation.
- The command ends with a short summary and suggested next steps.

Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
Signed-off-by: Daniel Grimm <dgrimm@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants