Skip to content

Requirements

This page covers the project requirements that Devops strives to implement.

Project details

Aspect Detail
Status DRAFT
Last updated 2025 September 28

Scope & requirements

  • The CLI shall support executing tasks defined in the YAML file.
  • The CLI shall allow listing all tasks with devops list.
  • The CLI shall support task categories and descriptions.
  • The CLI shall allow setting temporary environment variables scoped to a task.
  • The CLI shall log output at configurable verbosity levels.
  • The CLI shall capture and propagate exit codes of executed commands.
  • The CLI shall fail gracefully if configs or tasks are missing/malformed.

User stories

Project setup

As a developer I want to run a predefined task from my config file So that I can quickly execute repeatable workflows

Environment management

As a DevOps engineer I want to define environment variables per task in the config file So that I can run tasks with the correct configuration without polluting my global environment

Configuration validation

As a DevOps engineer I want to validate my config file before running tasks So that I can catch errors early and avoid unexpected failures

Observability

As a developer I want to control logging verbosity with flags So that I can troubleshoot issues when tasks fail

Error handling

As a developer I want the CLI to return the correct exit code based on task execution So that I can integrate into scripts and CI/CD pipelines

Non-functional requirements

  • The CLI should capture and propagate exit codes of executed commands
  • Error messages should be human-readable and provide actionable hints
  • The CLI should not execute arbitrary code beyond what is explicitly defined in the YAML file