66 lines
1.6 KiB
Markdown
66 lines
1.6 KiB
Markdown
# GIS Actions 本地部署指南(双平台)
|
||
|
||
## 架构
|
||
|
||
GIS Actions 是**本地执行器**,从套件市场下载脚本包并在本地 Docker 中运行:
|
||
|
||
```
|
||
用户 / Agent 指定套件 ID
|
||
→ gis-actions(本地)
|
||
→ 从 Suite Market 下载脚本包
|
||
→ 解析 workflow.yaml
|
||
→ docker run gis-base + 脚本
|
||
→ 结果写入本地 /tmp/output/
|
||
```
|
||
|
||
## 环境要求
|
||
|
||
- Linux 系统(Debian / Ubuntu)
|
||
- Docker
|
||
- Python 3.10+(已随系统安装)
|
||
|
||
## 安装
|
||
|
||
```bash
|
||
# 下载并安装 gis-actions(一个 deb 包含全部功能)
|
||
curl -sLO https://packages.mercator.cn/public/gis-actions/latest.deb
|
||
sudo dpkg -i latest.deb
|
||
```
|
||
|
||
安装后 `agc` 命令即可用。postinst 会自动下载 gis-base 镜像。
|
||
|
||
## 配置(可选)
|
||
|
||
```bash
|
||
# 设置 API Key(从 https://auth.mercator.cn 获取)
|
||
export AGENTGIS_API_KEY=mk_xxxxxxxxxxxxx
|
||
```
|
||
|
||
## 运行套件
|
||
|
||
```bash
|
||
# 通过套件 ID 执行
|
||
agc run /tmp/output --suite-id <suite-id> --input key=value
|
||
|
||
# 示例
|
||
agc run /tmp/output --suite-id 2c99a1cb-84a5-42dd-9147-1c8e8f7f2941 --input buffer_distance=0.5
|
||
```
|
||
|
||
## 包结构
|
||
|
||
```
|
||
/usr/bin/agc # CLI 入口
|
||
/usr/share/gis-actions/cli.py # CLI 逻辑
|
||
/usr/share/gis-actions/download_and_run.py # 下载+执行
|
||
/usr/share/gis-actions/steps_executor.py # 步骤执行器
|
||
```
|
||
|
||
## 执行流程
|
||
|
||
1. `agc run` 启动
|
||
2. 解析套件 ID(调用 Suite Market API 获取 package_url)
|
||
3. 下载脚本包 → 解压到工作目录
|
||
4. 读取 workflow.yaml,按 steps 顺序执行
|
||
5. 每个步骤在 Docker 容器中运行(gis-base 镜像)
|
||
6. 结果写入本地输出目录
|