# Setup Self Service 
部署微服务, 该 action 主要做两个工作
1. 对于输入的 "{{ inputs.source_stack_name }}" 模板, 复制该模板到个人 Pulumi stack 下
2. 根据 "{{ pulumi-update-key-value }}" 渲染个人 Pulumi stack, 并进行部署

# inputs
|name |required |description |
|-----|---------|------------|
|PULUMI_ACCESS_TOKEN|true |Pulumi token, 会作为环境变量支持 Pulumi 操作相关的鉴权
|PULUMI_CONFIG_PASSPHRASE|true |Pulumi passphrase, 会作为环境变量支持 Pulumi 操作相关的鉴权|ecr_repo|false |Login to the ECR repository if configured and has value.|
|repo|true| 仓库名称, 用于生成**仓库独立**的 Pulumi stack
|actorGithubID|true| Github ID, 用于生成**用户独立**的 Pulumi stack
|source_stack_name|true| 期望被复制的 Pulumi stack 模板
|pulumi_dir|true| Pulumi 文件地址
|pulumi-update-key-value|false| 需要更新 value 值的 Pulumi 属性, 格式为"[{"key": ..., "value": ...}]"

# steps
## Compose Stack Name
按既定格式返回指定 Pulumi Stack 名称
格式为 "personal-stack-{{ inputs.repo }}-{{ inputs.actorGithubID }}"

## Copy And Select Pulumi Stack
从 ${{ inputs.source_stack_name }} 复制 Pulumi Stack 属性到新生成的 Pulumi Stack 中

## Deploy
1. 根据 {{ inputs.pulumi-update-key-value }} 更新新生成的 Pulumi Stack 属性
2. 对新生成的 Pulumi Stack 执行 Pulumi up

