DEBOPS(1)

NAME
debops - Your Debian-based data center in a box

SYNOPSIS

debops [--version] [-h|--help] <section> [<command>] [<args>]

DESCRIPTION

The DebOps project is a set of Ansible playbooks, roles, and optional scripts which can be used to manage IT infrastructure based on Debian or Ubuntu operating systems, from singhle hosts to entire data centers. The project can be used to bootstrap bare metal environment, set up local DNS, DHCP, PXEboot services and from there install and configure Debian or Ubuntu hardware and virtual machines, as well as LXC and Docker containers.

DebOps includes a set of Python scripts which provide a wrapper around Ansible and other tools. The scripts can be used to create and maintain "project directories" which contain Ansible inventory, any installed Ansible Collections and other data related to a given environment. You can also execute Ansible playbooks from DebOps or other Ansible Collections as well as your own playbooks using simple commands against the current environment.

THE DEBOPS COMMAND

The debops command provides multiple sub-commands, some of which are split into sections.

debops project
    This section includes commands used to create and maintain the "project directories" which contain one or multiple Ansible inventories, PKI infrastructure, GPG keyring, and other resources used in a particular environment.

debops exec
    This command can be used to execute Ansible modules ad-hoc against a given environment. You can use any arguments accepted by the ansible command - they will be executed in the DebOps project context, including the runtime environment variables and with the ansible/secret/ directory unlocked if necessary.

debops run
    This command can be used to execute Ansible playbooks against a given environment. The playbooks used can come either from the DebOps Python package (included by default), from an Ansible Collection, or from the ansible/playbooks/ directory in a given project. You can also specify all ansible-playbook arguments to affect the Ansible execution;

debops check
    This command is the same as the debops run command above, but automatically adds the --diff and --check ansible-playbook options to ensure that the playbooks are executed in a check mode;

debops env
    This command can be used to inspect the environment variables which will be present when various DebOps commands are executed. It can also be used to run shell commands in DebOps environment, which is a handy shortcut for using Ansible ecosystem with DebOps project directories.

debops config
    This command allows the user to inspect and manipulate the DebOps configuration options in various formats;

    You can find more information about these subcommands in the DebOps documentation, debops-* manual pages or by running them with the --help option.

  Options

-h, --help
    Display the help and usage information

--version
    Display the version of the debops scripts

  Verbose mode and logging

The debops script can send log messages about its operation to the syslog service. Using configuration options, users can specify where to send the log messages, default log level and facility.

Users can specify the --verbose or -v flag in the debops subcommands to increase the script verbosity. The flag enables log output to the standard error (stderr) stream. Multiple uses of the flag increase the log level from the default WARNING to NOTICE, INFO and DEBUG with -vvv respectively.

To view the logs from debops using journald service, run the command:

journalctl -f _COMM=debops

  Environment variables

These environment variables can be used to affect the environment during script execution:

DEBOPS_CMD_ANSIBLE
    Path to the ansible binary used by DebOps. Can be overridden by configuration files.

DEBOPS_CMD_ANSIBLE_PLAYBOOK
    Path to the ansible-playbook binary used by DebOps. Can be overridden by configuration files.

DEBOPS_CMD_GPG
    Path to the gpg binary used by DebOps. Can be overridden by configuration files.

DEBOPS_CMD_ENCFS
    Path to the encfs binary used by DebOps. Can be overridden by configuration files.

DEBOPS_CMD_UMOUNT
    Path to the umount binary used by DebOps on Darwin-based hosts. Can be overridden by configuration files.

DEBOPS_CMD_FUSERMOUNT
    Path to the fusermount binary used by DebOps. Can be overridden by configuration files.

SEE ALSO

Manual pages for debops subcommands
    debops-project(1), debops-exec(1), debops-run(1), debops-check(1), debops-env(1), debops-config(1)

Manual pages for Ansible roles included in DebOps
    debops.ansible(5), debops.apt(5), ... debops.<role_name>(5)

Full DebOps documentation in the HTML format
    https://docs.debops.org/

AUTHOR
Maciej Delmanowski, Nick Janetakis, Robin Schneider and others

COPYRIGHT
2014-2024, Maciej Delmanowski, Nick Janetakis, Robin Schneider and others