poetry-plugin-ivcap
A custom Poetry plugin that adds a poetry ivcap command for local and Docker-based deployments.
Example Configuration
Add to your pyproject.toml:
[tool.poetry-plugin-ivcap]
service-file = "service.py"
service-id = "urn:ivcap:service:ac158a1f-dfb4-5dac-bf2e-9bf15e0f2cc7"
port = 8077
# docker
# docker-run-opts = { port = 8079 }```
## Installation
```bash
poetry self add poetry-plugin-ivcap
Usage
poetry ivcap run
poetry ivcap docker-build
poetry ivcap docker-run
poetry ivcap docker-publish
poetry ivcap service-register
poetry ivcap create-service-idget
poetry ivcap tool-register
To get help on the currently installed version
% poetry ivcap
IVCAP plugin
Supporting the development of services and tools for the IVCAP platform
Available subcommands:
run Run the service locally
docker-build Build the docker image for this service
docker-run Run the service's docker image locally
docker-publish Publish the service's docker image to IVCAP
service-register Register the service with IVCAP
create-service-id Create a unique service ID for the service
tool-register Register the service as an AI Tool with IVCAP
Example:
poetry ivcap run
Configurable optiosn in pyproject.toml:
[tool.poetry-plugin-ivcap]
service-file = "service.py" # The Python file that implements the service
service-file = "service.py"
service-id = "urn:ivcap:service:ac158a1f-dfb4-5dac-bf2e-9bf15e0f2cc7" # A unique identifier for the service
docker-build-template = "docker buildx build -t #DOCKER_NAME# ."
docker-run-template = "docker run -rm -p #PORT#:#PORT#"
Development
Test the plugin as part of the "global" installed poetry
# 1) remove any existing installed copy first
poetry self remove poetry-plugin-ivcap
# 2) install this checkout as an editable plugin
poetry self add -e $PWD
# 3) verify Poetry sees the plugin
poetry self show plugins
Switch back:
poetry self remove poetry-plugin-ivcap
poetry self add poetry-plugin-ivcap@latest
Build the Plugin Package
poetry build
This creates .whl and .tar.gz files in the dist/ directory.
Publish to PyPI
Create an account at https://pypi.org/account/register/
Add your credentials:
poetry config pypi-token.pypi <your-token>
Publish:
poetry publish --build
Optional: Test on TestPyPI First
To verify your setup without publishing to the real PyPI:
poetry config repositories.test-pypi https://test.pypi.org/legacy/
poetry publish -r test-pypi --build
Then test installing via:
poetry self add --source test-pypi poetry-plugin-deploy
Metadata
Release files for poetry-plugin-ivcap 0.6.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| poetry_plugin_ivcap-0.6.1.tar.gz | 12.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| poetry_plugin_ivcap-0.6.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.6 kB
Release files / poetry_plugin_ivcap-0.6.1.tar.gz
| Download URL | poetry_plugin_ivcap-0.6.1.tar.gz |
|---|---|
| Size | 12.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ebcffe323128aef9af12a2628acb3ab01010b9c603dbd39f72ded3fbd170b5ec
|
|
BLAKE2b-256 checksum How to use checksums |
6022a2291f28750e6ebd2f14fff6f106aa62b265ae325ffc0968b8cc2960fd6f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.10.10 Darwin/24.6.0
|
Release files / poetry_plugin_ivcap-0.6.1-py3-none-any.whl
| Download URL | poetry_plugin_ivcap-0.6.1-py3-none-any.whl |
|---|---|
| Size | 16.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2a44000a837db4ff862765a73d314df0075257ee7a24c80904da1fa1c95d0131
|
|
BLAKE2b-256 checksum How to use checksums |
3aa0da684046996b43797c71ef654690f8874b6443ed9c1f5e3e4fe5c250d7df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.1.3 CPython/3.10.10 Darwin/24.6.0
|