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.17.tar.gz (27.4 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.17-py3-none-any.whl (29.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for anubis_cli-0.0.17.tar.gz
Algorithm Hash digest
SHA256 3f1619333035781ccb395ffd92967c03ec99334b029baa5f01082b4a89a5fee3
MD5 59cd6d031425254fe3737906d56529ca
BLAKE2b-256 3f88c3a58b399630b0cd3b4429d1e1808cdc970a98e4d6aa55a6c1e7187a42f7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for anubis_cli-0.0.17-py3-none-any.whl
Algorithm Hash digest
SHA256 7b684c07b57950cb8c685b6893f3accb9a641542dbbe3a7267deb4756a9b44bc
MD5 bbe56ddbb0c70619e7df75ade04e8bc6
BLAKE2b-256 a646e5d830fddb243b1957f7e2428aa531f6cfb403a419e9345a06a1c7ad12a2

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