diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..6cd0076 Binary files /dev/null and b/.DS_Store differ diff --git a/Cloud Assembly/.DS_Store b/Cloud Assembly/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and b/Cloud Assembly/.DS_Store differ diff --git a/Cloud Assembly/Create DMS Database.yaml b/Cloud Assembly/Create DMS Database.yaml new file mode 100644 index 0000000..9441c94 --- /dev/null +++ b/Cloud Assembly/Create DMS Database.yaml @@ -0,0 +1,58 @@ +formatVersion: 1 +inputs: + adminUser: + type: string + title: DB Admin User Account Name + default: admin + adminPassword: + type: string + title: DB Admin User Password + encrypted: true + default: VMware1!VMware1! + cpuCores: + type: string + title: Number of CPUs + default: '4' + memory: + type: string + title: Memory (GB) + default: '4' + diskSize: + type: string + title: Disk Size (GB) + default: '100' + automatedBackupStartTime: + type: string + default: '06:00' + enum: + - '06:00' + - '08:00' + - '23:00' + title: Automated Backup Start Time + databaseVersion: + type: string + title: Database Version + default: POSTGRES 12.7.0 + dbName: + type: string + title: Database Name + default: db + instanceName: + type: string + title: instance Name + default: instance +resources: + Custom_dms_database_1: + type: Custom.dms.database + properties: + adminPassword: '${input.adminPassword}' + adminUser: '${input.adminUser}' + automatedBackupStartTime: '${input.automatedBackupStartTime}' + cpuCores: '${input.cpuCores}' + memory: '${input.memory}' + databaseVersion: '${input.databaseVersion}' + dbName: '${input.dbName}' + numLocalBackupDays: 3 + numRemoteBackupDays: 6 + instanceName: '${input.instanceName}' + diskSize: '${input.diskSize}' diff --git a/README.md b/README.md index c3c4a8e..2c4227c 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,23 @@ -# dms-vra +# Integrating Data Management for VMware Tanzu with vRealize Automation using Dynamic Types + File repository for configuring vRealize Automation workflows to interact with Data Management for VMware Tanzu to provide Self-Service capabilities within vRA Service Broker. + +Full technical walkthrough on how to configure these packages: + Blog Post + + Recording + + +## High Level Steps + +Within vRO: + +* Import "com.vmware.dms.backup.package" on the packages UI +* Update REST Host to point to your correct URL +* Update the Configuration Asset "DMS - Login Details" with appropiate username and password (ORG Admin user needed) +* Import "dynamictypes-config.package" using the appropiate workflow +Within vRA +* Create a custom resource pointing to the appropiate LifeCycle Actions +* Link Day 2 Actions +* Create a cloud template that consumes the Custom Resource +* Release cloud template to the service broker, configure catalog item to use vRO action "get_configuration_values" to populate the template version as a drop down list for the user to select from diff --git a/Service Broker/Create DMS Database.yml b/Service Broker/Create DMS Database.yml new file mode 100644 index 0000000..074cf58 --- /dev/null +++ b/Service Broker/Create DMS Database.yml @@ -0,0 +1,175 @@ +layout: + pages: + - id: page_general + sections: + - id: section_project + fields: + - id: project + display: dropDown + signpostPosition: right-middle + - id: section_deploymentName + fields: + - id: deploymentName + display: textField + signpostPosition: right-middle + - id: section_adminUser + fields: + - id: adminUser + display: textField + state: + visible: true + read-only: false + signpostPosition: right-middle + - id: section_adminPassword + fields: + - id: adminPassword + display: passwordField + state: + visible: true + read-only: false + signpostPosition: right-middle + - id: section_cpuCores + fields: + - id: cpuCores + display: textField + state: + visible: true + read-only: false + signpostPosition: right-middle + - id: section_memory + fields: + - id: memory + display: textField + state: + visible: true + read-only: false + signpostPosition: right-middle + - id: section_diskSize + fields: + - id: diskSize + display: textField + state: + visible: true + read-only: false + signpostPosition: right-middle + - id: section_automatedBackupStartTime + fields: + - id: automatedBackupStartTime + display: dropDown + state: + visible: true + read-only: false + signpostPosition: right-middle + - id: section_databaseVersion + fields: + - id: databaseVersion + display: dropDown + state: + visible: true + read-only: false + signpostPosition: right-middle + - id: section_dbName + fields: + - id: dbName + display: textField + state: + visible: true + read-only: false + signpostPosition: right-middle + - id: section_instanceName + fields: + - id: instanceName + display: textField + state: + visible: true + read-only: false + signpostPosition: right-middle + title: General + state: {} +schema: + project: + label: Project + type: + dataType: string + isMultiple: false + valueList: + id: projects + type: scriptAction + constraints: + required: true + deploymentName: + label: Deployment Name + type: + dataType: string + isMultiple: false + constraints: + required: true + max-value: 80 + adminUser: + label: DB Admin User Account Name + type: + dataType: string + isMultiple: false + default: admin + adminPassword: + label: DB Admin User Password + type: + dataType: secureString + isMultiple: false + default: VMware1!VMware1! + cpuCores: + label: Number of CPUs + type: + dataType: string + isMultiple: false + default: '4' + memory: + label: Memory (GB) + type: + dataType: string + isMultiple: false + default: '4' + diskSize: + label: Disk Size (GB) + type: + dataType: string + isMultiple: false + default: '100' + automatedBackupStartTime: + label: Automated Backup Start Time + type: + dataType: string + isMultiple: false + default: '06:00' + valueList: + - label: '06:00' + value: '06:00' + - label: '08:00' + value: '08:00' + - label: '23:00' + value: '23:00' + databaseVersion: + label: Database Version + type: + dataType: string + isMultiple: false + default: POSTGRES 12.7.0 + valueList: + id: com.vmware.dms/get_configuration_values + type: scriptAction + parameters: [] + constraints: {} + dbName: + label: Database Name + type: + dataType: string + isMultiple: false + default: db + instanceName: + label: instance Name + type: + dataType: string + isMultiple: false + default: instance +options: + externalValidations: [] diff --git a/vRealize Orchestrator/.DS_Store b/vRealize Orchestrator/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and b/vRealize Orchestrator/.DS_Store differ diff --git a/vRealize Orchestrator/com.vmware.dms.backup.package b/vRealize Orchestrator/com.vmware.dms.backup.package new file mode 100644 index 0000000..5a04e77 Binary files /dev/null and b/vRealize Orchestrator/com.vmware.dms.backup.package differ diff --git a/vRealize Orchestrator/dynamictypes-config.package b/vRealize Orchestrator/dynamictypes-config.package new file mode 100644 index 0000000..3a0fa06 Binary files /dev/null and b/vRealize Orchestrator/dynamictypes-config.package differ