terraform/examples/azure-wordpress-mysql-repli.../website.tf

141 lines
4.8 KiB
Terraform
Raw Normal View History

provider/azurerm: Example of Wordpress MySql Replication (#15260) * initial commit - 101-vm-from-user-image * changed branch name * not deploying - storage problems * provisions vm but image not properly prepared * storage not correct * provisions properly * changed main.tf to azuredeploy.tf * added tfvars and info for README * tfvars ignored and corrected file ext * added CI config; added sane defaults for variables; updated deployment script, added mac specific deployment for local testing * deploy.sh to be executable * executable deploy files * added CI files; changed vars * prep for PR * removal of old folder * prep for PR * wrong args for travis * more PR prep * updated README * commented out variables in terraform.tfvars * Topic 101 vm from user image (#2) * initial commit - 101-vm-from-user-image * added tfvars and info for README * added CI config; added sane defaults for variables; updated deployment script, added mac specific deployment for local testing * prep for PR * added new template * oops, left off master * prep for PR * correct repository for destination * renamed scripts to be more intuitive; added check for docker * merge vm simple; vm from image * initial commit * deploys locally * updated deploy * consolidated deploy and after_deploy into a single script; simplified ci process; added os_profile_linux_config * added terraform show * changed to allow http & https (like ARM tmplt) * changed host_name & host_name variable desc * added az cli check * on this branch, only build test_dir; master will aggregate all the examples * merge master * added new constructs/naming for deploy scripts, etc. * suppress az login output * suppress az login output * forgot about line breaks * breaking build as an example * fixing broken build example * merge of CI config * fixed grammar in readme * prep for PR * took out armviz button and minor README changes * changed host_name * fixed merge conflicts * changed host_name variable * updating Hashicorp's changes to merged simple linux branch * updating files to merge w/master and prep for Hashicorp pr * Revert "updating files to merge w/master and prep for Hashicorp pr" This reverts commit b850cd5d2a858eff073fc5a1097a6813d0f8b362. * Revert "updating Hashicorp's changes to merged simple linux branch" This reverts commit dbaf8d14a9cdfcef0281919671357f6171ebd4e6. * removing vm from user image example from this branch * removed old branch * azure-2-vms-loadbalancer-lbrules (#13) * initial commit * need to change lb_rule & nic * deploys locally * updated README * updated travis and deploy scripts for Hari's repo * renamed deploy script * clean up * prep for PR * updated readme * fixing conflict in .travis.yml * initial commit; in progress * in progress * in progress; encryption fails * in progress * deploys successfully locally * clean up; deploy typo fixed * merging hashi master into this branch * troubleshooting deploy * added missing vars to deploy script * updated README, outputs, and added graph * simplified outputs * provisions locally * cleaned up vars * fixed chart on README * prepping for pr * fixed merge conflict * initial commit * provisions locally; but azuremysql.sh script fails * commented out provider * commenting out provider vars * tf fmt / uncommented Ext - will fail * testing other examples * changed os version for script compatability; changed command * removed ssh from output (no nsg) * changed travis to test only this topic's dir * added nsg * testing encrypt-running-linux * fixed IPs and validation * cleanup merge conflicts * updated validation cmd; reverted non-topic ci changes * reverting to Hashicorp's .travis.yml * removing return line * returned return lines to travis.yml * return lines * return lines * travis
2017-06-13 15:28:42 +02:00
# ********************** WEBSITE DEPLOYMENT TEMPLATE ********************** #
resource "azurerm_template_deployment" "website" {
name = "website"
resource_group_name = "${azurerm_resource_group.rg.name}"
depends_on = ["azurerm_virtual_machine_extension.setup_mysql"]
template_body = <<DEPLOY
{
"$schema":"http://schema.management.azure.com/schemas/2014-04-01-preview/deploymentTemplate.json#",
"contentVersion":"1.0.0.0",
"parameters":{
"siteName":{
"type":"string",
"defaultValue":"${var.site_name}"
},
"hostingPlanName":{
"type":"string",
"defaultValue":"${var.hosting_plan_name}"
},
"sku":{
"type":"string",
"allowedValues":[
"Free",
"Shared",
"Basic",
"Standard",
"Premium"
],
"defaultValue":"${var.sku}"
},
"workerSize":{
"type":"string",
"allowedValues":[
"0",
"1",
"2"
],
"defaultValue":"${var.worker_size}"
},
"dbServer":{
"type":"string",
"defaultValue":"${var.dns_name}.${azurerm_resource_group.rg.location}.cloudapp.azure.com:${var.mysql_front_end_port_0}"
},
"dbName":{
"type":"string",
"defaultValue":"${var.unique_prefix}wordpress"
},
"dbAdminPassword":{
"type":"string",
"defaultValue":"${var.mysql_root_password}"
}
},
"variables":{
"connectionString":"[concat('Database=', parameters('dbName'), ';Data Source=', parameters('dbServer'), ';User Id=admin;Password=', parameters('dbAdminPassword'))]",
"repoUrl":"https://github.com/azureappserviceoss/wordpress-azure",
"branch":"master",
"workerSize":"[parameters('workerSize')]",
"sku":"[parameters('sku')]",
"hostingPlanName":"[parameters('hostingPlanName')]"
},
"resources":[
{
"apiVersion":"2014-06-01",
"name":"[variables('hostingPlanName')]",
"type":"Microsoft.Web/serverfarms",
"location":"[resourceGroup().location]",
"properties":{
"name":"[variables('hostingPlanName')]",
"sku":"[variables('sku')]",
"workerSize":"[variables('workerSize')]",
"hostingEnvironment":"",
"numberOfWorkers":0
}
},
{
"apiVersion":"2015-02-01",
"name":"[parameters('siteName')]",
"type":"Microsoft.Web/sites",
"location":"[resourceGroup().location]",
"tags":{
"[concat('hidden-related:', '/subscriptions/', subscription().subscriptionId,'/resourcegroups/', resourceGroup().name, '/providers/Microsoft.Web/serverfarms/', variables('hostingPlanName'))]":"empty"
},
"dependsOn":[
"[concat('Microsoft.Web/serverfarms/', variables('hostingPlanName'))]"
],
"properties":{
"name":"[parameters('siteName')]",
"serverFarmId":"[concat('/subscriptions/', subscription().subscriptionId,'/resourcegroups/', resourceGroup().name, '/providers/Microsoft.Web/serverfarms/', variables('hostingPlanName'))]",
"hostingEnvironment":""
},
"resources":[
{
"apiVersion":"2015-04-01",
"name":"connectionstrings",
"type":"config",
"dependsOn":[
"[concat('Microsoft.Web/Sites/', parameters('siteName'))]"
],
"properties":{
"defaultConnection":{
"value":"[variables('connectionString')]",
"type":"MySQL"
}
}
},
{
"apiVersion":"2015-04-01",
"name":"web",
"type":"config",
"dependsOn":[
"[concat('Microsoft.Web/Sites/', parameters('siteName'))]"
],
"properties":{
"phpVersion":"5.6"
}
},
{
"apiVersion":"2015-08-01",
"name":"web",
"type":"sourcecontrols",
"dependsOn":[
"[resourceId('Microsoft.Web/Sites', parameters('siteName'))]",
"[concat('Microsoft.Web/Sites/', parameters('siteName'), '/config/connectionstrings')]",
"[concat('Microsoft.Web/Sites/', parameters('siteName'), '/config/web')]"
],
"properties":{
"RepoUrl":"[variables('repoUrl')]",
"branch":"[variables('branch')]",
"IsManualIntegration":true
}
}
]
}
]
}
DEPLOY
deployment_mode = "Incremental"
}