Skip to content

sign-ca · 核心流程

只描述源码 / 配置文件可直接追溯到的流程。

1. Dockerfile 三阶段构建

来源:Dockerfile:7-93

构建命令在 API 参考 中列出。

2. docker-compose 两阶段启动

来源:docker-compose.yaml:1-46Makefile:59-70README.md:59-90

make test-setup 内部根据 KMS_PIN 是否为空走不同分支(Makefile:59-70):

docker-compose.yaml:41-42ca 服务声明 depends_on: kms

3. sign-ca-cli 离线工具的三个命令

来源:cmd/sign-ca-cli/main.go:33-37, 49-61

USAGE(main.go:49-61):

子命令描述
self-signself-signed root CA cert
gen-csrCSR signed by a KMS-resident key
sign-csrissue cert by signing a CSR with a KMS-resident key

env:SIGN_KMS_ENDPOINT 必填(main.go:59-60)。默认 PKCS#11 库路径:/usr/local/lib/libkms_pkcs11.so,可由 --pkcs11-lib 覆盖(commands/doc.go:19-20)。

每个子命令的完整 flag 列表 [未核] —— 需读 commands/*.go

4. e2e 10 个 scenario 执行顺序

来源:e2e/scenarios_test.go:28-39

各子测的行号见 04-modules · e2e。子测之间共享全局 statee2e_test.go:33-54)。

helpers_test.go 中的工具函数:

函数行号
signECDSALowS37-48
genFabricCAToken50-69
doWithToken71-103
doWithAdminToken105-109
enrollWithBasicAuth111-188

每个 scenario 的请求 body 细节 [未核] —— 在 565 行的 scenarios_test.go 中。

5. 多 CA 部署 bootstrap 顺序

来源:deploy/multi-ca/docker-compose.yaml:1-26 注释。

pg-initprofiles: ["init"] 服务,不会自动随 up 启动(deploy/multi-ca/docker-compose.yaml:66)。

root/ 目录无 service,仅静态文件(详见 deploy/multi-ca/root/README.md,[未读])。