---
title: "Clarive - Jumpstart your DevOps Journey"
description: "Make application delivery easy with a simple, powerful and unified workflow. Plan, change, track, and deploy with Clarive."
url: "https://clarive.com"
---

[**New**Clarive HCL: your platform as code](#hcl)

# Jumpstart your DevOps Journey

Make application delivery easy with a simple, powerful and unified workflow.

[Try Now](https://clarive.com/trial) [See a demo](https://clarive.com/schedule-a-demo)

1. Plan
2. Change
3. Track
4. Deploy

## The road to continuous delivery starts here

Clarive is the first tool to deliver an integrated experience to both Dev and Ops.

1. **Plan**  
Define and schedule your milestones, quality gates and releases to match your product goals and ideas.
2. **Change**  
Package source code or any artifact into changesets that support any review, test or deployment workflow.
3. **Track**  
Follow your release progress through stages and environments while collaborating and iterating on kanban boards and topics.
4. **Deploy**  
Automate release pipelines to provision infrastructure, resolve dependencies and deploy components.

## From Development to Production, every step of the way

Bring your DevOps toolchain(s) into a simple and intuitive interface for your team.

![Release 4.2, merged, deploying through DEVELOPMENT and QA and on to PRODUCTION](https://clarive.com/images/home/home-deploy-tags.gif)

## Build, test, provision and release at scale

Clarive manages your environments and your deployments with tight controls and automation. Set up the rules in code or in a visual editor, and watch it roll.

Enterprise scale

10,000+

deployments every minute

![Gartner Magic Quadrant](https://clarive.com/images/home/art/gartner-mq-white.webp)![Forrester](https://clarive.com/images/home/art/forrester-white.webp)

## A blueprint for every team and speed

Pick a Clarive _teamplate_ that fits your delivery mode, complexity and velocity.

- Dev teams  
**End-to-End Delivery**  
Get started with lean delivery and the right workflow. Replace redundant tools, and save time and money.  
[Simplify your toolchain](https://clarive.com/simplify)
- Ops teams  
**Release Automation**  
Centralize all delivery processes, coordinate silos and resolve application dependencies.  
[Why ARA matters](https://clarive.com/blog/why-ara-matters)
- The whole toolchain  
**Orchestration**  
Manage all stages of delivery and make the toolchain work as one, from demand planning to development to deployment.  
[A strategy for insight](https://clarive.com/blog/3-things-to-get-more-control-over-your-teams)

## Your delivery platform, as code

Servers, rules, projects, roles and users export as plain HCL files. Review each change as a diff, and import the same files into TEST or PROD.

- **Names, not database ids**  
Objects point at each other by name, like `generic_server.web01`, so one file imports into TEST or PROD.
- **A tree you keep in Git**  
`cla export` writes one file per object family and one per rule, and leaves unchanged files alone.
- **Drift you can see**  
`cla diff` exits 1 when an installation no longer matches its files, so a scheduled job catches a change made by hand.

[Read the HCL docs](https://docs.clarive.com/en/hcl/overview/) [Install Clarive](https://clarive.com/install)

cla-objects/prod/generic\_server.hcl

```
generic_server "web01" {
  hostname        = "web01.example.invalid"
  description     = "Front office box"
  os              = "win"
  connect_timeout = 60
  proxy           = generic_server.bastion
}

moved {
  to    = generic_server.web01
  names = ["oldweb", "web-01"]
}

removed {
  at = generic_server.decommissioned
}
```

```
pipeline "deploy-foo" {
  name = "Deploy Foo"
  when = "promote"

  step "PRE" {
    sh "Restart app" {
      host     = generic_server.alpha
      run      = "systemctl restart app"
      on_error = "continue"
    }
  }

  if "is prod" {
    cond = "bl eq 'PROD'"

    log "say it" {
      msg   = "hello"
      level = "warn"
    }
  }

  else {
    perl "run perl" {
      code = <<-EOT
        my $x = 1;
        return $x;
      EOT
    }
  }
}
```

```
project "foo" {
  variables = {
    "*"   = {
      db_host   = "foo-db"
      db_pass   = null
      "foo.bar" = "baz"
    }
    PROD  = {
      app_server = generic_server.foo-server
      _natures   = {
        "nature.java" = { heap = "2g" }
      }
    }
    COMUN = {}
  }
}
```

```
role "deploy-manager" {
  name        = "Deploy Manager"
  description = "Runs deployments"
  mailbox     = "deploys@example.invalid"

  grant {
    action = "action.job.create"
    bounds {
      bl = "PROD"
    }
  }

  grant {
    action = "action.job.delete"
    deny   = true
  }
}
```

```
user "alice" {
  email    = "alice@example.invalid"
  realname = "Alice Foo"
  groups   = [group.developers]
}

user "bob" {
  grant {
    id_role = role.deploy-manager
    type    = "project"
    mid     = [project.bar, project.baz]
  }
}
```

HCLServers point at each other by name, never by database id. moved {} records a rename, removed {} a deletion.A whole rule as one block: a step, a remote shell command, if/else and embedded Perl.Variables per environment: "\*" applies everywhere and PROD overrides it. Exported with --secret omit, a password is null: no secret in the file, and the target keeps its own.Permissions as grant blocks, limited to PROD with bounds or denied outright.Group membership and project grants, written as references to other files.16 lines

### Output an assistant can write, formatting a person can review

Coding assistants work in text files, and their changes are reviewed as diffs. HCL puts an installation's configuration in that form: the assistant drafts, and a person approves exactly what will be imported.

cla import

```
$ cla -c prod import ./cla-objects/prod --prune
  1. CREATE    generic_server.back-office (15 attrs)
  2. UPDATE    generic_server.front-desk (1 attr)
  3. RENAME    generic_server.web01 <- generic_server.oldweb
  4. DELETE    generic_server.gone -- Not present in the imported files
1 create, 1 update, 1 rename, 1 delete
Apply these 4 change(s)? [y/N]
```

diagnostics

```
foo.hcl:2:9: error[HCL017]: Bare identifier 'bar' used as a value -- did you mean the string "bar" or a reference like resource.<class>.<name>?
  2 |   run = bar
    |         ^
```

- **One canonical form**  
The same configuration always writes the same bytes. Run `cla fmt`over an assistant's edit and the diff holds only real changes.
- **The file is the whole story**  
No expressions, no loops, and `${...}` is plain text. What a reviewer reads is what gets imported.
- **A plan before every write**  
`cla import` lists each change and asks first, defaulting to no. `cla import-plan` saves the plan as JSON for review.
- **Errors it can act on**  
Each problem names the file, line and column, with a stable code a person or a model can look up and fix.

## Don't leave anyone out

Hybrid architectures, speeds and methodologies can all become part of DevOps.

- **Deliver on DockerKubernetesOpenShiftHelmPodmanAmazon ECSNomad**  
DevOps that runs on containers. Run images from any Docker registry right inside your pipeline, managed by Clarive.  
One HCL rule applies your manifests, waits for the rollout and undoes it if the pods never come up, with a cluster and namespace per environment.  
The same rule with oc in place of kubectl, deploying to the OpenShift project that each environment's variables name.  
Upgrade the release and wait for it to come up, or roll back to the previous revision, ConfigMaps included, from the same rule.  
On a plain Podman host, the rule's step pulls the new image and restarts the systemd service that runs the container.  
Register a new task definition, point the service at it with the AWS CLI, and wait until the service is stable again.  
Submit the job file with nomad job run, and Nomad's auto\_revert goes back to the last stable version if a deployment fails.  
[Docker images](https://clarive.com/blog/release-7-0-11-docker-image-management) [Deploying to Kubernetes](https://clarive.com/blog/deploying-to-kubernetes-with-clarive)
- **From mainframe to mobile**  
Enterprise DevOps that takes in the mainframe and the phone app, and everything in between, in one delivery workflow.  
[Mainframe](https://clarive.com/blog/mainframe-deployment) [Mobile](https://clarive.com/blog/a-full-mobile-delivery-automation-setup-in-5-minutes)
- **Run on your rules**  
Rule-based automation keeps delivery pipelines uncomplicated, written in code or visually with simple if-this-then-that rules.  
[Rule-driven automation](https://clarive.com/blog/rule-driven-automation)

## Complex platforms, super flexibility, fine-grained control?

Get our Enterprise version.

[Go Enterprise](https://clarive.com/enterprise) [See a demo](https://clarive.com/schedule-a-demo)

## Clarive is the workflow of choice for thousands of users and over a million pipeline executions a day

![Banco de Corrientes](https://clarive.com/images/clients/banco-corrientes.jpg)

![Gartner](https://clarive.com/images/clients/gartner.jpg)

![ArchitectGroup](https://clarive.com/images/clients/architect-group.png)

![GeneXus](https://clarive.com/images/clients/genexus.jpg)

![VASS](https://clarive.com/images/clients/vass.jpg)

![BPost](https://clarive.com/images/clients/bpost.jpg)

![Forrester](https://clarive.com/images/clients/forrester.jpg)

![Ovum](https://clarive.com/images/clients/ovum.jpg)

![Bankia](https://clarive.com/images/clients/bankia.jpg)

![Jazztel](https://clarive.com/images/clients/jazztel-orange.png)

![TATA](https://clarive.com/images/clients/tata.jpg)

![RPerformance](https://clarive.com/images/clients/rperformance.jpg)

![Banco Formosa](https://clarive.com/images/clients/banco-formosa.jpg)

![Profesia](https://clarive.com/images/clients/profesia.jpg)

![European Central Bank](https://clarive.com/images/clients/european-central-bank.jpg)

![JacTravel](https://clarive.com/images/clients/jactravel.jpg)

![Orange](https://clarive.com/images/clients/orange.jpg)

![Dasa Forerunner](https://clarive.com/images/clients/dasa-forerunner.jpg)

![Cancer Research](https://clarive.com/images/clients/cancer-research.jpg)

![Sabadell](https://clarive.com/images/clients/sabadell.jpg)

![RSI](https://clarive.com/images/clients/rsi.jpg)

![WIPRO](https://clarive.com/images/clients/wipro.jpg)

![Soflab](https://clarive.com/images/clients/soflab.jpg)

![El Corte Ingles](https://clarive.com/images/clients/el-corte-ingles.jpg)

![Archinova](https://clarive.com/images/clients/archinova.jpg)

![CollabNet](https://clarive.com/images/clients/collabnet.jpg)

![TUI](https://clarive.com/images/clients/tui.jpg)

![TSB](https://clarive.com/images/clients/tsb.jpg)

![Stefanini](https://clarive.com/images/clients/stefanini.jpg)

![Telefonica](https://clarive.com/images/clients/telefonica.jpg)

![Devoteam](https://clarive.com/images/clients/devoteam.jpg)

![Emerasoft](https://clarive.com/images/clients/emerasoft.jpg)

![Bantotal](https://clarive.com/images/clients/bantotal.jpg)
