Skip to content

Commit

Permalink
README: update terminology, add Nomad start command
Browse files Browse the repository at this point in the history
  • Loading branch information
dermetfan committed Oct 26, 2021
1 parent bfdc1ad commit 131e4dc
Showing 1 changed file with 7 additions and 10 deletions.
17 changes: 7 additions & 10 deletions README.md
@@ -1,17 +1,14 @@
# Cicero

*Cicero* is a workflow execution engine. A *workflow* is a description of (dependent) tasks using the *nix* configuration language. The idea behind workflows in cicero is to build reproducible artefacts based on commit hashes or pull requests. Workflows consist of one more more *Tasks*. Tasks can for example be source checkouts, build instructions, or quality gates that measure and ensure certain Key Performance Indicators (KPI) and Key Risk Indicators (KRI).
*Cicero* is a workflow execution engine. A *workflow* is a description of (dependent) steps using the *Nix* configuration language. The idea behind workflows in Cicero is to build reproducible artefacts based on commit hashes or pull requests. Workflows consist of one more more *Steps*. Steps can for example be source checkouts, build instructions, or quality gates that measure and ensure certain Key Performance Indicators (KPI) and Key Risk Indicators (KRI).

*Cicero*’s workflows are flexible enough to build Continuous Integration (CI) and Continuous Deliver (CD) pipelines. It offers a rich Web UI as well as a CLI tool for developers to query and inspect workflows and their associated tasks, as well as the tasks outcomes. Integration with third party applications (e.g. JIRA) is possible, for automatic status updates. By using a declarative approach to tasks, dependencies and intermediate results can be easily cached, and execution parallelised, thus reducing build times.
*Cicero*’s workflows are flexible enough to build Continuous Integration (CI) and Continuous Deliver (CD) pipelines. It offers a rich Web UI as well as a CLI tool for developers to query and inspect workflows and their associated steps, as well as the steps outcomes. Integration with third party applications (e.g. JIRA) is possible, for automatic status updates. By using a declarative approach to steps, dependencies and intermediate results can be easily cached, and execution parallelised, thus reducing build times.

# How To Start A Development Environment
# How To Run

```
nix develop
foreman run liftbridge &
# restart on changes to source files
nix-shell -p ripgrep entr
rg --files | entr -r go run . all
nix run github:input-output-hk/bitte#nomad -- agent -dev \
-config $(nix eval --impure --raw --expr 'builtins.getFlake "github:input-output-hk/nomad-driver-nix" + "/example/agent.hcl"') \
-plugin-dir $(nix build --no-link --json github:input-output-hk/nomad-driver-nix | jq -r .[].outputs.out)/bin &
nix develop -c foreman start
```

0 comments on commit 131e4dc

Please sign in to comment.