jrasell/nomadfiles
A collection of HashiCorp Nomad job files and deployment scripts designed for continuous delivery and automated multi-environment deployments using Jenkins and Levant.
Levant is an open source templating and deployment tool specifically designed for HashiCorp Nomad jobs. It enhances the deployment process by providing realtime feedback and detailed failure messages, which help users gain greater insight and understanding of their application deployments. Levant offers advanced job status checking, especially for system and batch jobs, ensuring that jobs, evaluations, and allocations reach their desired states with feedback at every stage. It dynamically updates job group counts in the rendered templates if the Nomad job is already running on the cluster, which helps maintain accurate deployment configurations. One of Levant's key features is failure inspection, where it inspects each allocation and logs detailed information about deployment events, aiding in debugging without the need to query the cluster retrospectively. It also supports canary auto promotion, allowing automatic promotion of canary deployments after a specified healthy time period, which is useful in automated environments. Levant supports multiple variable file formats including JSON, Terraform, YAML, and YML for template variable declarations. Additionally, Levant tracks auto revert deployments if a job deployment fails to meet its healthy threshold and auto-revert is enabled, providing visibility into rollback outcomes. The tool can be installed via official binaries, Go toolkit, Docker images, or built from source. It integrates with Nomad and Consul clients and supports environment variable configuration. Levant also includes templating capabilities for variable substitution and built-in functions to add timestamps or retrieve information from Consul. Levant is actively maintained by HashiCorp and encourages community contributions. It is a valuable tool for users managing Nomad job deployments, offering enhanced control, feedback, and automation features to streamline deployment workflows and improve reliability.
https://github.com/hashicorp/levant
A collection of HashiCorp Nomad job files and deployment scripts designed for continuous delivery and automated multi-environment deployments using Jenkins and Levant.
Nomctx is a command-line tool that simplifies and accelerates switching between multiple HashiCorp Nomad clusters and namespaces by managing environment variables and authentication contexts efficiently.
NACP is a proxy for the HashiCorp Nomad API that enables policy-driven validation and mutation of job data using Open Policy Agent and webhooks to enforce organizational policies before job submission.