Skip to main content

No project description provided

Project description

Incant

Incant is a frontend for Incus that provides a descriptive way to define and manage development environments. It simplifies the creation, configuration, and provisioning of Incus instances using YAML-based configuration files.

Incant is inspired by Vagrant, and intended as an Incus-based replacement for Vagrant.

Features

  • Declarative Configuration: Define your development environments using simple YAML files.
  • Instance Management: Easily create, start, stop, and destroy instances.
  • Provisioning Support: Run provisioning scripts automatically.
  • Shared Folder Support: Mount the current working directory into the instance.

Installation

FIXME

Ensure you have Python installed and incus available on your system.

# Clone the repository
$ git clone https://github.com/your-repo/incant.git
$ cd incant

# Install dependencies
$ pip install .

Usage

Configure Incant

Incant looks for a configuration file named incant.yaml, incant.yaml.j2, or incant.yaml.mako in the current directory. Here is an example:

instances:
  my-instance:
    image: ubuntu:22.04
    vm: false # use a container, not a KVM virtual machine
    provision:
      - echo "Hello, World!"
      - apt-get update && apt-get install -y curl

Initialize and Start an Instance

$ incant up

or for a specific instance:

$ incant up my-instance

Provision an Instance

$ incant provision

or for a specific instance:

$ incant provision my-instance

Destroy an Instance

$ incant destroy

or for a specific instance:

$ incant destroy my-instance

View Configuration (especially useful if you use Mako or Jinja2 templates)

$ incant dump

Migrating from Vagrant

Incant is inspired by Vagrant and shares some of its features.

FIXME

License

This project is licensed under the MIT License. See the LICENSE file 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

incus_incant-0.0.2.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

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

incus_incant-0.0.2-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file incus_incant-0.0.2.tar.gz.

File metadata

  • Download URL: incus_incant-0.0.2.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.11.2 Linux/6.12.12+bpo-amd64

File hashes

Hashes for incus_incant-0.0.2.tar.gz
Algorithm Hash digest
SHA256 5c7249367441d3232dff7434d232389b7901544bc3ba2d02917f0d46721cb7ac
MD5 a2d535a9be0a494814f0e51b0f06b4e3
BLAKE2b-256 c7c100a9b0f1d4ecece4dc1ea3851db50498c01c5f1288f12f3b0564cec9f433

See more details on using hashes here.

File details

Details for the file incus_incant-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: incus_incant-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 11.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.11.2 Linux/6.12.12+bpo-amd64

File hashes

Hashes for incus_incant-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ab25880ae8f7e7c70fa2d29f0e8a498734014374fbd4656a5847201f428a853f
MD5 99c7b55a72ea3174bc7a6759f85da1dc
BLAKE2b-256 4dce23672f204bc9e3902325c09fd1cbc118dca80a81ec6d4d8ef5919419ae90

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