Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

enhance/multiple tool registries remix #1258

Closed

Conversation

njhale
Copy link
Member

@njhale njhale commented Jan 14, 2025

  • enhance: support multiple tool registries
  • enhance: support enterprise docker builds
  • chore: build and publish enterprise images

Support consuming tools from more than one tool registry at a time.

Replaces the `OBOT_SERVER_TOOL_REGISTRY` option with
`OBOT_SERVER_TOOL_REGISTRIES`. The new option accepts a comma-delimited
string of registry URIs.

e.g.

```bash
export OBOT_SERVER_TOOL_REGISTRIES='github.com/obot-platform/tools,github.com/obot-platform/enterprise-tools'`
```

When overriding a remote registry with a directory in the local filesystem, the `GPTSCRIPT_TOOL_REMAP` environment
variable is used to provide tool reference remapping in GPTScript/Obot.

e.g. Replacing `github.com/obot-platform/tools` with `../tools`:

```bash
export GPTSCRIPT_TOOL_REMAP='github.com/obot-platform/tools=../tools'
```

e.g. Replacing `github.com/obot-platform/tools` with `../tools` and
`github.com/obot-platform/enterprise-tools` with `../enterprise-tools`:

```bash
export GPTSCRIPT_TOOL_REMAP='github.com/obot-platform/tools=../tools,github.com/obot-platform/enterprise-tools=../enterprise-tools'
export OBOT_SERVER_TOOL_REGISTRIES='github.com/obot-platform/tools,github.com/obot-platform/enterprise-tools'`
```

Note:
- `OBOT_SERVER_TOOL_REGISTRIES` should always reference remote tool
  registry repos, never local file paths
- Only `GPTSCRIPT_TOOL_REMAP` needs to be set to swap the default tool
  registry (`github.com/obot-platform/tools`) with a local fork

Signed-off-by: Nick Hale <[email protected]>
Add the `ENTERPRISE` Docker build argument to the Dockerfile and build
scripts. When set to `"true"` the enterprise tool registry will be
packaged in the image and Obot will be configured to use it when the
container starts.

Signed-off-by: Nick Hale <[email protected]>
Add a GitHub workflow step to build and publish enterprise images to
ghcr.io on push to main and tags.

Signed-off-by: Nick Hale <[email protected]>
@njhale njhale force-pushed the enhance/multiple-tool-registries-remix branch from fd1892a to 4c2258b Compare January 15, 2025 08:23
@njhale njhale closed this Jan 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant