|
| 1 | +#!/bin/bash |
| 2 | +# createcloudaccount dsmuser dsmpass connectorName guiPort accesskey secretkey |
| 3 | +username=$1 |
| 4 | +password=$2 |
| 5 | +accesskey=$5 |
| 6 | +secretkey=$6 |
| 7 | + |
| 8 | +# replace this with your DSM IP or FQDN |
| 9 | +DSMURL="localhost:$4" |
| 10 | + |
| 11 | +# Remove regions you don't want from this list |
| 12 | +#REGIONS=(useast1 uswest1 uswest2 euwest1 apsoutheast1 apsoutheast2 apnortheast1 saeast1 eucentral1 apnortheast2) |
| 13 | + |
| 14 | +# map aws regions to dsm region keys |
| 15 | +#useast1=amazon.cloud.region.key.1 |
| 16 | +#uswest2=amazon.cloud.region.key.2 |
| 17 | +#uswest1=amazon.cloud.region.key.3 |
| 18 | +#euwest1=amazon.cloud.region.key.4 |
| 19 | +#apsoutheast1=amazon.cloud.region.key.5 |
| 20 | +#apnortheast1=amazon.cloud.region.key.6 |
| 21 | +#saeast1=amazon.cloud.region.key.7 |
| 22 | +#apsoutheast2=amazon.cloud.region.key.8 |
| 23 | +#eucentral1=amazon.cloud.region.key.9 |
| 24 | +#apnortheast2=amazon.cloud.region.key.12 |
| 25 | + |
| 26 | +# map aws regions to ec2 endpoints |
| 27 | +#useast1ep=ec2.us-east-1.amazonaws.com |
| 28 | +#uswest2ep=ec2.us-west-2.amazonaws.com |
| 29 | +#uswest1ep=ec2.us-west-1.amazonaws.com |
| 30 | +#euwest1ep=ec2.eu-west-1.amazonaws.com |
| 31 | +#apsoutheast1ep=ec2.ap-southeast-1.amazonaws.com |
| 32 | +#apnortheast1ep=ec2.ap-northeast-1.amazonaws.com |
| 33 | +#saeast1ep=ec2.sa-east-1.amazonaws.com |
| 34 | +#apsoutheast2ep=ec2.ap-southeast-2.amazonaws.com |
| 35 | +#eucentral1ep=ec2.eu-central-1.amazonaws.com |
| 36 | +#apnortheast2ep=ec2.ap-northeast-2.amazonaws.com |
| 37 | + |
| 38 | + |
| 39 | +echo "#####Login to DSM" |
| 40 | +tempDSSID=$(curl -k -H "Content-Type: application/json" -X POST "https://$DSMURL/rest/authentication/login/primary" -d "{"dsCredentials":{"userName":"$username","password":"$password"}}") |
| 41 | + |
| 42 | +echo "#####Looping through regions to create connectors" |
| 43 | +#for region in "${REGIONS[@]}" |
| 44 | +#do |
| 45 | +# endpoint="${region}ep" |
| 46 | +# echo "##### creating connector for $region region with endpoint ${!endpoint}" |
| 47 | +# curl -ks -H "Content-Type: application/json" "Accept: application/json" -X POST "https://$DSMURL/rest/cloudaccounts" -d '{"createCloudAccountRequest":{"cloudAccountElement":{"accessKey":"'${accesskey}'","cloudRegion":"'${!region}'","cloudType":"AMAZON","name":"'$3'","secretKey":"'${secretkey}'","endpoint":"'${!endpoint}'","azureCertificate":"-"},"sessionId":"'$tempDSSID'"}}' |
| 48 | +#done |
| 49 | + |
| 50 | +curl -ks -H "Content-Type: application/json" "Accept: application/json" -X POST "https://$DSMURL/rest/cloudaccounts" -d '{"createCloudAccountRequest":{"cloudAccountElement":{"accessKey":"'${accesskey}'","cloudRegion":"'amazon.cloud.region.key.10'","cloudType":"AMAZON","name":"'$3'","secretKey":"'${secretkey}'","endpoint":"'ec2.us-gov-west-1.amazonaws.com'","azureCertificate":"-"},"sessionId":"'$tempDSSID'"}}' |
| 51 | + |
| 52 | +curl -k -X DELETE https://$DSMURL/rest/authentication/logout?sID=$tempDSSID |
| 53 | + |
| 54 | +unset accesskey |
| 55 | +unset secretkey |
| 56 | +unset tempDSSID |
| 57 | +unset username |
| 58 | +unset password |
| 59 | + |
0 commit comments