This experimental tool is a Poetry Plugin to support workflows in a multi-project repository.
Make sure you are using at least Poetry 1.2.0b3. To install this preview release, run:
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/install-poetry.py | python - --preview
Install this plugin:
poetry plugin add poetry-workspace-plugin2
The original package was released by Martin Liu, a former OpenDoor employee. Before he left, he re-released the project under the OpenDoor PyPI account.
A workspace is a collection of Poetry projects that share a single environment.
[tool.poetry]
name = "code"
version = "0.1.0"
description = "Opendoor Python workspace"
authors = ["Developers <developers@opendoor.com>"]
[[tool.poetry.source]]
name = "pypi-local"
url = "https://opendoor.jfrog.io/opendoor/api/pypi/pip/simple"
secondary = true
[tool.poetry.workspace]
include = [
"lib/**",
"workspace/**",
]
exclude = [
"lib/dev-tools",
"lib/legacy",
"lib/template/**",
]
# IMPORTANT: This pyproject.toml file declares dependencies for the shared Python
# workspace. If your app does not belong to the
# workspace (i.e. not included in the `include` section above) then do not add your
# app dependencies here, it will have no effect. Even if your app does belong to
# the workspace, prefer adding app specific dependencies in your app's project. This
# section is reserved for workspace level constraints.
[tool.poetry.dependencies]
python = "~3.9"
virtualenv = "^20.10.0"
[tool.poetry.dev-dependencies]
"opendoor.dev-tools" = {path = "lib/dev-tools", develop = true}
"opendoor.tools" = {path = "tools", develop = true}