baserow, confluence, gitlab, jira, letta, searxng and unifi: each runtime container's environment becomes its tools bundle's env, mount targets folded back into the host paths they came from; baserow and letta reach their service on the published port rather than a container network name. The container, base images, Dockerfile and the module's own bus credential go, and the state directory where only that credential lived. Tool code is unchanged: every client is built from the environment the contributor is handed.
43 lines
795 B
JSON
43 lines
795 B
JSON
{
|
|
"module": "gitlab",
|
|
"version": "1",
|
|
"own-secrets": {
|
|
"token": "${dir:state}/token"
|
|
},
|
|
"resources": [
|
|
{
|
|
"id": "state",
|
|
"type": "directory",
|
|
"mode": "0700",
|
|
"place": "."
|
|
},
|
|
{
|
|
"id": "config",
|
|
"type": "file",
|
|
"path": "${dir:state}/config.json",
|
|
"merge": "json",
|
|
"content": "{}",
|
|
"mode": "0600"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
"container-runtime"
|
|
],
|
|
"build": {
|
|
"artifacts": [
|
|
{
|
|
"name": "tools",
|
|
"kind": "bundle",
|
|
"language": "typescript",
|
|
"entrypoints": [
|
|
"tools/index.js"
|
|
],
|
|
"env": {
|
|
"MESH_GITLAB_TOKEN_FILE": "${dir:state}/token",
|
|
"MESH_GITLAB_CONFIG_FILE": "${dir:state}/config.json"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
}
|