Quickstarts
Orchestration lets you develop distributed systems without worrying about coordinating complexity. Conductor is an orchestration engine that runs sequences of tasks, known as workflows, using a worker-task queue architecture.
In these quickstarts, you will learn the basics of developing with Conductor:
- How to create workflows
- How to write custom workers
- How to deploy workflows to production
- How to debug workflow
Familiarize yourself with the Core Concepts in Conductor before diving into our quickstarts.
With Orkes’ suite of SDKs, APIs, and Orkes Platform, you can mix-and-match our products to develop with Conductor.
- Conductor SDKs—Manage, test, and deploy workflows; write workers; or integrate Conductor into your applications. Available in Python, Java, Javascript, C#, Go, and Clojure.
- Conductor APIs—Manage resources (workflows, tasks, users, etc) programmatically.
- Orkes Platform—Manage resources from a user interface.
Preparing your tools
Before you begin, prepare the following:
- Get UI access to your Orkes Conductor cluster.
- Set up your development environment.
- Configure programmatic access to your Orkes Conductor cluster.
Get UI access
Orkes Platform offers single-tenancy access. If you have an Orkes account, access your cluster and log in using your organization’s SSO provider.
Set up your development environment
A key part of developing with Conductor involves using our SDKs to write workers, create workflows as code, or develop client applications. Set up your development environment in your preferred language.
- Python
- Java
- JavaScript
- C#
- Go
- Clojure
- Python 3.9+ or higher
In your project directory, create and activate your virtual environment (eg myProject
).
Mac:
// Using venv
python -m venv myProject
source myProject/bin/activate
// Using virtualenv
virtualenv myProject
source myProject/bin/activate
Windows:
// Using venv
python -m venv myProject
myProject\Scripts\activate
// Using virtualenv
virtualenv myProject
myProject\Scripts\activate
In your terminal, run the following command to get the Conductor SDK.
python3 -m pip install conductor-python
- JDK 17 from v2.1.2 onwards
- A Gradle or Maven project properly set up
Gradle:
In the build.gradle
file, add the following dependencies.
dependencies {
implementation 'org.conductoross:conductor-client:4.0.1'
implementation 'org.conductoross:java-sdk:4.0.1'
implementation 'io.orkes.conductor:orkes-conductor-client:4.0.1'
}
Maven:
In the pom.xml
file, add the following dependencies.
<dependency>
<groupId>org.conductoross</groupId>
<artifactId>conductor-client</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>org.conductoross</groupId>
<artifactId>java-sdk</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>io.orkes.conductor</groupId>
<artifactId>orkes-conductor-client</artifactId>
<version>4.0.1</version>
</dependency>
- NodeJS 18 or higher
Get the Conductor Javascript package using npm or yarn.
npm:
npm i @io-orkes/conductor-javascript
yarn:
yarn add @io-orkes/conductor-javascript
- .NET Standard 2.0 or higher
In your terminal, run the following command to get the Conductor SDK.
dotnet add package conductor-csharp
- Go 1.17 or higher
Initialize your Go module.
go mod init <module-path>
Add the Conductor SDK to your module.
go get github.com/conductor-sdk/conductor-go
- Clojure v1.11.0 or higher
Get the Conductor Clojure package from clojars.
:deps {org.clojure/clojure {:mvn/version "1.11.0"}
io.orkes/conductor-clojure {:mvn/version "0.3.0"}}
Configure programmatic access to Conductor
Once your development environment is set up, you need to configure your access to the Conductor server. In Orkes, programmatic access to Conductor is enabled by application-based access keys. To get authenticated, you must first create an application in Orkes Platform, then create an access key for your application.
To create an application:
- Log in to your Orkes cluster or the Orkes Developer Edition.
- In the left navigation menu, go to Access Control > Applications.
- Select (+) Create application.
- Enter the application name, such as “myFirstWorkflow”. Use this application while following along with the quickstarts.
- Select Save.
The application has been created. You can proceed to retrieve an access key.
To retrieve the access key:
In the Access Keys section, select (+) Create access key to generate a unique Key Id and Key Secret.
The Key Secret is shown only once. Make sure to copy and store it securely, so you can use it when following along with the quickstarts.
Ready to start?
- Quickstart 1: Learn how to create your first workflow. You can define workflows as code or on Orkes Platform.
- Quickstart 2: Learn how to use custom tasks. Write workers in any language using Conductor SDKs.
- Quickstart 3: Learn how to deploy your workflow. There are many ways to do this, such as creating a client application.
- Quickstart 4: Learn how to debug and monitor your workflow.