Skip to content

Action and opensandbox deploy#6572

Merged
c121914yu merged 5 commits intomainfrom
v4.14.9-dev
Mar 16, 2026
Merged

Action and opensandbox deploy#6572
c121914yu merged 5 commits intomainfrom
v4.14.9-dev

Conversation

@c121914yu
Copy link
Collaborator

No description provided.

c121914yu and others added 5 commits March 16, 2026 20:18
* Update action (#6571)

* action

* action

* action

* action

* action

* build: integrate OpenSandbox as Agent Execution Sandbox

# Conflicts:
#	deploy/args.json
#	deploy/dev/docker-compose.cn.yml
#	deploy/dev/docker-compose.yml
#	deploy/docker/cn/docker-compose.milvus.yml
#	deploy/docker/cn/docker-compose.oceanbase.yml
#	deploy/docker/cn/docker-compose.pg.yml
#	deploy/docker/cn/docker-compose.seekdb.yml
#	deploy/docker/cn/docker-compose.zilliz.yml
#	deploy/docker/global/docker-compose.milvus.yml
#	deploy/docker/global/docker-compose.oceanbase.yml
#	deploy/docker/global/docker-compose.pg.yml
#	deploy/docker/global/docker-compose.seekdb.yml
#	deploy/docker/global/docker-compose.ziliiz.yml
#	deploy/templates/docker-compose.prod.yml
#	document/public/deploy/docker/cn/docker-compose.milvus.yml
#	document/public/deploy/docker/cn/docker-compose.oceanbase.yml
#	document/public/deploy/docker/cn/docker-compose.pg.yml
#	document/public/deploy/docker/cn/docker-compose.seekdb.yml
#	document/public/deploy/docker/cn/docker-compose.zilliz.yml
#	document/public/deploy/docker/global/docker-compose.milvus.yml
#	document/public/deploy/docker/global/docker-compose.oceanbase.yml
#	document/public/deploy/docker/global/docker-compose.pg.yml
#	document/public/deploy/docker/global/docker-compose.seekdb.yml
#	document/public/deploy/docker/global/docker-compose.ziliiz.yml

* remove invalid  action

---------

Co-authored-by: Archer <545436317@qq.com>
Co-authored-by: xqvvu <whoeverimf5@gmail.com>
Copilot AI review requested due to automatic review settings March 16, 2026 12:40
@github-actions
Copy link

Preview sandbox Image:

registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-pr:fastgpt_sandbox_04bf2d9bcf0a8bc824dbefdc63b1a9a0aae356fe

@github-actions
Copy link

Preview fastgpt Image:

registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-pr:fastgpt_04bf2d9bcf0a8bc824dbefdc63b1a9a0aae356fe

@c121914yu c121914yu merged commit 567d408 into main Mar 16, 2026
13 checks passed
@github-actions
Copy link

Preview mcp_server Image:

registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-pr:fastgpt_mcp_server_04bf2d9bcf0a8bc824dbefdc63b1a9a0aae356fe

@c121914yu c121914yu deleted the v4.14.9-dev branch March 16, 2026 12:47
@github-actions
Copy link

Coverage Report

Status Category Percentage Covered / Total
🔵 Lines 50.55% 18976 / 37533
🔵 Statements 50.55% 18976 / 37533
🔵 Functions 55.05% 583 / 1059
🔵 Branches 87.68% 3466 / 3953
File CoverageNo changed files found.
Generated in workflow #13 for commit 6aed9a4 by the Vitest Coverage Report Action

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds OpenSandbox deployment support alongside updates to CI preview workflows, enabling both docker-compose-based production deployment and a standalone Helm chart for deploying the OpenSandbox controller/server on Kubernetes.

Changes:

  • Added docker-compose.prod.copy.yml template integrating opensandbox-server into the existing FastGPT production compose stack.
  • Introduced a full Helm chart under deploy/helm/opensandbox/ (CRDs, templates, values, scripts, examples, docs) for deploying OpenSandbox Controller + Server and optionally creating Pools.
  • Updated preview GitHub Actions workflows and deploy/args.json to support standardized Aliyun registry secret passing and OpenSandbox image metadata.

Reviewed changes

Copilot reviewed 46 out of 46 changed files in this pull request and generated 14 comments.

Show a summary per file
File Description
deploy/templates/docker-compose.prod.copy.yml New production compose template including OpenSandbox server and config.
deploy/helm/opensandbox/values.yaml Default Helm values for controller/server/metrics/RBAC/pools.
deploy/helm/opensandbox/values-e2e.yaml Minimal Helm values intended for E2E testing.
deploy/helm/opensandbox/templates/servicemonitor.yaml Optional ServiceMonitor for controller metrics scraping.
deploy/helm/opensandbox/templates/serviceaccount.yaml ServiceAccount creation for controller/server.
deploy/helm/opensandbox/templates/server-service.yaml Kubernetes Service for the OpenSandbox server.
deploy/helm/opensandbox/templates/server-ingress.yaml Optional Ingress for the server.
deploy/helm/opensandbox/templates/server-deployment.yaml Deployment for the OpenSandbox server with ConfigMap config.
deploy/helm/opensandbox/templates/server-configmap.yaml ConfigMap rendering config.toml (+ BatchSandbox template file).
deploy/helm/opensandbox/templates/pools.yaml Generates Pool CRs from values.yaml.
deploy/helm/opensandbox/templates/poddisruptionbudget.yaml Optional PDB for controller HA deployments.
deploy/helm/opensandbox/templates/metrics-service.yaml Service for controller metrics endpoint.
deploy/helm/opensandbox/templates/metrics-rbac.yaml ClusterRoles/Bindings related to metrics auth and metrics access.
deploy/helm/opensandbox/templates/leader-election-rolebinding.yaml RBAC RoleBinding for leader election.
deploy/helm/opensandbox/templates/leader-election-role.yaml RBAC Role for leader election.
deploy/helm/opensandbox/templates/extra-roles.yaml Optional end-user viewer/editor ClusterRoles for CR management.
deploy/helm/opensandbox/templates/deployment.yaml Deployment for the controller manager.
deploy/helm/opensandbox/templates/clusterrolebinding.yaml ClusterRoleBinding for controller permissions.
deploy/helm/opensandbox/templates/clusterrole.yaml ClusterRole rules for controller reconciliation.
deploy/helm/opensandbox/templates/_helpers.tpl Helm helper templates for names/labels/images/namespace.
deploy/helm/opensandbox/templates/NOTES.txt Post-install guidance shown by Helm.
deploy/helm/opensandbox/scripts/uninstall.sh Helper script to uninstall the Helm release and optionally CRDs/namespace.
deploy/helm/opensandbox/scripts/install.sh Interactive installer script for deploying the chart.
deploy/helm/opensandbox/scripts/e2e-test.sh E2E validation script (install → verify → SDK test → uninstall).
deploy/helm/opensandbox/scripts/README.md Documentation for install/uninstall/e2e scripts.
deploy/helm/opensandbox/examples/pool-sdk-with-tasks.yaml Example Pool manifest supporting SDK + task-executor.
deploy/helm/opensandbox/examples/pool-sdk-compatible.yaml Example Pool manifest supporting SDK via execd.
deploy/helm/opensandbox/examples/pool-kubectl-only.yaml Example Pool manifest for kubectl-only workflows.
deploy/helm/opensandbox/examples/pool-examples.md Extended Pool configuration documentation.
deploy/helm/opensandbox/examples/pool-agent-production.yaml Production-oriented Pool example with extensive inline guidance.
deploy/helm/opensandbox/examples/batchsandbox-with-tasks.yaml Example BatchSandbox manifest executing heterogeneous tasks.
deploy/helm/opensandbox/examples/batchsandbox-basic.yaml Example BatchSandbox manifest for non-pooled mode.
deploy/helm/opensandbox/examples/README.md Examples landing page + usage scenarios and guidance.
deploy/helm/opensandbox/examples/DIRECTORY_STRUCTURE.md Explains the examples directory layout and rationale.
deploy/helm/opensandbox/crds/sandbox.opensandbox.io_pools.yaml Pool CRD definition (capacitySpec + template).
deploy/helm/opensandbox/crds/sandbox.opensandbox.io_batchsandboxes.yaml BatchSandbox CRD definition (poolRef/template/taskTemplate).
deploy/helm/opensandbox/README.md Helm chart README (install/configuration/SDK usage).
deploy/helm/opensandbox/Makefile Common Helm chart dev/test targets (lint/template/install/etc.).
deploy/helm/opensandbox/Chart.yaml Chart metadata (name/version/appVersion).
deploy/helm/opensandbox/CHANGELOG.md Initial chart changelog.
deploy/helm/opensandbox/.helmignore Standard Helm ignore patterns.
deploy/args.json Adds OpenSandbox images/tags to deploy image metadata.
.github/workflows/preview-fastgpt-push.yml Reusable workflow: push preview images with standardized secret names.
.github/workflows/preview-fastgpt-build.yml Build preview images; passes secrets explicitly to reusable push workflow.
.github/workflows/preview-docs-push.yml Reusable workflow: push docs image + deploy preview; standardized secrets.
.github/workflows/preview-docs-build.yml Docs image build; passes required secrets + job output to push workflow.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment on lines +328 to +330
# Create Pool admin role
poolAdmin:
enabled: true
Comment on lines +295 to +298
minBufferSize: 2
maxBufferSize: 5
capacity: 10
sandboxTemplate:

## 🎉 Important Update

**Starting from version v0.2.0, the Helm chart deploys an agent-pool by default** without manual creation!
Comment on lines +17 to +19
kubectl delete configmap sdk-test-script -n "$NAMESPACE" --ignore-not-found=true > /dev/null 2>&1 || true
kubectl delete job sdk-test-job -n "$NAMESPACE" --ignore-not-found=true > /dev/null 2>&1 || true
kubectl delete pod server-health-check -n "$NAMESPACE" --ignore-not-found=true > /dev/null 2>&1 || true
Comment on lines +376 to +384
- **Pool Usage Guide**: `/data/home/cz/sandbox-test/pool-analysis/opensandbox_pool_usage_guide.md`
- **Architecture Diagrams**: `/data/home/cz/sandbox-test/pool-analysis/pool_architecture.txt`
- **Verification Test Scripts**: `/data/home/cz/sandbox-test/pool-analysis/test_pool_behavior.py`

### Helm Deployment Configuration

- **Main values configuration**: `/data/home/cz/OpenSandbox/kubernetes/helm-chart/values.yaml`
- **E2E test configuration**: `/data/home/cz/OpenSandbox/kubernetes/helm-chart/values-e2e.yaml`
- **Main README**: `/data/home/cz/OpenSandbox/kubernetes/README.md`
Comment on lines +78 to +84
minBufferSize: 2
maxBufferSize: 5
capacity: 10
sandboxTemplate:
spec:
image: ubuntu:latest
command: ["sleep", "infinity"]
spec:
replicas: 3
ttlSecondsAfterFinished: 3600
sandboxTemplate:
Comment on lines +30 to +31
# - /data/home/cz/sandbox-test/pool-analysis/opensandbox_pool_usage_guide.md
# - /data/home/cz/OpenSandbox/kubernetes/helm-chart/values.yaml (查看 pools 配置)
Comment on lines +52 to +53
volumes:
- ./mongo/data:/data/db
Comment on lines +133 to +137
extra_hosts:
- 'host.docker.internal:host-gateway' # Enable access to host machine
volumes:
- /var/run/docker.sock:/var/run/docker.sock
configs:
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.

3 participants