Skip to main content

Crate depl

Crate depl 

Source
Expand description

Deployer

Deployer is a relatively simple, yet powerful localhost CI/CD instrument.

§Features

  1. Local and remote pipeline execution.
  2. Several pipeline drivers: standard (Deployer), shell.
  3. Auto-generate Docker/Podman and Ansible configs and run pipelines inside images or at remote hosts.
  4. Export pipeline to shell scripts, GitHub Actions & GitLab CI configurations.
  5. Resolve variables for actions with .env-files, any shell command or even HashiCorp Vault KV2 storage.
  6. Move build & run caches away of your project’s directory. Only artifacts and .depl/config.yaml file.
  7. Watch and rebuild your project automatically via depl watch.
  8. Use internal versioned content storage and autopatching system on pipeline runs.

§Usability features

  1. YAML configuration format, but you may use only your terminal with Deployer’s TUI.
  2. Global localhost action and pipeline registries.
  3. Built-in documentation via depl docs.
  4. Automatic checks of actions requirements before pipeline execution.
  5. Automatic artifacts delivery to ./artifacts folder.
  6. Wide selection of settings and launch options.

For simple user guides, check README.md and DOCS.md. For software developer look, check DeployerProjectOptions.

Modules§

actions
Actions module.
ansible
Ansible module.
cd
Change directory to pipeline run’s one.
cmd
CMD module.
compose
Compose module.
containered
Containered module.
entities
Entities module.
github
GitHub CI/CD module.
gitlab
GitLab CI/CD module.
globals
Configurations module.
pipelines
Pipelines module.
project
Project module.
remote
Remote module.
run
Run module.
rw
R/W utils module.
storage
Storage module.
systemd
Systemd service module.
tui
Terminal UI module.
utils
Other Deployer utils.
watch
Deployer’s watcher module.

Macros§

bmap
Creates new BTreeMap.
bset
Creates new BTreeSet.

Statics§

ARTIFACTS_DIR
Artifacts directory name.
BUILD_CACHE_LIST
Cache list filename.
CACHE_DIR
Cache directory name.
CTRLC_HANDLER
Current working process to interrupt when I/O is piped.
GLOBAL_CONF
Global configuration filename.
LOGS_DIR
Logs directory name.
PROJECT_CONF
Deployer project configuration’s possible filenames.
STORAGE_DIR
Storage directory name.

Functions§

install_ctrlc_handler
Sets up Ctrl+C interruption to kill the running sub-process and exit.