> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/release-orchestration/3.0/handle-failures/overview/getting-started.md).

# Getting Started

Release Orchestration provides a unified framework for modeling, scheduling, automating, and tracking complex software releases across teams, tools, and environments. It orchestrates every step from planning (using Harness AI) through production deployment, feature flag enablement, and monitoring — giving you end-to-end visibility across the entire release lifecycle.

### How the entities fit together <a href="#how-the-entities-fit-together" id="how-the-entities-fit-together"></a>

The following diagram shows how the core entities in Release Orchestration relate to each other:

```mermaid
flowchart TD
    RC["Release Calendar"] -->|schedules| RG["Release Group"]
    RG -->|contains| R["Release"]
    R -->|executes| P["Process"]
    P -->|composed of| PH["Phases"]
    PH -->|contain| A["Activities"]
    A -->|can be| AUTO["Automated (pipeline-backed)"]
    A -->|can be| MAN["Manual (sign-offs / approvals)"]
    A -->|can be| SUB["Subprocess (nested process)"]
    AS["Activity Store"] -->|provides reusable activities to| PH
    IS["Input Store"] -->|supplies input sets to| P
```

* A [**Process**](https://github.com/iKettles/harness-gitbook/tree/main/3k-release-management/execution/handling-failures/use-release-orchestration/release-orchestration-processes/overview.md) is a reusable release blueprint made up of [**Phases**](/release-orchestration/3.0/phases/phases-overview.md) and [**Activities**](/release-orchestration/use-release-orchestration/release-orchestration-activities/activities-overview.md).
* Activities come from the [**Activity Store**](/release-orchestration/3.0/activities/activity-store.md) and can be automated, manual, or subprocess-based.
* A [**Release Group**](/release-orchestration/3.0/releases/modeling-releases.md) defines a cadence and contains individual **Releases**, each of which executes a Process.
* The [**Release Calendar**](/release-orchestration/3.0/releases/modeling-releases.md) visualizes all scheduled and in-flight releases.
* The [**Input Store**](https://github.com/iKettles/harness-gitbook/tree/main/3k-release-management/execution/handling-failures/use-release-orchestration/release-orchestration-inputs-variables/overview.md) provides named input sets so the same Process can run with different configurations.

### Why Release Orchestration <a href="#why-release-orchestration" id="why-release-orchestration"></a>

Without orchestration, releases that span multiple services, teams, and tools become fragmented. Status lives in spreadsheets, coordination happens over email, and there is no single source of truth for what was deployed, when, or by whom.

Release Orchestration solves this by providing:

* **Structured process modeling:** Define reusable release blueprints ([Processes](https://github.com/iKettles/harness-gitbook/tree/main/3k-release-management/execution/handling-failures/use-release-orchestration/release-orchestration-processes/overview.md)) composed of [Phases](/release-orchestration/3.0/phases/phases-overview.md) and [Activities](/release-orchestration/use-release-orchestration/release-orchestration-activities/activities-overview.md) instead of ad-hoc checklists.
* **Automated and manual execution:** Automate pipeline-backed steps while retaining manual sign-offs and approvals where governance requires them.
* **End-to-end visibility:** Track activity-level status, phase-level progress, and overall release health in real time.
* **Proactive notifications:** Configure [notifications](/release-orchestration/use-release-orchestration/notifications.md) for key release events like starts, completions, failures, and input requirements, ensuring teams stay informed through Slack.
* **Built-in governance and auditability:** Enforce approvals, capture sign-offs, and maintain a full audit trail linking code to deployment.
* **Scheduled releases:** Use [Release Groups](/release-orchestration/3.0/releases/modeling-releases.md) and the Release Calendar to run releases on a cadence (daily, weekly, monthly, or custom).

### Prerequisites <a href="#prerequisites" id="prerequisites"></a>

Before you begin, ensure the following:

* **Feature flags enabled:** The following feature flags must be enabled for your Harness account. Contact [Harness Support](mailto:support@harness.io) to enable them.
  * `RMG_RELEASE_MANAGEMENT_ENABLED` — Enables the Release Management module.
  * `RMG_PROCESS_ENABLED` — Enables Process functionality for creating release blueprints.
* **Module access:** Confirm you have access to the **Release Orchestration** module in Harness.
* **Permissions:** Ensure your user role has permissions to create processes, releases, and activities. Go to **Account Settings** > **Access Control** to verify.
* **Pipelines (for automated activities):** If you plan to use [Automated Activities](/release-orchestration/3.0/activity-types/automated-activities.md), have at least one Harness pipeline configured. Automated activities encapsulate pipelines, so the pipeline must exist before you can reference it.
* **Phase owners identified:** Identify the owners responsible for each phase of your release (for example, Development, QA, DevOps). Owners are assigned per phase and can receive notifications when their input is needed.
* **Slack notification channels (optional):** Configure Slack notification channels in your account settings if you want to receive real-time alerts for release events. Go to [Notifications](/release-orchestration/use-release-orchestration/notifications.md) to configure channels and events.

### Key concepts <a href="#key-concepts" id="key-concepts"></a>

Before walking through the steps, familiarize yourself with the core entities. Each term links to its detailed reference page.

| Entity                                                                                                                                                                                                  | Description                                                                                                                                                                                                                                                                                                                                            |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [**Process**](https://github.com/iKettles/harness-gitbook/tree/main/3k-release-management/execution/handling-failures/use-release-orchestration/release-orchestration-processes/overview.md)            | A reusable release blueprint containing phases, activities, dependencies, and variables.                                                                                                                                                                                                                                                               |
| [**Phase**](/release-orchestration/3.0/phases/phases-overview.md)                                                                                                                                       | A logical group of work within a process (e.g., Build, Testing, Deployment). Phases can depend on other phases.                                                                                                                                                                                                                                        |
| [**Activity**](/release-orchestration/use-release-orchestration/release-orchestration-activities/activities-overview.md)                                                                                | A single unit of work within a phase. Can be [Automated](/release-orchestration/3.0/activity-types/automated-activities.md) (pipeline-backed), [Manual](/release-orchestration/3.0/activity-types/manual-activities.md) (sign-offs/approvals), or a [Subprocess](/release-orchestration/3.0/activity-types/subprocess-activities.md) (nested process). |
| [**Activity Store**](/release-orchestration/3.0/activities/activity-store.md)                                                                                                                           | A library of reusable activities with pre-configured inputs and outputs. Activities from the store can be added to any process.                                                                                                                                                                                                                        |
| [**Input Store**](https://github.com/iKettles/harness-gitbook/tree/main/3k-release-management/execution/handling-failures/use-release-orchestration/release-orchestration-inputs-variables/overview.md) | A collection of named input sets for a process. Each input set provides concrete values for process-level, phase-level, and activity-level inputs, allowing you to run the same process with different configurations.                                                                                                                                 |
| [**Release Group**](/release-orchestration/3.0/releases/modeling-releases.md)                                                                                                                           | A collection of releases executed on a defined cadence. Linked to a process so each release follows the same blueprint.                                                                                                                                                                                                                                |
| [**Release Calendar**](/release-orchestration/3.0/releases/modeling-releases.md)                                                                                                                        | A visual calendar of all planned and scheduled releases, helping teams coordinate timing and avoid conflicts.                                                                                                                                                                                                                                          |

For a full glossary, see [Key Concepts](/release-orchestration/new-to-release-orchestration/key-concepts.md).

### Step 1: Create a process <a href="#step-1-create-a-process" id="step-1-create-a-process"></a>

A [Process](https://github.com/iKettles/harness-gitbook/tree/main/3k-release-management/execution/handling-failures/use-release-orchestration/release-orchestration-processes/overview.md) is the blueprint for your release. You can create one from scratch or use Harness AI to generate a starting point.

1. In the Release Orchestration module, open **Processes**.
2. Select **+ New Process** and choose **Create with Harness AI**.
3. Provide a prompt describing your release flow. For example:

   ```
   Create a process for a multi-service release.
   Include phases for planning and coordination, build, testing/validation,
   feature flag enablement, deployment, monitoring, and rollback/documentation.
   Assign phase owners for Development, QA, and DevOps.
   ```
4. Review the generated process. Harness AI creates [Phases](/release-orchestration/3.0/phases/phases-overview.md) (logical groups of work) with [Activities](/release-orchestration/use-release-orchestration/release-orchestration-activities/activities-overview.md) and assigns owners based on your prompt.
5. Save the process.

For more details on manual process creation, see [Process Modeling](/release-orchestration/3.0/processes/process-modeling.md).

### Step 2: Add activities from the Activity Store <a href="#step-2-add-activities-from-the-activity-store" id="step-2-add-activities-from-the-activity-store"></a>

The [Activity Store](/release-orchestration/3.0/activities/activity-store.md) is a library of reusable, pre-configured activities. It contains three types of activities:

* [**Automated Activities**](/release-orchestration/3.0/activity-types/automated-activities.md)**:** Encapsulate a Harness pipeline that runs automatically during execution. Use these for builds, deployments, tests, and any pipeline-driven work.
* [**Manual Activities**](/release-orchestration/3.0/activity-types/manual-activities.md)**:** Require human input during execution — approvals, sign-offs, manual verification steps, or documentation tasks.
* [**Subprocess Activities**](/release-orchestration/3.0/activity-types/subprocess-activities.md)**:** Reference another process within your process, enabling composition and reuse.

To add activities:

1. Open the process you created.
2. Select a phase and choose **Add Activity**.
3. Browse the Activity Store and select the activity you need.
4. For automated activities, select the pipeline to encapsulate and configure its inputs.

### Step 3: Model dependencies <a href="#step-3-model-dependencies" id="step-3-model-dependencies"></a>

Define the execution order across your process using dependencies:

* [**Phase dependencies**](/release-orchestration/3.0/phases/phase-dependencies.md)**:** Control which phases must complete before others start (e.g., Testing depends on Build).
* [**Activity dependencies**](/release-orchestration/3.0/activities/activity-dependencies.md)**:** Control ordering within or across phases (e.g., a manual approval must complete before a deployment pipeline runs).

Dependencies can model both sequential and parallel execution. For details, see [Parallel vs Sequential Execution](/release-orchestration/3.0/handle-failures/parallel-vs-sequential-execution.md).

### Step 4: Connect the process to releases <a href="#step-4-connect-the-process-to-releases" id="step-4-connect-the-process-to-releases"></a>

1. Open the **Release Calendar**.
2. Create or open a [Release Group](/release-orchestration/3.0/releases/modeling-releases.md) with your desired cadence (e.g., recurring every Thursday, running for two days).
3. Link the release group to the process you created, so each release executes using that blueprint.

### Step 5: Provide inputs and execute <a href="#step-5-provide-inputs-and-execute" id="step-5-provide-inputs-and-execute"></a>

1. From the Release Calendar, open a specific release.
2. Review the linked process and select **Pre-execute** (or let it run at the scheduled time).
3. Select an input set from the [Input Store](https://github.com/iKettles/harness-gitbook/tree/main/3k-release-management/execution/handling-failures/use-release-orchestration/release-orchestration-inputs-variables/overview.md). An **input set** is a named collection of values for all the inputs your process requires (process-level, phase-level, and activity-level). You can create multiple input sets for the same process to run it with different configurations — for example, one input set for staging and another for production.

For more on variables and input configuration, see [Inputs and Variables](https://github.com/iKettles/harness-gitbook/tree/main/3k-release-management/execution/handling-failures/use-release-orchestration/release-orchestration-inputs-variables/overview.md).

### Step 6: Configure notifications (optional) <a href="#step-6-configure-notifications-optional" id="step-6-configure-notifications-optional"></a>

Set up [notifications](/release-orchestration/use-release-orchestration/notifications.md) to receive real-time Slack alerts for key release events:

1. Navigate to **Account Settings** or **Project Settings** > **Notifications**
2. Select **New Notification Setup**
3. Choose **Release Orchestration** as the resource type
4. Configure conditions based on events you want to monitor:
   * **Release Start/End/Burned:** Track release lifecycle
   * **Release Input Waiting:** Get notified when manual input is needed
   * **Phase Start/End:** Monitor phase-level progress
   * **Activity On Hold/Task Output Waiting:** Track blocked activities
5. Select Slack channels to receive notifications

Notifications help teams stay informed without constantly checking the Release Calendar, and enable quick response to failures or approval requests.

### Step 7: Monitor and remediate <a href="#step-7-monitor-and-remediate" id="step-7-monitor-and-remediate"></a>

During execution, track progress at every level:

* **Activity-level:** Running, succeeded, failed, or on hold.
* **Phase-level:** Overall progress of each phase.
* **Process-level:** End-to-end release status.

If an automated activity fails, you can remediate by choosing **Retry** or **Ignore** to continue execution. For details, see [Error Handling](/release-orchestration/3.0/execution/error-handling.md).

If execution is waiting for a sign-off, complete the [Manual Activity](/release-orchestration/3.0/activity-types/manual-activities.md) by providing the required inputs and approval.

### Next steps <a href="#next-steps" id="next-steps"></a>

* [**Key Concepts**](/release-orchestration/new-to-release-orchestration/key-concepts.md)**:** Full glossary of Release Orchestration entities and terminology.
* [**Process Modeling**](/release-orchestration/3.0/processes/process-modeling.md)**:** Deep dive into building processes manually.
* [**Notifications**](/release-orchestration/use-release-orchestration/notifications.md)**:** Configure real-time Slack alerts for release events.
* [**Executing a Release**](/release-orchestration/3.0/execution/executing-a-release.md)**:** Detailed guide on running and monitoring releases.
* [**Multi-Service Release Example**](/release-orchestration/3.0/examples-and-walkthroughs/multi-service-release-example.md)**:** End-to-end walkthrough of a real-world release.
* [**Common Use Cases**](/release-orchestration/new-to-release-orchestration/use-cases.md)**:** Patterns for microservice releases, compliance workflows, emergency releases, and more.
