Skip to content

Commit 8dbaf59

Browse files
committed
website: start config docs
1 parent 9d75352 commit 8dbaf59

3 files changed

Lines changed: 104 additions & 40 deletions

File tree

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
layout: "docs"
3+
page_title: "Configuration"
4+
sidebar_current: "docs-config"
5+
---
6+
7+
# Configuration
8+
9+
Terraform uses text files to describe infrastructure and to set variables.
10+
These text files are called Terraform _configurations_ and end in
11+
`.tf`. This section talks about the format of these files as well as
12+
how they're loaded.
13+
14+
The format of the configuration files are able to be in two formats:
15+
Terraform format and JSON. The Terraform format is more human-readable,
16+
supports comments, and is the generally recommended format for most
17+
Terraform files. The JSON format is meant for machines to create,
18+
modify, and update, but can also be done by Terraform operators if
19+
you prefer. Terraform format ends in `.tf` and JSON format ends in
20+
`.tf.json`.
21+
22+
Click a sub-section in the navigation to the left to learn more about
23+
Terraform configuration.
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
layout: "docs"
3+
page_title: "Load Order and Semantics"
4+
sidebar_current: "docs-config-load"
5+
---
6+
7+
# Load Order and Semantics
8+
9+
When invoking any command that loads the Terraform configuration,
10+
Terraform loads all configuration files within the directory
11+
specified in alphabetical order. The flies loaded must end in
12+
either `.tf` or `.tf.json` to specify the format that is in use.
13+
Otherwise, the files are ignored.
14+
15+
[Override](/docs/configuration/override.html)
16+
files are the exception, as they're loaded after all non-override
17+
files, in alphabetical order.
18+
19+
The configuration within the loaded files are appended to each
20+
other. This is in contrast to being merged. This means that two
21+
resources with the same name are not merged, and will instead
22+
cause a validation error. This is in contrast to
23+
[overrides](/docs/configuration/override.html),
24+
which do merge.
25+
26+
The order of variables, resources, etc. defined within the
27+
configuration doesn't matter. Terraform configurations are
28+
[declarative](http://en.wikipedia.org/wiki/Declarative_programming),
29+
so references to other resources and variables do not depend
30+
on the order they're defined.

website/source/layouts/docs.erb

Lines changed: 51 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -8,87 +8,98 @@
88

99
<li<%= sidebar_current("docs-config") %>>
1010
<a href="/docs/configuration/index.html">Configuration</a>
11-
<ul class="nav">
12-
</ul>
13-
</li>
11+
<ul class="nav">
12+
<li<%= sidebar_current("docs-config-load") %>>
13+
<a href="/docs/configuration/load.html">Load Order and Semantics</a>
14+
</li>
15+
16+
<li<%= sidebar_current("docs-config-syntax") %>>
17+
<a href="/docs/configuration/syntax.html">Configuration Syntax</a>
18+
</li>
19+
20+
<li<%= sidebar_current("docs-config-override") %>>
21+
<a href="/docs/configuration/override.html">Overrides</a>
22+
</li>
23+
</ul>
24+
</li>
1425

1526
<li<%= sidebar_current("docs-commands") %>>
1627
<a href="/docs/commands/index.html">Commands (CLI)</a>
1728
<ul class="nav">
1829
<li<%= sidebar_current("docs-commands-apply") %>>
1930
<a href="/docs/commands/apply.html">apply</a>
20-
</li>
31+
</li>
2132

2233
<li<%= sidebar_current("docs-commands-graph") %>>
2334
<a href="/docs/commands/graph.html">graph</a>
24-
</li>
35+
</li>
2536

2637
<li<%= sidebar_current("docs-commands-output") %>>
2738
<a href="/docs/commands/output.html">output</a>
28-
</li>
39+
</li>
2940

3041
<li<%= sidebar_current("docs-commands-plan") %>>
3142
<a href="/docs/commands/plan.html">plan</a>
32-
</li>
43+
</li>
3344

3445
<li<%= sidebar_current("docs-commands-refresh") %>>
3546
<a href="/docs/commands/refresh.html">refresh</a>
3647
</li>
3748

38-
<li<%= sidebar_current("docs-commands-show") %>>
49+
<li<%= sidebar_current("docs-commands-show") %>>
3950
<a href="/docs/commands/show.html">show</a>
40-
</li>
51+
</li>
4152
</ul>
4253
</li>
4354

4455
<li<%= sidebar_current("docs-providers") %>>
4556
<a href="/docs/providers/index.html">Providers</a>
46-
<ul class="nav">
57+
<ul class="nav">
4758
<li<%= sidebar_current("docs-providers-aws") %>>
4859
<a href="/docs/providers/aws/index.html">AWS</a>
49-
</li>
60+
</li>
5061

5162
<li<%= sidebar_current("docs-providers-do") %>>
5263
<a href="/docs/providers/do/index.html">DigitalOcean</a>
53-
</li>
64+
</li>
5465

5566
<li<%= sidebar_current("docs-providers-heroku") %>>
5667
<a href="/docs/providers/heroku/index.html">Heroku</a>
57-
</li>
58-
</ul>
59-
</li>
68+
</li>
69+
</ul>
70+
</li>
6071

6172
<li<%= sidebar_current("docs-provisioners") %>>
6273
<a href="/docs/provisioners/index.html">Provisioners</a>
63-
<ul class="nav">
74+
<ul class="nav">
6475
<li<%= sidebar_current("docs-provisioners-connection") %>>
6576
<a href="/docs/provisioners/connection.html">connection</a>
66-
</li>
77+
</li>
6778

6879
<li<%= sidebar_current("docs-provisioners-file") %>>
6980
<a href="/docs/provisioners/file.html">file</a>
70-
</li>
81+
</li>
7182

7283
<li<%= sidebar_current("docs-provisioners-local") %>>
7384
<a href="/docs/provisioners/local-exec.html">local-exec</a>
74-
</li>
85+
</li>
7586

7687
<li<%= sidebar_current("docs-provisioners-remote") %>>
7788
<a href="/docs/provisioners/remote-exec.html">remote-exec</a>
78-
</li>
79-
</ul>
80-
</li>
89+
</li>
90+
</ul>
91+
</li>
8192

8293
<li<%= sidebar_current("docs-guides") %>>
8394
<a href="/docs/guides/index.html">Guides</a>
84-
<ul class="nav">
95+
<ul class="nav">
8596
<li<%= sidebar_current("docs-guides-servers") %>>
8697
<a href="/docs/guides/servers.html">Adding/Removing Servers</a>
87-
</li>
98+
</li>
8899

89100
<li<%= sidebar_current("docs-guides-bootstrapping") %>>
90101
<a href="/docs/guides/bootstrapping.html">Bootstrapping</a>
91-
</li>
102+
</li>
92103

93104
<li<%= sidebar_current("docs-guides-dns-cache") %>>
94105
<a href="/docs/guides/dns-cache.html">DNS Caching</a>
@@ -100,43 +111,43 @@
100111

101112
<li<%= sidebar_current("docs-guides-external") %>>
102113
<a href="/docs/guides/external.html">External Services</a>
103-
</li>
114+
</li>
104115

105-
<li<%= sidebar_current("docs-guides-leader") %>>
116+
<li<%= sidebar_current("docs-guides-leader") %>>
106117
<a href="/docs/guides/leader-election.html">Leader Election</a>
107-
</li>
118+
</li>
108119

109-
<li<%= sidebar_current("docs-guides-datacenters") %>>
120+
<li<%= sidebar_current("docs-guides-datacenters") %>>
110121
<a href="/docs/guides/datacenters.html">Multiple Datacenters</a>
111-
</li>
122+
</li>
112123

113-
<li<%= sidebar_current("docs-guides-outage") %>>
124+
<li<%= sidebar_current("docs-guides-outage") %>>
114125
<a href="/docs/guides/outage.html">Outage Recovery</a>
115-
</li>
116-
</ul>
126+
</li>
127+
</ul>
117128

118129
<li<%= sidebar_current("docs-internals") %>>
119130
<a href="/docs/internals/index.html">Internals</a>
120-
<ul class="nav">
131+
<ul class="nav">
121132
<li<%= sidebar_current("docs-internals-architecture") %>>
122133
<a href="/docs/internals/architecture.html">Architecture</a>
123-
</li>
134+
</li>
124135

125136
<li<%= sidebar_current("docs-internals-consensus") %>>
126137
<a href="/docs/internals/consensus.html">Consensus Protocol</a>
127-
</li>
138+
</li>
128139

129140
<li<%= sidebar_current("docs-internals-gossip") %>>
130141
<a href="/docs/internals/gossip.html">Gossip Protocol</a>
131-
</li>
142+
</li>
132143

133144
<li<%= sidebar_current("docs-internals-sessions") %>>
134145
<a href="/docs/internals/sessions.html">Sessions</a>
135-
</li>
146+
</li>
136147

137148
<li<%= sidebar_current("docs-internals-security") %>>
138149
<a href="/docs/internals/security.html">Security Model</a>
139-
</li>
150+
</li>
140151

141152
<li<%= sidebar_current("docs-internals-jepsen") %>>
142153
<a href="/docs/internals/jepsen.html">Jepsen Testing</a>
@@ -147,5 +158,5 @@
147158
</div>
148159
<% end %>
149160

150-
<%= yield %>
161+
<%= yield %>
151162
<% end %>

0 commit comments

Comments
 (0)