Skip to main content

CLI for managing weevr projects — scaffolding, validation, and deployment to Microsoft Fabric.

Project description

weevr-cli

CLI for managing weevr projects — scaffolding, validation, and deployment to Microsoft Fabric.

What it does

The weevr engine runs inside Fabric notebooks; the CLI runs on your workstation and in CI/CD pipelines. It bridges the gap between your Git repository and the Fabric Lakehouse where weevr project files live.

  • weevr init — Scaffold a new weevr project with the standard directory layout
  • weevr new — Generate thread, weave, or loom files from templates
  • weevr validate — Check YAML schema conformance and cross-file reference integrity
  • weevr deploy — Sync project files to a Fabric Lakehouse via the OneLake API
  • weevr status — Diff local files against what's deployed
  • weevr list — View project structure and dependency relationships
  • weevr schema — Manage validation schemas

Installation

# With uv (recommended)
uv tool install weevr-cli

# With pipx
pipx install weevr-cli

# With pip
pip install weevr-cli

Quick start

# Create a new project
weevr init my-project
cd my-project

# Generate some files
weevr new thread orders
weevr new weave customer_dim
weevr new loom daily_load

# Validate
weevr validate

# Deploy to your Fabric Lakehouse
weevr deploy --target dev

Configuration

The CLI reads its configuration from .weevr/cli.yaml in your project root:

targets:
  dev:
    workspace_id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    lakehouse_id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    path_prefix: "weevr/my-project"
  prod:
    workspace_id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    lakehouse_id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

default_target: dev

schema:
  version: "1.11"

All config values can be overridden via CLI flags for CI/CD use.

Authentication

The CLI uses Azure DefaultAzureCredential, which automatically picks up credentials from:

  • az login (local development)
  • Environment variables (CI/CD pipelines)
  • Managed identity (Fabric notebooks)
  • VS Code Azure extension

No custom auth configuration needed.

Requirements

  • Python 3.11+
  • Azure CLI (az login) or equivalent credential for deploy/status commands

Development

# Prerequisites: Python 3.11, uv, Git

# Setup
uv sync --dev

# Quality checks
uv run ruff check .          # Lint
uv run ruff format --check . # Format check
uv run pyright .                # Type check
uv run pytest                # Tests

See CONTRIBUTING.md for the full development guide.

License

Apache 2.0 — see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

weevr_cli-0.1.4.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

weevr_cli-0.1.4-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

Details for the file weevr_cli-0.1.4.tar.gz.

File metadata

  • Download URL: weevr_cli-0.1.4.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for weevr_cli-0.1.4.tar.gz
Algorithm Hash digest
SHA256 f4854816d8ab78af8532ca6a6672884ca63bfd2586585931c58486cca324fe9f
MD5 237d7afc2f6e8f4e4d3781cfb093ac72
BLAKE2b-256 dcf405f8fc331d072744a8e175bbb788f1a92b6809cd9df88e678b2cd0248ff1

See more details on using hashes here.

File details

Details for the file weevr_cli-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: weevr_cli-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 16.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for weevr_cli-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 84b21376b67317a1cff0f71c7a346adf49a5ce1e0273124cee19178f9a40916e
MD5 0b108b1bccfc3cf2844e3d1e78f4b153
BLAKE2b-256 3022e0578124f0bf029853f70391da098a5d6d3bbb819e975f8a7487fd61edf9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page