Skip to main content

Sbayt Anubis CLI

Project description

𓁢 Anubis CLI

Automated Network & User Base Installation Service

Package version Supported Python versions


📖 Read this in other languages:


Description

This tool defines and organizes a set of automated tasks to configure and manage development/production environments. It uses invoke to structure tasks and rich to enhance the terminal experience.

Main Features

  • Local installation and management of essential CLI tools (AWS CLI, Bitwarden CLI).
  • Configuration of private repositories (CodeArtifact) for pip and uv.
  • Docker service automation (create network, start, stop, clean, build).
  • Verification of security configurations and local environment (Bitwarden, AWS ECR, etc.).

Installation & Basic Usage

Requirements

  • Python >= 3.10
  • uv >= 0.7.0
  • A deployment file (local or global, default: deployment.yml) to define profiles and credentials.

Global Installation

To install the tool globally, you can use uv (recommended) or pipx.

# With uv (recommended)
uv tool install anubis-cli
# With pipx
pipx install anubis-cli

Basic Usage

  1. View available tasks:
anubis help
  1. Check your local environment:
anubis check.environment
  1. Start Docker services with specific profiles:
anubis docker.up --profiles=infra,api --env=prod
  1. Configure pip for CodeArtifact:
anubis aws.configure-pip

Enable autocompletion for anubis:

# For bash
anubis --print-completion-script bash > ~/.anubis-completion.bash
echo "source ~/.anubis-completion.bash" >> ~/.bashrc
source ~/.bashrc

# For zsh
anubis --print-completion-script zsh > ~/.anubis-completion.zsh
echo "source ~/.anubis-completion.zsh" >> ~/.zshrc
source ~/.zshrc

For more details or additional examples, check each task’s documentation using anubis --list or review the individual docstrings.

Development Environment Setup

Requirements

Setup

  1. Create the virtual environment:
uv sync
  1. Verify the virtual environment was created correctly:
uv pip check
uv tree
  1. Use the virtual environment:

    With uv as package manager, you can use the environment in two ways:

    • (Recommended) Run commands inside the virtual environment with uv run <command>:
uv run anubis
uv run pytest -m unit
  • Activate the virtual environment:
source .venv/bin/activate

Dependency Management

Using uv as package manager, you can easily handle project dependencies. When a dependency is installed, it is stored in uv.lock to reproduce the environment elsewhere, and added to pyproject.toml.

  • Install or update a dependency:
uv add <package>
  • Add development dependencies:
uv add --dev <package>
  • Remove a dependency:
uv remove <package>
uv remove --dev <package>
  • Export dependencies to requirements.txt:
uv export --no-hashes -o requirements.txt

Creating a New Package

  1. Build the package:
uv build
  1. A dist folder will be created with the package and its wheel.

  2. Install the package in another project’s virtual environment:

uv tool install --from dist/anubis_cli-{version}-py3-none-any.whl anubis-cli

Contributing

For a complete guide on how to contribute to the project, please review the Contribution Guide.

Reporting Issues

If you believe you've found a defect in this project or its documentation, open an issue in Jira so we can address it.

If you're unsure whether it's a bug, feel free to discuss it in our forums or internal chat—someone will be happy to help.

Code of Conduct

See the Code of Conduct.

License

See the LICENSE file.

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

anubis_cli-0.0.16.tar.gz (26.8 kB view details)

Uploaded Source

Built Distribution

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

anubis_cli-0.0.16-py3-none-any.whl (28.5 kB view details)

Uploaded Python 3

File details

Details for the file anubis_cli-0.0.16.tar.gz.

File metadata

  • Download URL: anubis_cli-0.0.16.tar.gz
  • Upload date:
  • Size: 26.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.5.23

File hashes

Hashes for anubis_cli-0.0.16.tar.gz
Algorithm Hash digest
SHA256 44fa6fc7ad458865b2059ba0f79d142b8d031b3364e43ddd5b9c6fccc3885c99
MD5 e63bfa16ff89808b4d0b2aef4a4748c9
BLAKE2b-256 4e27527c3ccb44abbf8e3288f7b01360de553b7c28aa3135b6ed11771121d700

See more details on using hashes here.

File details

Details for the file anubis_cli-0.0.16-py3-none-any.whl.

File metadata

File hashes

Hashes for anubis_cli-0.0.16-py3-none-any.whl
Algorithm Hash digest
SHA256 c88dba25767af92a824757f8c3b9c661a557347df9c4f810e714f02919760937
MD5 3c79622546ce87c32767ddc4e633b71b
BLAKE2b-256 7110d07b3e55ff65df82ec42f026403d217cb1fdbbff81dad12659175be253b1

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