This plugin provides comprehensive workspace lifecycle management for Harness IACM
341
Production-grade Python Docker image for Harness IACM Workspace Manager — comprehensive workspace lifecycle management for Infrastructure as Code Management. Enables automation of workspace provisioning, querying, updates, and bulk operations through flexible CLI integration with Harness CI/CD pipelines.
# Pull the latest image
docker pull harnesssolutionfactory/harness-manage-iacm-workspace:latest
# Create or update a workspace
docker run --rm \
-e PLUGIN_HARNESS_ACCOUNT_ID=your_account_id \
-e PLUGIN_API_KEY=your_api_key \
-e PLUGIN_SWITCH=main \
-e PLUGIN_RESOURCE_NAME=my-workspace \
-e PLUGIN_RESOURCE_OWNER=platform-team \
harnesssolutionfactory/harness-manage-iacm-workspace:latest
# Query workspaces by tags
docker run --rm \
-e PLUGIN_HARNESS_ACCOUNT_ID=your_account_id \
-e PLUGIN_API_KEY=your_api_key \
-e PLUGIN_SWITCH=view \
-e PLUGIN_WORKSPACE_TAGS='{"source":"official","type":"infrastructure"}' \
harnesssolutionfactory/harness-manage-iacm-workspace:latest
The plugin provides flexible workspace management:
- step:
type: Plugin
name: Provision IACM Workspace
identifier: provision_workspace
spec:
connectorRef: <+input>
image: harnesssolutionfactory/harness-manage-iacm-workspace:latest
settings:
PLUGIN_HARNESS_ACCOUNT_ID: <+account.identifier>
PLUGIN_API_KEY: <+secrets.getValue("harness_api_key")>
PLUGIN_SWITCH: main
PLUGIN_RESOURCE_NAME: my-workspace
PLUGIN_RESOURCE_OWNER: platform-team
PLUGIN_WORKSPACE_ORG: my-organization
PLUGIN_WORKSPACE_PROJECT: my-project
PLUGIN_GIT_REPOSITORY_BRANCH: main
PLUGIN_GIT_REPOSITORY_CONNECTOR: org.harness_template_repo
PLUGIN_GIT_REPOSITORY_NAME: https://git.harness.io/account/org/repo.git
PLUGIN_HARNESS_PORTAL_RESOURCES: iacm/api/orgs/my-org/projects/my-project/workspaces
PLUGIN_IAC_PROVISIONER_TYPE: opentofu
PLUGIN_IAC_PROVISIONER_VERSION: "1.10.0"
PLUGIN_RESOURCE_VARS: '{"environment":"production"}'
PLUGIN_WORKSPACE_TAGS: '{"source":"official","type":"infrastructure"}'
docker run --rm \
-e PLUGIN_HARNESS_ACCOUNT_ID=your_account_id \
-e PLUGIN_API_KEY=your_api_key \
-e PLUGIN_SWITCH=view \
-e PLUGIN_WORKSPACE_TAGS='{"source":"official","type":"infrastructure"}' \
-e PLUGIN_RETURN_KEY=identifier \
harnesssolutionfactory/harness-manage-iacm-workspace:latest
- step:
type: Plugin
name: Migrate Workspace
identifier: migrate_workspace
spec:
connectorRef: <+input>
image: harnesssolutionfactory/harness-manage-iacm-workspace:latest
settings:
PLUGIN_HARNESS_ACCOUNT_ID: <+account.identifier>
PLUGIN_API_KEY: <+secrets.getValue("harness_api_key")>
PLUGIN_SWITCH: migrate
PLUGIN_RESOURCE_NAME: source-workspace
PLUGIN_WORKSPACE_ORG: source-org
PLUGIN_WORKSPACE_PROJECT: source-project
PLUGIN_TARGET_WORKSPACE_ID: target-workspace
PLUGIN_TARGET_WORKSPACE_ORG: target-org
PLUGIN_TARGET_WORKSPACE_PROJECT: target-project
PLUGIN_MIGRATE_STATE: "true"
PLUGIN_HARNESS_ACCOUNT_ID — Harness account identifierPLUGIN_API_KEY — API key for authenticationPLUGIN_HARNESS_URI — Platform endpoint (default: https://app.harness.io)PLUGIN_SWITCH — Operation mode: main, view, remove, refactor, migrate, create_state, migrate_statePLUGIN_DEBUG_MODE — Enable debug logging (default: false)SSL_VERIFY_X509_STRICT — Enforce strict SSL validation (default: true)PLUGIN_WORKSPACE_ID — Workspace identifierPLUGIN_RESOURCE_OWNER — Workspace ownerPLUGIN_RESOURCE_DESCRIPTION — Workspace descriptionPLUGIN_WORKSPACE_ORG — Organization identifierPLUGIN_WORKSPACE_PROJECT — Project identifierPLUGIN_WORKSPACE_TAGS — Workspace tags (JSON)PLUGIN_WORKSPACE_TEMPLATE_IDENTIFIER — Template IDPLUGIN_WORKSPACE_TEMPLATE_VERSION — Template versionPLUGIN_IS_EPHEMERAL — Mark as ephemeral (default: false)PLUGIN_GIT_REPOSITORY_BRANCH — Git branch, tag, or commit SHAPLUGIN_GIT_REPOSITORY_SOURCE_TYPE — Git source type: branch, tag, shaPLUGIN_GIT_REPOSITORY_CONNECTOR — Git connector identifierPLUGIN_GIT_REPOSITORY_NAME — Git repository URLPLUGIN_GIT_REPOSITORY_PATH — Path within repositoryPLUGIN_IAC_PROVISIONER_TYPE — Provisioner: opentofu or terraformPLUGIN_IAC_PROVISIONER_VERSION — Provisioner versionPLUGIN_IAC_PROVIDER_CONNECTORS — Multiple provider connectors (JSON array)PLUGIN_RESOURCE_VARS — Terraform variables (JSON)PLUGIN_RESOURCE_VARS_SECRETS — Secret variables (JSON)PLUGIN_RESOURCE_VARS_FILES — Variable files listPLUGIN_RESOURCE_VARS_ENVS — Environment variables (JSON)PLUGIN_SHOULD_OVERWRITE_VARIABLES — Replace vs merge (default: false)PLUGIN_FILTER_KEY — Attribute to filter by (e.g., identifier, repository_connector)PLUGIN_FILTER_VALUE — Value to match filterPLUGIN_RETURN_KEY — Field to return from resultsPLUGIN_IGNORE_HSF_SYSTEM — Exclude HSF system workspaces (default: false)SSL_VERIFY_X509_STRICT=true)Image tags follow harness-manage-iacm-workspace:<version>, corresponding to releases. Each image is tagged with:
2.0.0)sha-a1b2c3d)latest (current stable)For issues, documentation, or questions:
Content type
Image
Digest
sha256:189babadb…
Size
40.7 MB
Last updated
12 days ago
docker pull harnesssolutionfactory/harness-iacm-workspace-manager