forked from UrbanCode/terraform
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README-Microsoft
72 lines (54 loc) · 2.74 KB
/
README-Microsoft
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
Microsoft (Windows Azure)
======================================
Allowed commands:
create - creates an environment of VMs, websites, cloud services, storage, etc.
destroy - deletes a previously created environment
-----------
Credentials
-----------
Because your Azure credentials are handled by the Azure for Node command line
tool, inputting real credentials is unnecessary. However, to satisfy the
Terraform parser, you must have a credentials file with dummy contents.
A credentials file has 4 components: type, name, username, and password.
Your credentials file must have this format, but the property values for
name, username, and password can be anything.
type=com.urbancode.terraform.credentials.microsoft.CredentialsMicrosoft
name=my.azure.creds
username=asdf
password=jkl
-----------
Templates
-----------
The general layout of an Azure Environment Template is the following:
The number in the parenthesis is the number of those elements allowed.
context(1)
└── environment(1)
├── vm(n)
│ └──endpoint(n)
│ └──attach-disk(n)
└── website(n)
The following is a list of elements available in the xml:
[ The hierarchy represents which elements go under which in the xml ]
o context: The context holds the whole environment. It has one or more
xmlns attributes, which specify map an xml namespace to a package. The
packages it points to should contain a properties file named:
x2o.classes
for Azure use: xmlns="com.urbancode.uprovision.tasks.microsoft"
o environment: The environment contains VMs and websites.
o vm: This is an Azure virtual machine. Required attributes: vm-name,
image, username, password, location or affinity-group.
Type "azure vm" for more help.
Lots of optional attributes are available, and they roughly correspond
to the optional flags for creating VMs, which you can find by
typing "azure vm create -h".
List of optional attributes: blob-url, vm-size (default small),
ssh (boolean), rdp(boolean), virtual-network-name, subnet-names,
add-uuid (makes VM name unique)
o endpoint: adds an endpoint to a VM.
Required attributes: public-port, private-port
o disk-attach: attaches a disk to a VM. Required attribute: disk-name
o website: This is an Azure website.
Required attributes: host-name, location
Optional attribute: git(bool)- will create git repo on the site if true
For more information, simply type "azure" in your command line
(if you have azure installed).