Epic: Add Volcengine Provider Support
Overview
Add Volcengine (火山引擎 - ByteDance's cloud platform) as a new cloud provider for ServerlessInsight. This epic tracks all tasks required to implement full provider support.
Background
Volcengine is ByteDance's cloud computing platform, launched in 2020. It provides cloud services with a strong focus on AI/ML integration, video/media services, serverless computing, and enterprise cloud services.
Platform Comparison
| Aspect |
Volcengine |
Aliyun |
Tencent Cloud |
| Parent Company |
ByteDance |
Alibaba |
Tencent |
| Founded |
2020 |
2009 |
2013 |
| Serverless |
veFaaS |
FC (Function Compute) |
SCF |
| SDK Model |
Modular (@volcengine/*) |
One SDK (@alicloud/*) |
Modular (@tencentcloud/*) |
| Authentication |
AK/SK + STS |
AK/SK + STS |
AK/SK + STS |
Service Mapping
| Service |
Volcengine Name |
ServerlessInsight Equivalent |
| Function Compute |
函数服务 (veFaaS) |
FC3 (Aliyun), SCF (Tencent) |
| Object Storage |
TOS |
OSS (Aliyun), COS (Tencent) |
| API Gateway |
API Gateway |
API Gateway (Aliyun) |
| IAM |
IAM |
RAM (Aliyun) |
| VPC |
VPC |
VPC (Aliyun) |
SDK Information
NPM Packages (Recommended)
# Core
@volcengine/sdk-core
# Services
@volcengine/vefaas # Function Service
@volcengine/tos-sdk # Object Storage
@volcengine/iam # Identity & Access Management
@volcengine/apigateway # API Gateway
@volcengine/sts # Security Token Service
Client Initialization Pattern
import { VefaasClient, CreateFunctionCommand } from "@volcengine/vefaas";
const client = new VefaasClient({
accessKeyId: "YOUR_AK",
secretAccessKey: "YOUR_SK",
region: "cn-beijing",
});
const command = new CreateFunctionCommand({
Name: "my-function",
Runtime: "nodejs/18",
Handler: "index.handler",
MemoryMb: 128,
RequestTimeout: 30,
Code: { ZipFile: codeBase64 },
});
await client.send(command);
Environment Variables
export VOLCSTACK_ACCESS_KEY_ID="your-access-key"
export VOLCSTACK_SECRET_ACCESS_KEY="your-secret-key"
Supported Runtimes (veFaaS)
| Language |
Runtimes |
| Node.js |
nodejs/18, nodejs/16, nodejs/14 |
| Python |
python/3.10, python/3.9, python/3.8 |
| Go |
golang/1 |
| Java |
java/11, java/8 |
Available Regions
| Region |
Region ID |
| 华北2(北京) |
cn-beijing |
| 华东2(上海) |
cn-shanghai |
| 华南1(广州) |
cn-guangzhou |
| 亚太东南(柔佛) |
ap-southeast-1 |
Architecture
Following the established provider pattern in ServerlessInsight:
src/
├── common/
│ ├── providerEnum.ts # Add VOLCENGINE enum
│ └── volcengineClient/ # NEW: SDK wrappers
│ ├── index.ts
│ ├── vefaasOperations.ts # Function compute operations
│ ├── tosOperations.ts # Object storage operations
│ ├── iamOperations.ts # IAM operations
│ ├── apigwOperations.ts # API Gateway operations
│ └── types.ts
├── stack/
│ └── volcengineStack/ # NEW: Provider implementation
│ ├── index.ts
│ ├── planner.ts
│ ├── deployer.ts
│ ├── destroyer.ts
│ ├── vefaasTypes.ts
│ ├── vefaasResource.ts
│ ├── vefaasPlanner.ts
│ ├── vefaasExecutor.ts
│ ├── tosTypes.ts
│ ├── tosResource.ts
│ ├── tosPlanner.ts
│ ├── tosExecutor.ts
│ ├── apigwTypes.ts
│ ├── apigwResource.ts
│ ├── apigwPlanner.ts
│ └── apigwExecutor.ts
└── lang/
├── en.ts # Add i18n keys
└── zh-CN.ts
Implementation Phases
| Phase |
Issue |
Focus |
Est. Effort |
Status |
| Phase 1 |
#180 |
Foundation & Infrastructure |
2-3 days |
📋 Pending |
| Phase 2 |
#181 |
veFaaS Function Service |
5-7 days |
📋 Pending |
| Phase 3 |
#182 |
TOS Object Storage |
3-5 days |
📋 Pending |
| Phase 4 |
#183 |
API Gateway Integration |
4-6 days |
📋 Pending |
| Phase 5 |
#184 |
VPC, IAM & Advanced Features |
5-7 days |
📋 Pending |
| Phase 6 |
#185 |
Documentation, Samples & Testing |
3-4 days |
📋 Pending |
Total Estimated Effort: 22-32 days
Acceptance Criteria
Must Have
Should Have
Nice to Have
Sub-Issues
| Issue |
Title |
Phase |
| #180 |
Provider Foundation & Infrastructure |
Phase 1 |
| #181 |
veFaaS Function Service Support |
Phase 2 |
| #182 |
TOS Object Storage Support |
Phase 3 |
| #183 |
API Gateway Integration |
Phase 4 |
| #184 |
VPC, IAM & Advanced Function Features |
Phase 5 |
| #185 |
Documentation, Samples & Testing |
Phase 6 |
References
Official Documentation
SDK & Tools
Infrastructure as Code References
Last Updated: Research completed ✓
Progress:
Epic: Add Volcengine Provider Support
Overview
Add Volcengine (火山引擎 - ByteDance's cloud platform) as a new cloud provider for ServerlessInsight. This epic tracks all tasks required to implement full provider support.
Background
Volcengine is ByteDance's cloud computing platform, launched in 2020. It provides cloud services with a strong focus on AI/ML integration, video/media services, serverless computing, and enterprise cloud services.
Platform Comparison
Service Mapping
SDK Information
NPM Packages (Recommended)
Client Initialization Pattern
Environment Variables
Supported Runtimes (veFaaS)
Available Regions
Architecture
Following the established provider pattern in ServerlessInsight:
Implementation Phases
Total Estimated Effort: 22-32 days
Acceptance Criteria
Must Have
Should Have
Nice to Have
Sub-Issues
References
Official Documentation
SDK & Tools
Infrastructure as Code References
Last Updated: Research completed ✓
Progress: