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.5.tar.gz (55.8 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.5-py3-none-any.whl (63.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: weevr_cli-0.1.5.tar.gz
  • Upload date:
  • Size: 55.8 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.5.tar.gz
Algorithm Hash digest
SHA256 0055665ba4d6c5b7fbd10332481ff60fdf336329cbea0fd1591cecaac7662df8
MD5 f62f348a253f3362898f61f6da28343a
BLAKE2b-256 4159eff7e73bce41daeef61c392adae7af65e5a27407067ad45c956788718829

See more details on using hashes here.

File details

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

File metadata

  • Download URL: weevr_cli-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 63.5 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 a33971bc4cf1345389a85cc97ae47fea742aa374f62a72aa8e5ea4eeded08f6c
MD5 d93fae3e01ebafc814c02bdac83245fc
BLAKE2b-256 e96fa8394b2054ce6fab1eae6b67428b87f434126652ce39e79cb48cb09d455d

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