Metadata-Version: 2.4
Name: doploy-cli
Version: 0.2.0
Summary: doploy CLI: watch builds, read logs, and drive Odoo deployments from a terminal or CI
License: MIT
Project-URL: Homepage, https://doploy.io
Project-URL: Documentation, https://docs.doploy.io
Project-URL: Dashboard, https://cloud.doploy.io
Keywords: doploy,odoo,deploy,ci,cli
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development :: Build Tools
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: httpx>=0.27
Dynamic: license-file

# doploy CLI

Watch builds, read logs, and drive your Odoo deployments on [doploy](https://doploy.io)
from a terminal or a CI pipeline.

```bash
pipx install doploy-cli
doploy login          # opens your browser; no tokens to paste
doploy projects
doploy builds <project-id> --type production
doploy logs <build-id> --source test -f
doploy update-modules <build-id> --wait
```

## Auth

`doploy login` signs you in with your doploy account (OAuth, PKCE, loopback
callback). Tokens refresh themselves and live in `~/.config/doploy/config.json`
(mode 0600). Whether the CLI may deploy is controlled per app in
Settings > Connected apps.


## Commands

| Command | What it does |
|---|---|
| `projects` | List your projects |
| `builds <project>` | Recent builds, filter with `--type` |
| `build <id>` | One build in full |
| `tests <build>` | Test failures, `--details` for tracebacks |
| `logs <build>` | Tail logs; `--source build\|test\|odoo`, `-f` to follow |
| `branch create <project> <name>` | Fork a dev branch and queue its build |
| `rebuild <build>` | Queue a rebuild |
| `restart <build>` | Restart the Odoo service |
| `update-modules <build> [modules]` | Run `odoo-bin -u`; `--theme`, `--wait` |
| `backup <build>` | Start a backup; `--wait` |
| `task <id>` | Poll a queued task |
| `logout` | Forget saved credentials |

Production targets always need `--confirm`. Destructive operations
(deletes, restores) are not exposed.
