Skip to content

Commit 2988e37

Browse files
authored
Merge pull request #21484 from minamijoyo/fix-statev2-hash-decode
states/statefile: decode backend hash as uint64
2 parents c502b4c + ac83827 commit 2988e37

3 files changed

Lines changed: 234 additions & 1 deletion

File tree

Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
{
2+
"version": 3,
3+
"terraform_version": "0.11.1",
4+
"serial": 8,
5+
"lineage": "0f5b2ff9-6ff5-8e9e-1f81-aa3ce9a483eb",
6+
"backend": {
7+
"hash": 10669755453527594976
8+
},
9+
"modules": [
10+
{
11+
"path": [
12+
"root"
13+
],
14+
"outputs": {
15+
"results": {
16+
"sensitive": false,
17+
"type": "map",
18+
"value": {
19+
"aws_region": "us-west-2",
20+
"list": "[{\"triggers\":{\"index\":\"0\"}},{\"triggers\":{\"index\":\"1\"}}]",
21+
"list_item_0": "{\"triggers\":{\"index\":\"0\"}}",
22+
"list_item_1": "{\"triggers\":{\"index\":\"1\"}}",
23+
"list_triggers": "[{\"index\":\"0\"},{\"index\":\"1\"}]",
24+
"list_triggers_item": "{\"index\":\"0\"}",
25+
"module_object": "{\"test\":\"hello us-west-2\",\"test2\":\"hello world 2\"}",
26+
"module_output": "hello us-west-2",
27+
"single": "{\"triggers\":{\"baz\":\"BAR\",\"cwd_path\":\"/home/mart/Devel/terraform/tmp/hcl2-simple\",\"foo\":\"bar\",\"format\":\"Hello 12\",\"json\":\"{\\\"foo\\\":\\\"bar\\\",\\\"wonk\\\":[]}\",\"module_path\":\"/home/mart/Devel/terraform/tmp/hcl2-simple\",\"root_path\":\"/home/mart/Devel/terraform/tmp/hcl2-simple\",\"woot\":\"us-west-2\",\"workspace\":\"default\"}}"
28+
}
29+
}
30+
},
31+
"resources": {
32+
"null_resource.bar.0": {
33+
"type": "null_resource",
34+
"depends_on": [
35+
"null_resource.baz"
36+
],
37+
"primary": {
38+
"id": "604776346677326098",
39+
"attributes": {
40+
"id": "604776346677326098",
41+
"triggers.%": "1",
42+
"triggers.index": "0"
43+
},
44+
"meta": {
45+
"schema_version": "1"
46+
},
47+
"tainted": false
48+
},
49+
"deposed": [],
50+
"provider": "provider.null"
51+
},
52+
"null_resource.bar.1": {
53+
"type": "null_resource",
54+
"depends_on": [
55+
"null_resource.baz"
56+
],
57+
"primary": {
58+
"id": "4776432143683449212",
59+
"attributes": {
60+
"id": "4776432143683449212",
61+
"triggers.%": "1",
62+
"triggers.index": "1"
63+
},
64+
"meta": {},
65+
"tainted": false
66+
},
67+
"deposed": [],
68+
"provider": "provider.null"
69+
},
70+
"null_resource.baz": {
71+
"type": "null_resource",
72+
"depends_on": [],
73+
"primary": {
74+
"id": "1361331090091665738",
75+
"attributes": {
76+
"id": "1361331090091665738",
77+
"triggers.%": "9",
78+
"triggers.baz": "BAR",
79+
"triggers.cwd_path": "/home/mart/Devel/terraform/tmp/hcl2-simple",
80+
"triggers.foo": "bar",
81+
"triggers.format": "Hello 12",
82+
"triggers.json": "{\"foo\":\"bar\",\"wonk\":[]}",
83+
"triggers.module_path": "/home/mart/Devel/terraform/tmp/hcl2-simple",
84+
"triggers.root_path": "/home/mart/Devel/terraform/tmp/hcl2-simple",
85+
"triggers.woot": "us-west-2",
86+
"triggers.workspace": "default"
87+
},
88+
"meta": {
89+
"foo": "bar"
90+
},
91+
"tainted": false
92+
},
93+
"deposed": [],
94+
"provider": "provider.null"
95+
}
96+
},
97+
"depends_on": []
98+
},
99+
{
100+
"path": [
101+
"root",
102+
"child"
103+
],
104+
"outputs": {
105+
"test": {
106+
"sensitive": false,
107+
"type": "string",
108+
"value": "hello us-west-2"
109+
},
110+
"test2": {
111+
"sensitive": false,
112+
"type": "string",
113+
"value": "hello world 2"
114+
}
115+
},
116+
"resources": {
117+
"null_resource.foo": {
118+
"type": "null_resource",
119+
"depends_on": [],
120+
"primary": {
121+
"id": "1361",
122+
"attributes": {
123+
"id": "1361",
124+
"triggers.%": "0"
125+
},
126+
"meta": {},
127+
"tainted": false
128+
},
129+
"deposed": [],
130+
"provider": "provider.null"
131+
}
132+
},
133+
"depends_on": []
134+
}
135+
]
136+
}
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
{
2+
"version": 4,
3+
"terraform_version": "0.11.1",
4+
"serial": 8,
5+
"lineage": "0f5b2ff9-6ff5-8e9e-1f81-aa3ce9a483eb",
6+
"outputs": {
7+
"results": {
8+
"type": [
9+
"map",
10+
"string"
11+
],
12+
"value": {
13+
"aws_region": "us-west-2",
14+
"list": "[{\"triggers\":{\"index\":\"0\"}},{\"triggers\":{\"index\":\"1\"}}]",
15+
"list_item_0": "{\"triggers\":{\"index\":\"0\"}}",
16+
"list_item_1": "{\"triggers\":{\"index\":\"1\"}}",
17+
"list_triggers": "[{\"index\":\"0\"},{\"index\":\"1\"}]",
18+
"list_triggers_item": "{\"index\":\"0\"}",
19+
"module_object": "{\"test\":\"hello us-west-2\",\"test2\":\"hello world 2\"}",
20+
"module_output": "hello us-west-2",
21+
"single": "{\"triggers\":{\"baz\":\"BAR\",\"cwd_path\":\"/home/mart/Devel/terraform/tmp/hcl2-simple\",\"foo\":\"bar\",\"format\":\"Hello 12\",\"json\":\"{\\\"foo\\\":\\\"bar\\\",\\\"wonk\\\":[]}\",\"module_path\":\"/home/mart/Devel/terraform/tmp/hcl2-simple\",\"root_path\":\"/home/mart/Devel/terraform/tmp/hcl2-simple\",\"woot\":\"us-west-2\",\"workspace\":\"default\"}}"
22+
}
23+
}
24+
},
25+
"resources": [
26+
{
27+
"mode": "managed",
28+
"type": "null_resource",
29+
"name": "bar",
30+
"each": "list",
31+
"provider": "provider.null",
32+
"instances": [
33+
{
34+
"attributes_flat": {
35+
"id": "604776346677326098",
36+
"triggers.%": "1",
37+
"triggers.index": "0"
38+
},
39+
"depends_on": ["null_resource.baz"],
40+
"index_key": 0,
41+
"schema_version": 1
42+
},
43+
{
44+
"attributes_flat": {
45+
"id": "604776346677326098",
46+
"triggers.%": "1",
47+
"triggers.index": "0"
48+
},
49+
"depends_on": ["null_resource.baz"],
50+
"index_key": 1,
51+
"schema_version": 0
52+
}
53+
]
54+
},
55+
{
56+
"mode": "managed",
57+
"type": "null_resource",
58+
"name": "baz",
59+
"provider": "provider.null",
60+
"instances": [
61+
{
62+
"attributes_flat": {
63+
"id": "1361331090091665738",
64+
"triggers.%": "9",
65+
"triggers.baz": "BAR",
66+
"triggers.cwd_path": "/home/mart/Devel/terraform/tmp/hcl2-simple",
67+
"triggers.foo": "bar",
68+
"triggers.format": "Hello 12",
69+
"triggers.json": "{\"foo\":\"bar\",\"wonk\":[]}",
70+
"triggers.module_path": "/home/mart/Devel/terraform/tmp/hcl2-simple",
71+
"triggers.root_path": "/home/mart/Devel/terraform/tmp/hcl2-simple",
72+
"triggers.woot": "us-west-2",
73+
"triggers.workspace": "default"
74+
},
75+
"schema_version": 0,
76+
"private": "eyJmb28iOiJiYXIifQ=="
77+
}
78+
]
79+
},
80+
{
81+
"module": "module.child",
82+
"mode": "managed",
83+
"type": "null_resource",
84+
"name": "foo",
85+
"provider": "provider.null",
86+
"instances": [
87+
{
88+
"attributes_flat": {
89+
"id": "1361",
90+
"triggers.%": "0"
91+
},
92+
"schema_version": 0
93+
}
94+
]
95+
}
96+
]
97+
}

states/statefile/version2.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,5 +205,5 @@ type instanceStateV2 struct {
205205
type backendStateV2 struct {
206206
Type string `json:"type"` // Backend type
207207
ConfigRaw json.RawMessage `json:"config"` // Backend raw config
208-
Hash int `json:"hash"` // Hash of portion of configuration from config files
208+
Hash uint64 `json:"hash"` // Hash of portion of configuration from config files
209209
}

0 commit comments

Comments
 (0)