DataRobot Pulumi Provider for Python
The DataRobot Resource Provider lets you manage DataRobot resources with Pulumi Infrastructure as Code.
Installation
Install the package using pip:
pip install pulumi_datarobot
Configuration
Configure the provider using environment variables or Pulumi config:
# Environment variables
export DATAROBOT_API_TOKEN=your_api_token
export DATAROBOT_ENDPOINT=https://your.datarobot.instance/api/v2
# OR using Pulumi config
pulumi config set datarobot:apikey --secret your_api_token
pulumi config set datarobot:endpoint https://your.datarobot.instance/api/v2
Quick Start
import pulumi
import pulumi_datarobot as dr
# Create a DataRobot use case
use_case = dr.UseCase("my-use-case",
name="ML Project Use Case",
description="Created with Pulumi")
# Create a project from a dataset
project = dr.Project("my-project",
name="Customer Churn Prediction",
dataset_url="https://s3.amazonaws.com/datarobot-datasets/churn.csv",
use_case_id=use_case.id)
# Create a deployment
deployment = dr.Deployment("my-deployment",
project_id=project.id,
model_id=project.recommended_model_id,
environment_id="your-prediction-environment-id")
# Export important values
pulumi.export("use_case_id", use_case.id)
pulumi.export("project_id", project.id)
pulumi.export("deployment_id", deployment.id)
Examples
Complete examples are available in the examples directory.
Air-Gapped Environments
For air-gapped deployments:
1. Store state locally
pulumi login --local
2. Install Python dependencies offline
Create wheel directory and download packages:
mkdir wheels
pip wheel pulumi-datarobot -w wheels/
tar cf wheels.tar wheels/
Transfer wheels.tar to your air-gapped system, then install:
tar xf wheels.tar
pip install wheels/* -f wheels/ --no-index
3. Download DataRobot plugin manually
Download the plugin binary from the releases page:
# Replace v0.12.3 with your version, e.g., v0.10.14
pulumi plugin install resource datarobot v0.12.3 --server \
https://github.com/datarobot-community/pulumi-datarobot/releases/v0.12.3/
4. Skip update checks
export PULUMI_SKIP_UPDATE_CHECK=true
Advanced Usage
Custom Authentication
import pulumi_datarobot as dr
# Using API token credential
api_token = dr.ApiTokenCredential("my-token",
name="Production API Token",
api_token="your-secure-token")
# Using basic authentication
basic_auth = dr.BasicCredential("my-basic-auth",
name="Basic Auth Credential",
username="your-username",
password="your-password")
Working with Models
# Register a custom model
custom_model = dr.CustomModel("my-custom-model",
name="Customer Segmentation Model",
target_type="Regression",
target_name="revenue",
description="Custom model for customer revenue prediction")
# Create a registered model from leaderboard
registered_model = dr.RegisteredModelFromLeaderboard("my-registered-model",
project_id=project.id,
model_id="model-id-from-leaderboard",
name="Best Performing Model")
Resources
Version
Package version: v0.12.3
Release files for pulumi-datarobot 0.12.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pulumi_datarobot-0.12.3.tar.gz | 178.5 kB | Details |
Release files / pulumi_datarobot-0.12.3.tar.gz
| Download URL | pulumi_datarobot-0.12.3.tar.gz |
|---|---|
| Size | 178.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bf20a29273613521cc4de9d09a25a97567be45009b838c59f73dbff8f40fb15b
|
|
BLAKE2b-256 checksum How to use checksums |
b88ae0562e36e808eaa5d2171d790588c9cd061d3c3786f4bb64064f3abab760
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|