1. Packages
  2. Hsdp Provider
hsdp 0.65.3 published on Tuesday, Apr 15, 2025 by philips-software

Hsdp Provider

hsdp logo
hsdp 0.65.3 published on Tuesday, Apr 15, 2025 by philips-software

    Generate Provider

    The Hsdp provider must be installed as a Local Package by following the instructions for Any Terraform Provider:

    pulumi package add terraform-provider philips-software/hsdp
    

    Overview

    Use the HSDP provider to interact with the many resources supported by HSDP. This includes amongst others IAM entities, Container Host instances, Edge devices and even some Clinical Data Repository (CDR) resources

    Use the navigation to the left to read about the available resources.

    To learn the basics of Pulumi, follow the hands-on get started tutorials on HashiCorp’s Learn platform.

    Example usage

    # Pulumi.yaml provider configuration file
    name: configuration-example
    runtime: nodejs
    config:
        hsdp:environment:
            value: client-test
        hsdp:oauth2ClientId:
            value: 'TODO: var.oauth2_client_id'
        hsdp:oauth2Password:
            value: 'TODO: var.oauth2_password'
        hsdp:orgAdminPassword:
            value: 'TODO: var.org_admin_password'
        hsdp:orgAdminUsername:
            value: 'TODO: var.org_admin_username'
        hsdp:region:
            value: us-east
    
    import * as pulumi from "@pulumi/pulumi";
    import * as hsdp from "@pulumi/hsdp";
    
    const hospitalA = new hsdp.IamOrg("hospital_a", {
        name: "HOSPITAL_A",
        description: "HOSPITAL A",
        parentOrgId: root.id,
    });
    
    # Pulumi.yaml provider configuration file
    name: configuration-example
    runtime: python
    config:
        hsdp:environment:
            value: client-test
        hsdp:oauth2ClientId:
            value: 'TODO: var.oauth2_client_id'
        hsdp:oauth2Password:
            value: 'TODO: var.oauth2_password'
        hsdp:orgAdminPassword:
            value: 'TODO: var.org_admin_password'
        hsdp:orgAdminUsername:
            value: 'TODO: var.org_admin_username'
        hsdp:region:
            value: us-east
    
    import pulumi
    import pulumi_hsdp as hsdp
    
    hospital_a = hsdp.IamOrg("hospital_a",
        name="HOSPITAL_A",
        description="HOSPITAL A",
        parent_org_id=root["id"])
    
    # Pulumi.yaml provider configuration file
    name: configuration-example
    runtime: dotnet
    config:
        hsdp:environment:
            value: client-test
        hsdp:oauth2ClientId:
            value: 'TODO: var.oauth2_client_id'
        hsdp:oauth2Password:
            value: 'TODO: var.oauth2_password'
        hsdp:orgAdminPassword:
            value: 'TODO: var.org_admin_password'
        hsdp:orgAdminUsername:
            value: 'TODO: var.org_admin_username'
        hsdp:region:
            value: us-east
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Hsdp = Pulumi.Hsdp;
    
    return await Deployment.RunAsync(() =>
    {
        var hospitalA = new Hsdp.IamOrg("hospital_a", new()
        {
            Name = "HOSPITAL_A",
            Description = "HOSPITAL A",
            ParentOrgId = root.Id,
        });
    
    });
    
    # Pulumi.yaml provider configuration file
    name: configuration-example
    runtime: go
    config:
        hsdp:environment:
            value: client-test
        hsdp:oauth2ClientId:
            value: 'TODO: var.oauth2_client_id'
        hsdp:oauth2Password:
            value: 'TODO: var.oauth2_password'
        hsdp:orgAdminPassword:
            value: 'TODO: var.org_admin_password'
        hsdp:orgAdminUsername:
            value: 'TODO: var.org_admin_username'
        hsdp:region:
            value: us-east
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-pulumi-provider/sdks/go/hsdp/hsdp"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := hsdp.NewIamOrg(ctx, "hospital_a", &hsdp.IamOrgArgs{
    			Name:        pulumi.String("HOSPITAL_A"),
    			Description: pulumi.String("HOSPITAL A"),
    			ParentOrgId: pulumi.Any(root.Id),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    # Pulumi.yaml provider configuration file
    name: configuration-example
    runtime: yaml
    config:
        hsdp:environment:
            value: client-test
        hsdp:oauth2ClientId:
            value: 'TODO: var.oauth2_client_id'
        hsdp:oauth2Password:
            value: 'TODO: var.oauth2_password'
        hsdp:orgAdminPassword:
            value: 'TODO: var.org_admin_password'
        hsdp:orgAdminUsername:
            value: 'TODO: var.org_admin_username'
        hsdp:region:
            value: us-east
    
    resources:
      hospitalA:
        type: hsdp:IamOrg
        name: hospital_a
        properties:
          name: HOSPITAL_A
          description: HOSPITAL A
          parentOrgId: ${root.id}
    
    # Pulumi.yaml provider configuration file
    name: configuration-example
    runtime: java
    config:
        hsdp:environment:
            value: client-test
        hsdp:oauth2ClientId:
            value: 'TODO: var.oauth2_client_id'
        hsdp:oauth2Password:
            value: 'TODO: var.oauth2_password'
        hsdp:orgAdminPassword:
            value: 'TODO: var.org_admin_password'
        hsdp:orgAdminUsername:
            value: 'TODO: var.org_admin_username'
        hsdp:region:
            value: us-east
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.hsdp.IamOrg;
    import com.pulumi.hsdp.IamOrgArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var hospitalA = new IamOrg("hospitalA", IamOrgArgs.builder()
                .name("HOSPITAL_A")
                .description("HOSPITAL A")
                .parentOrgId(root.id())
                .build());
    
        }
    }
    

    Authentication

    The HSDP provider can read credentials and settings from the Environment or as arguments in its provider configuration. The following environment variables are recognized

    EnvironmentArgumentRequiredDefault
    HSDP_REGIONregionOptionalus-east
    HSDP_ENVIRONMENTenvironmentOptionalclient-test
    HSDP_CARTEL_HOSTcartelHostOptional
    HSDP_CARTEL_SECRETcartelSecretOptional
    HSDP_CARTEL_TOKENcartelTokenOptional
    HSDP_IAM_SERVICE_IDserviceIdOptional
    HSDP_IAM_SERVICE_PRIVATE_KEYservicePrivateKeyOptional
    HSDP_IAM_ORG_ADMIN_USERNAMEorgAdminUsernameOptional
    HSDP_IAM_ORG_ADMIN_PASSWORDorgAdminPasswordOptional
    HSDP_IAM_OAUTH2_CLIENT_IDoauth2ClientIdOptional
    HSDP_IAM_OAUTH2_PASSWORDoauth2PasswordOptional
    HSDP_SHARED_KEYsharedKeyOptional
    HSDP_SECRET_KEYsecretKeyOptional
    HSDP_UAA_USERNAMEuaaUsernameOptional
    HSDP_UAA_PASSWORDuaaPasswordOptional
    HSDP_DEBUG_LOGdebugLogOptional
    HSDP_DEBUG_STDERRdebugStderrOptional

    Configuration Reference

    In addition to generic provider arguments (e.g. alias and version), the following arguments are supported in the HSDP provider configuration:

    • region - (Required) The HSDP region to use [us-east, eu-west, sa1, ca1, apac3, …]. Default is us-east
    • environment - (Optional) The HSDP environment to use within region [client-test, prod] . Default is client-test
    • credentials - (Optional) Can point to a JSON file containing values for all fields here
    • iamUrl - (Optional) IAM API endpoint. Auto-discovered from region and environment.
    • idmUrl - (Optional) IDM API endpoint Auto-discovered from region and environment.
    • s3credsUrl - (Optional) S3 Credentials API endpoint. Auto-discovered from region and environment.
    • notificationUrl - (Optional) Notification service URL. Auto-discovered from region and environment.
    • oauth2ClientId - (Optional) The OAuth2 client ID as provided by HSDP
    • oauth2Password - (Optional) The OAuth2 password as provided by HSDP
    • serviceId - (Optional) The service ID to use for IAM org admin operations (conflicts with: orgAdminUsername)
    • servicePrivateKey - (Optional) The service private key to use for IAM org admin operations (conflicts with: orgAdminPassword)
    • orgAdminUsername - (Optional) Your IAM admin username.
    • orgAdminPassword - (Optional) Your IAM admin password.
    • uaaUsername - (Optional) The HSDP CF UAA username.
    • uaaPassword - (Optional) The HSDP CF UAA password.
    • uaaUrl - (Optional) The URL of the UAA authentication service. Auto-discovered from region.
    • mdmUrl - (Optional) The base URL of the MDM service. Auto-discovered from region and environment.
    • sharedKey - (Optional) The shared key as provided by HSDP. Actions which require API signing will not work if this value is missing.
    • secretKey - (Optional) The secret key as provided by HSDP. Actions which require API signing will not work if this value is missing.
    • cartelHost - (Optional) The cartel host as provided by HSDP. Auto-discovered from region.
    • cartelToken - (Optional) The cartel token as provided by HSDP.
    • cartelSecret - (Optional) The cartel secret as provided by HSDP.
    • retryMax - (Optional) Integer, when > 0 will use a retry-able HTTP client and retry requests when applicable.
    • debugLog - (Optional) If set to a path, when debug is enabled outputs details to this file
    • debugStderr - (Optional) If set to true sends debug logs to stderr
    hsdp logo
    hsdp 0.65.3 published on Tuesday, Apr 15, 2025 by philips-software