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.2.tar.gz (13.6 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.2-py3-none-any.whl (16.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: weevr_cli-0.1.2.tar.gz
  • Upload date:
  • Size: 13.6 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.2.tar.gz
Algorithm Hash digest
SHA256 abb10753efccdd87ce607289d77d3bc200dc6dd889b8aebb5fbcd2937fed1e47
MD5 f1c24894e72a7f184984005a09839113
BLAKE2b-256 021ecc52b66737be06b5693e531fd225c2f888c943ae0a645a77d9722696e2da

See more details on using hashes here.

File details

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

File metadata

  • Download URL: weevr_cli-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 16.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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 94d5e9fa88d36335a92ce5c86cc46c96f453f1bd181c97ccf95a0abf8bfe1b91
MD5 3ed5dd75c40cf94870502403f81ca21e
BLAKE2b-256 180a214d85bab1632691c386eadf557a8a0fbc255bde3437c43ac51613c499a2

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