Pipelines Overview
GoodData Pipelines contains tools for automating GoodData lifecycle management. Built on top of GoodData Python SDK, it enables you to programmatically provision and manage workspaces, users, user groups, and their permissions.
For further information, refer to the PIPELINES section in the left navigation menu.
Installation
Run the following command to install the gooddata-pipelines
package on your system:
pip install gooddata-pipelines
Requirements
- Python 3.10 or newer
- GoodData.CN or GoodData Cloud
Examples
Here is an introductory example of how to manage GoodData resources using GoodData Pipelines:
Provision Child Workspaces
from gooddata_pipelines import WorkspaceFullLoad, WorkspaceProvisioner
# GoodData.CN host URI (e.g., "http://localhost:3000")
host = "http://localhost:3000"
# GoodData.CN user token
token = "some_user_token"
# Initialize the provisioner
provisioner = WorkspaceProvisioner.create(host=host, token=token)
# Gather the definitions of the workspaces you want to create
raw_data: list[dict] = [
{
"parent_id": "demo_parent_workspace",
"workspace_id": "sales_team_workspace",
"workspace_name": "Sales Team Workspace",
"workspace_data_filter_id": "region_filter",
"workspace_data_filter_values": ["north_america"],
},
]
# Validate the data
validated_data = [WorkspaceFullLoad(**item) for item in raw_data]
# Run the provisioning
provisioner.full_load(validated_data)