stacco 0.1.60 → 0.1.61

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1cb10e6cac839663f4769cff722f74b02c275063
4
- data.tar.gz: b0e326fc54393a74e5675ceecc87888590cef3f7
3
+ metadata.gz: 55ea351649e34bbb3d1b63fe3700ac7ac383da17
4
+ data.tar.gz: 05bcfd1299b422e4d49c8331cfccbb2afc7e84ab
5
5
  SHA512:
6
- metadata.gz: 6668515ab11ab77031ce79c0ff71d06e16be9ed7cf4a185c103cc0fd8d0176cc992349fa6be58dcdf7b0176148c4e951902160fce105c208c957145e6e4dfea5
7
- data.tar.gz: 1532af4515ac2aec5ad177630b749db24a4dc2fe68c379f560c26eb8e6220f0b8552a2b4bc7d865130c54db3c60910e1f4bc1a9f9b36cc118dff6d34c9281551
6
+ metadata.gz: abfbb2f8446e1dd209a2ac16d694bb8b2cc0bc3b1020b220b16e950627f14778912fe394da7f74f4bc5e9a83138b84f5480498462b7f5c47659cc6977868f025
7
+ data.tar.gz: dfa3e691ed3c3de599f9a82b2e8ac55d96933f523f82eb0e77836a3339e2272e72aa9646a1b6ec22801653003b45d0dce2a9a97ed73969ce1b2e3e9448c1d7b2
data/.git/COMMIT_EDITMSG CHANGED
@@ -1 +1 @@
1
- Typo
1
+ Allow direct connections to admin API from developer and operator IP ranges
data/.git/index CHANGED
Binary file
data/.git/logs/HEAD CHANGED
@@ -153,3 +153,4 @@ fec671e3a732fa81d23817e4f881a46a63996fb4 2fc5c1e9203eae0f705af2a77b752c0d1244f09
153
153
  5f708e5cb33d82d29fc82b85f65ad0b5f545973b 00b8b1720aea57a9f0a077d716f869efeeefd444 Levi Aul <levi@leviaul.com> 1406825256 -0700 commit: Fix addressing and variable naming for new template organization
154
154
  00b8b1720aea57a9f0a077d716f869efeeefd444 fe15d48b24512d8d52c3bf6a0a613d53c8588915 Levi Aul <levi@leviaul.com> 1408727336 -0700 commit: Check that a CloudFront distribution is owned by the stack before trying to initialize it
155
155
  fe15d48b24512d8d52c3bf6a0a613d53c8588915 bf737d4d54e2de569169955e9b1bb5c76b70613b Levi Aul <levi@leviaul.com> 1408732171 -0700 commit: Typo
156
+ bf737d4d54e2de569169955e9b1bb5c76b70613b c1bc4a8d9c305d16d365b8a6a912ca54ef39ffcd Levi Aul <levi@leviaul.com> 1409010960 -0700 commit: Allow direct connections to admin API from developer and operator IP ranges
@@ -95,3 +95,4 @@ fec671e3a732fa81d23817e4f881a46a63996fb4 2fc5c1e9203eae0f705af2a77b752c0d1244f09
95
95
  5f708e5cb33d82d29fc82b85f65ad0b5f545973b 00b8b1720aea57a9f0a077d716f869efeeefd444 Levi Aul <levi@leviaul.com> 1406825256 -0700 commit: Fix addressing and variable naming for new template organization
96
96
  00b8b1720aea57a9f0a077d716f869efeeefd444 fe15d48b24512d8d52c3bf6a0a613d53c8588915 Levi Aul <levi@leviaul.com> 1408727336 -0700 commit: Check that a CloudFront distribution is owned by the stack before trying to initialize it
97
97
  fe15d48b24512d8d52c3bf6a0a613d53c8588915 bf737d4d54e2de569169955e9b1bb5c76b70613b Levi Aul <levi@leviaul.com> 1408732171 -0700 commit: Typo
98
+ bf737d4d54e2de569169955e9b1bb5c76b70613b c1bc4a8d9c305d16d365b8a6a912ca54ef39ffcd Levi Aul <levi@leviaul.com> 1409010960 -0700 commit: Allow direct connections to admin API from developer and operator IP ranges
@@ -63,3 +63,4 @@ a35b7d6be7d227c6a15a009a2acf8bb6196fbc28 7a66a2604d4a1b7ff3ee2ec9a1a839458405f30
63
63
  5f708e5cb33d82d29fc82b85f65ad0b5f545973b 00b8b1720aea57a9f0a077d716f869efeeefd444 Levi Aul <levi@leviaul.com> 1406825272 -0700 update by push
64
64
  00b8b1720aea57a9f0a077d716f869efeeefd444 fe15d48b24512d8d52c3bf6a0a613d53c8588915 Levi Aul <levi@leviaul.com> 1408727345 -0700 update by push
65
65
  fe15d48b24512d8d52c3bf6a0a613d53c8588915 bf737d4d54e2de569169955e9b1bb5c76b70613b Levi Aul <levi@leviaul.com> 1408732180 -0700 update by push
66
+ bf737d4d54e2de569169955e9b1bb5c76b70613b c1bc4a8d9c305d16d365b8a6a912ca54ef39ffcd Levi Aul <levi@leviaul.com> 1409010964 -0700 update by push
@@ -1 +1 @@
1
- bf737d4d54e2de569169955e9b1bb5c76b70613b
1
+ c1bc4a8d9c305d16d365b8a6a912ca54ef39ffcd
@@ -1 +1 @@
1
- bf737d4d54e2de569169955e9b1bb5c76b70613b
1
+ c1bc4a8d9c305d16d365b8a6a912ca54ef39ffcd
@@ -0,0 +1 @@
1
+ c1bc4a8d9c305d16d365b8a6a912ca54ef39ffcd
data/lib/stacco/stack.rb CHANGED
@@ -184,6 +184,13 @@ class Stacco::Stack
184
184
  'UserDataEnvironmentVar' => env_lns.join
185
185
  }
186
186
 
187
+ (self.config['permit_backoffice_access'] || []).each do |rule_name, (auth_type, auth_opts)|
188
+ case auth_type
189
+ when :ip_range
190
+ parameters["#{rule_name.capitalize}IPRange"] = auth_opts
191
+ end
192
+ end
193
+
187
194
  scaling_groups = self.config['scale']
188
195
  self.enabled_layer_names.each do |layer_name|
189
196
  next unless scaling_groups.has_key?(layer_name)
@@ -1,4 +1,9 @@
1
1
  {
2
+ "Conditions" : {
3
+ "DeveloperCanIngress" : {"Fn::Not": [{"Fn::Equals" : [{"Ref" : "DeveloperIPRange"}, ""]}]},
4
+ "OperatorCanIngress" : {"Fn::Not": [{"Fn::Equals" : [{"Ref" : "OperatorIPRange"}, ""]}]}
5
+ },
6
+
2
7
  "Resources": {
3
8
 
4
9
  "AdminAPISecurityGroup": {"Type": "AWS::EC2::SecurityGroup", "Properties": {
@@ -6,15 +11,33 @@
6
11
  "VpcId": {"Ref": "Cloud"},
7
12
 
8
13
  "SecurityGroupIngress": [
9
- {"IpProtocol": "tcp", "FromPort": "443", "ToPort": "443", "CidrIp": "10.0.0.0/16"},
10
- {"IpProtocol": "tcp", "FromPort": "51607", "ToPort": "51607", "CidrIp": "10.0.0.0/16"}
14
+ {"IpProtocol": "tcp", "FromPort": "443", "ToPort": "443", "CidrIp": "10.0.0.0/16"}
11
15
  ],
12
16
  "SecurityGroupEgress": [
13
- {"IpProtocol": "tcp", "FromPort": "80", "ToPort": "80", "CidrIp": "0.0.0.0/0"},
14
- {"IpProtocol": "tcp", "FromPort": "51607", "ToPort": "51607", "CidrIp": "0.0.0.0/0"}
17
+ {"IpProtocol": "tcp", "FromPort": "80", "ToPort": "80", "CidrIp": "0.0.0.0/0"}
15
18
  ]
16
19
  }},
17
20
 
21
+ "DeveloperAdminAPIIngress": {
22
+ "Type": "AWS::EC2::SecurityGroupIngress",
23
+ "Condition": "DeveloperCanIngress",
24
+ "Properties": {
25
+ "GroupId": {"Fn::GetAtt": ["AdminAPISecurityGroup", "GroupId"]},
26
+ "IpProtocol": "-1",
27
+ "CidrIp": {"Ref": "DeveloperIPRange"}
28
+ }
29
+ },
30
+
31
+ "OperatorAdminAPIIngress": {
32
+ "Type": "AWS::EC2::SecurityGroupIngress",
33
+ "Condition": "OperatorCanIngress",
34
+ "Properties": {
35
+ "GroupId": {"Fn::GetAtt": ["AdminAPISecurityGroup", "GroupId"]},
36
+ "IpProtocol": "-1",
37
+ "CidrIp": {"Ref": "OperatorIPRange"}
38
+ }
39
+ },
40
+
18
41
  "BackendSecurityGroup" : {
19
42
  "Type" : "AWS::EC2::SecurityGroup",
20
43
  "Properties" : {
@@ -22,7 +45,7 @@
22
45
  "VpcId" : { "Ref" : "Cloud" },
23
46
  "SecurityGroupIngress": [
24
47
  {"IpProtocol": "tcp", "FromPort": "22", "ToPort": "22", "CidrIp": "0.0.0.0/0"},
25
- {"IpProtocol": "tcp", "FromPort": "51607", "ToPort": "51607", "SourceSecurityGroupId": {"Ref": "AdminAPISecurityGroup"}},
48
+ {"IpProtocol": "tcp", "FromPort": "51607", "ToPort": "51607", "SourceSecurityGroupId": {"Ref": "FrontendToBackendSecurityGroup"}},
26
49
  {"IpProtocol": "tcp", "FromPort": "80", "ToPort": "80", "SourceSecurityGroupId": {"Ref": "AdminAPISecurityGroup"}}
27
50
  ],
28
51
  "SecurityGroupEgress": [
@@ -40,13 +63,56 @@
40
63
  }
41
64
  },
42
65
 
43
- "AdminAPILoadBalancer": {"Type": "AWS::ElasticLoadBalancing::LoadBalancer", "Properties": {
66
+ "FrontendToBackendSecurityGroup": {"Type": "AWS::EC2::SecurityGroup", "Properties": {
67
+ "GroupDescription": "Frontend-to-Backend security group",
68
+ "VpcId": {"Ref": "Cloud"},
69
+
70
+ "SecurityGroupIngress": [
71
+ {"IpProtocol": "tcp", "FromPort": "51607", "ToPort": "51607", "CidrIp": "10.0.0.0/16"}
72
+ ],
73
+ "SecurityGroupEgress": [
74
+ {"IpProtocol": "tcp", "FromPort": "51607", "ToPort": "51607", "CidrIp": "10.0.0.0/16"}
75
+ ]
76
+ }},
77
+
78
+ "FrontendToBackendLoadBalancer": {"Type": "AWS::ElasticLoadBalancing::LoadBalancer", "Properties": {
44
79
  "Subnets": [
45
80
  {"Ref": "SubnetA"},
46
81
  {"Ref": "SubnetB"},
47
82
  {"Ref": "SubnetC"}
48
83
  ],
49
84
  "Scheme": "internal",
85
+ "SecurityGroups": [{"Ref": "FrontendToBackendSecurityGroup"}],
86
+
87
+ "HealthCheck": {
88
+ "HealthyThreshold": "3",
89
+ "Interval": "60",
90
+ "Target": "TCP:51607",
91
+ "Timeout": "5",
92
+ "UnhealthyThreshold": "10"
93
+ },
94
+
95
+ "Listeners": [{
96
+ "LoadBalancerPort": "51607",
97
+ "InstancePort": "51607",
98
+ "Protocol": "TCP",
99
+ "InstanceProtocol": "TCP"
100
+ }]
101
+ }},
102
+
103
+ "FrontendToBackendDNSRecord": {"Type": "AWS::Route53::RecordSet", "Properties": {
104
+ "HostedZoneId": {"Fn::FindInMap": ["StackZoneRecords", "AdminAPI", "HostedZoneId" ]},
105
+ "Name": {"Fn::FindInMap": ["StackZoneRecords", "FrontendToBackend", "DNSName" ]},
106
+ "Type": "CNAME", "TTL": "300",
107
+ "ResourceRecords": [{"Fn::GetAtt": ["FrontendToBackendLoadBalancer", "DNSName"]}]
108
+ }},
109
+
110
+ "AdminAPILoadBalancer": {"Type": "AWS::ElasticLoadBalancing::LoadBalancer", "Properties": {
111
+ "Subnets": [
112
+ {"Ref": "SubnetA"},
113
+ {"Ref": "SubnetB"},
114
+ {"Ref": "SubnetC"}
115
+ ],
50
116
  "SecurityGroups": [{"Ref": "AdminAPISecurityGroup"}],
51
117
 
52
118
  "HealthCheck": {
@@ -65,13 +131,6 @@
65
131
  "InstanceProtocol": "TCP",
66
132
 
67
133
  "SSLCertificateId": {"Fn::FindInMap": ["StackZoneRecords", "AdminAPI", "ServerCertificateARN" ]}
68
- },
69
-
70
- {
71
- "LoadBalancerPort": "51607",
72
- "InstancePort": "51607",
73
- "Protocol": "TCP",
74
- "InstanceProtocol": "TCP"
75
134
  }
76
135
  ]
77
136
  }},
@@ -188,10 +247,10 @@
188
247
  }
189
248
  },
190
249
 
191
- "FrontendAdminAPIIngress": {
250
+ "FrontendToBackendIngress": {
192
251
  "Type": "AWS::EC2::SecurityGroupIngress",
193
252
  "Properties": {
194
- "GroupId": { "Ref": "AdminAPISecurityGroup" },
253
+ "GroupId": { "Ref": "FrontendToBackendSecurityGroup" },
195
254
  "IpProtocol": "tcp",
196
255
  "FromPort": "51607",
197
256
  "ToPort": "51607",
@@ -39,7 +39,8 @@
39
39
  "HealthCheckType": "ELB",
40
40
  "HealthCheckGracePeriod": "6000",
41
41
  "LoadBalancerNames": [
42
- {"Ref": "AdminAPILoadBalancer"}
42
+ {"Ref": "AdminAPILoadBalancer"},
43
+ {"Ref": "FrontendToBackendLoadBalancer"}
43
44
  ],
44
45
 
45
46
  "TerminationPolicies": ["OldestLaunchConfiguration", "OldestInstance"],
@@ -74,7 +74,7 @@
74
74
  "export CFN_STACK_NAME='", {"Ref": "AWS::StackName"}, "'\n",
75
75
  "export CFN_INSTANCE_LOGICAL_NAME='FrontendLaunchConfiguration'\n",
76
76
  "export CFN_INSTANCE_HOSTNAME='", {"Fn::FindInMap": ["StackZoneRecords", "ClientAPI", "DNSName"]}, "'\n",
77
- "export BEXNG_ADMIN_API_HOST='", {"Fn::FindInMap": ["StackZoneRecords", "AdminAPI", "DNSName" ]}, "'\n",
77
+ "export BEXNG_ADMIN_API_HOST='", {"Fn::FindInMap": ["StackZoneRecords", "FrontendToBackend", "DNSName" ]}, "'\n",
78
78
  {"Ref": "UserDataEnvironmentVar"}, "\n",
79
79
  {"Ref": "CommonRoleScriptVar"}, "\n",
80
80
  {"Ref": "FrontendRoleScriptVar"}, "\n"
@@ -12,7 +12,7 @@ cat >"/etc/bexng/secrets.exs" <<EOF
12
12
 
13
13
  mandrill: "${MANDRILL_KEY}",
14
14
 
15
- admin_user: "${BEXNG_DEFAULT_ADMIN_EMAIL}",
15
+ admin: "${BEXNG_DEFAULT_ADMIN_EMAIL}",
16
16
  admin_password: "${BEXNG_DEFAULT_ADMIN_PASSWORD}",
17
17
 
18
18
 
data/priv/stack.json.erb CHANGED
@@ -8,6 +8,9 @@
8
8
 
9
9
  "IAMKeypairNameVar": {"Type": "String", "MinLength": "5"},
10
10
 
11
+ "DeveloperIPRange": {"Type": "String", "Default": ""},
12
+ "OperatorIPRange": {"Type": "String", "Default": ""},
13
+
11
14
  <% stack.roles.each do |role_name| %>
12
15
  <%= j "#{role_name}RoleScriptVar" %>: {"Type": "String"},
13
16
  <% end %>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stacco
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.60
4
+ version: 0.1.61
5
5
  platform: ruby
6
6
  authors:
7
7
  - Levi Aul
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-22 00:00:00.000000000 Z
11
+ date: 2014-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -124,6 +124,7 @@ files:
124
124
  - "./.git/objects/07/aa6257e236ff574d02570f56c7142d99e14fb0"
125
125
  - "./.git/objects/07/ccbe7deba806a5e3045276d5c56d70bfcd1144"
126
126
  - "./.git/objects/08/d390fad8629347b01e81e36389b6445bb7be6e"
127
+ - "./.git/objects/09/6ea3bde4dada1785f393c0d91f2d43bc7d7156"
127
128
  - "./.git/objects/0a/28342f575dbb656027091d278de50c38749bbc"
128
129
  - "./.git/objects/0a/e804aae1d90b10a729c2068afb73ce574bb87b"
129
130
  - "./.git/objects/0a/fe5b91af3f9a9f325013fb80fb424382bdafa1"
@@ -136,7 +137,9 @@ files:
136
137
  - "./.git/objects/0c/4fb9cf34eec86daaa1dbadee1893c46a05714c"
137
138
  - "./.git/objects/0c/7faf1aa66b06f513447af1bd133a36982f2fc9"
138
139
  - "./.git/objects/0c/9c227d2198c7456daa4fc97b94ca4a22085244"
140
+ - "./.git/objects/0c/cf9117020326f0101facc82df6504769771da5"
139
141
  - "./.git/objects/0c/dad0dd2276579f09c7775b86a5f57de3430c08"
142
+ - "./.git/objects/0d/87d31588b653da46766713dea1f5cb7ee59bd0"
140
143
  - "./.git/objects/0d/9f73c1bd248cb73a3d0bc0d6fa725b9190d768"
141
144
  - "./.git/objects/0e/b90325cf38be8580b7ee79ba3cacc4c2560fc0"
142
145
  - "./.git/objects/0f/ca3c7384c6a747a7cb3ace03e2b74a8502031c"
@@ -168,6 +171,7 @@ files:
168
171
  - "./.git/objects/18/ec0e701dcbdb487c91265f32d6d0e12a1cce42"
169
172
  - "./.git/objects/19/64cf97324d1b8d70c33e9a0cc1cfc04584edff"
170
173
  - "./.git/objects/19/b3f3fd00867549b948898baf60b31931daae63"
174
+ - "./.git/objects/1a/25f27532c31703f8bf0a566ed464d3959d8815"
171
175
  - "./.git/objects/1a/4d5c77bb2fe5e66232d78509e9c2964ac379ac"
172
176
  - "./.git/objects/1a/5f357815183af87aff3d37b325de60fb036477"
173
177
  - "./.git/objects/1a/7dc91c02932654ebb5ad877504f6ef5ced337f"
@@ -325,6 +329,7 @@ files:
325
329
  - "./.git/objects/4d/d0ffb78ac5a5e9c4a5983db4567330a8716c53"
326
330
  - "./.git/objects/4e/22c4721a1d2d8d51eb61b0bba996256630e1a3"
327
331
  - "./.git/objects/4e/489da16c48856eefd116a63d5a469bf3446cfb"
332
+ - "./.git/objects/4e/6a09ca91aa5fc95dca2f0d7e50e08d9823ac97"
328
333
  - "./.git/objects/4e/a5fcde29a07173d22bd2e4fcb52399906b4845"
329
334
  - "./.git/objects/4e/ab43d6277245776a5fe13179ef8703b47ae781"
330
335
  - "./.git/objects/4f/4fae184e6e68f8382f9234c283451fecdbf5df"
@@ -449,6 +454,7 @@ files:
449
454
  - "./.git/objects/78/a6d90b8e3275c3c8c9556a7b30ab6a1c4a9c28"
450
455
  - "./.git/objects/79/47526f0f3bc0e41576835c158e21d10b5e970a"
451
456
  - "./.git/objects/79/69c4940d597d5f3e2e8236ddb8f9f2975af9be"
457
+ - "./.git/objects/79/9125f1dc901ddedfa60a65320dc62b849fda20"
452
458
  - "./.git/objects/79/9f44f71b0f39c64e6b861d432aca0585ec3422"
453
459
  - "./.git/objects/79/b78df8abb2703e35a607c5b083bfaf1ebe1545"
454
460
  - "./.git/objects/7a/3d0238f68331516604a5ad0af97cc08a8f2dba"
@@ -586,10 +592,12 @@ files:
586
592
  - "./.git/objects/a5/62e7c9d3ada1d9323c7b354c3b9b7a6f48ba4f"
587
593
  - "./.git/objects/a5/f2bf529f1392f53cc2fe0e6f46395d178742c2"
588
594
  - "./.git/objects/a6/236056b6eb554475bd2e5163badce6804f73b4"
595
+ - "./.git/objects/a6/5d10b2c6e70a8083fefb4ee883a595a96ae52c"
589
596
  - "./.git/objects/a6/91c826ef7d39142e3c2c38caa57ac976b51ce6"
590
597
  - "./.git/objects/a6/99ddf81c7347fbbfce7a8bf2383e1046991c82"
591
598
  - "./.git/objects/a6/ef0d4b0ed432ed7551549d97b6687aed948eb6"
592
599
  - "./.git/objects/a6/f7a718562d979ef0eb6c90cf6a85a0f260cb20"
600
+ - "./.git/objects/a7/027d79ead552ea5c3e5f40eff998381e13e3fe"
593
601
  - "./.git/objects/a7/4368a861be3c0712ad60379ca6cccd2647cbd6"
594
602
  - "./.git/objects/a7/98095f76f9ffd2fd8653a55b278ce4db7d8087"
595
603
  - "./.git/objects/a7/c33f7ce80cb6c96ffb75ae23f4a362695386ec"
@@ -675,6 +683,7 @@ files:
675
683
  - "./.git/objects/bf/d5869be4f2f7981bf2ba732bcb0f1d57619743"
676
684
  - "./.git/objects/bf/df2e1ff6a2624f4a8e8c7bb67a35c233680182"
677
685
  - "./.git/objects/c0/3882a1fcd3514f959d120a2ffba38bf57b38f2"
686
+ - "./.git/objects/c1/bc4a8d9c305d16d365b8a6a912ca54ef39ffcd"
678
687
  - "./.git/objects/c1/e9e19d419b9dd7742e1b0ba9d3eb5054e0c172"
679
688
  - "./.git/objects/c1/f00cec69690eb81bb3be1d452048006a732d94"
680
689
  - "./.git/objects/c2/17393985203312c295bdbc9d7ad1c9be10f79e"
@@ -723,6 +732,7 @@ files:
723
732
  - "./.git/objects/cc/6d9ff1c31aef5ea0736d2faef48ffcc501f3b3"
724
733
  - "./.git/objects/cc/d1bbab75782cdda520d3f7bcefb5e3c99cb82c"
725
734
  - "./.git/objects/cc/fa30fa70e56db81b80a0b4674d0633ffe21ef4"
735
+ - "./.git/objects/cd/25624ea064ae1357365d1017c9289b2a5804ba"
726
736
  - "./.git/objects/cd/52c8a14cf0b36b8f2ad5bca615ec8e3883ac43"
727
737
  - "./.git/objects/cd/8391d58b70f75f85151faea0f0bbc890100ebb"
728
738
  - "./.git/objects/cd/96b15f2b7b9159f864cbe98ebbd60e79395dc9"
@@ -772,6 +782,7 @@ files:
772
782
  - "./.git/objects/dc/bcb2004a0fe58247744f83c7b9ee815566fad4"
773
783
  - "./.git/objects/dd/11f4a70a4656ed4d662da5e6ef97f06979fef3"
774
784
  - "./.git/objects/dd/1dd372527a3f87c59ebe7902805fc3d752012c"
785
+ - "./.git/objects/dd/fbead7ac9b513152e01e0c8c6b852eba4b3635"
775
786
  - "./.git/objects/de/2444aaa895c7ee0df154bfa8cce0f92ce80929"
776
787
  - "./.git/objects/de/37f8dd9aa0f89ae4572379dd5043b504470693"
777
788
  - "./.git/objects/de/883c21aa3a20265f9b0938f26f60ed9082f0ba"
@@ -780,6 +791,7 @@ files:
780
791
  - "./.git/objects/de/e466b16ae3ac70bb5f1a4addad6a4b484d9ae8"
781
792
  - "./.git/objects/df/102328122c4d77469f75c6cc283b00108bd1ed"
782
793
  - "./.git/objects/df/a6b8fe938bca1d45ee3cc3fc54dcad41ba7638"
794
+ - "./.git/objects/df/bfb4d51beca0d2bef79b2ec4aefe4a30b3fc1f"
783
795
  - "./.git/objects/e0/00c6e760f84c7ffa982192aa08673be34a70cd"
784
796
  - "./.git/objects/e0/25280ec493575d2176fa61c6a90d3262566227"
785
797
  - "./.git/objects/e0/bb46327d0309abfc4270f1a08236ac553f6904"
@@ -949,6 +961,7 @@ files:
949
961
  - "./.git/refs/tags/0.1.58"
950
962
  - "./.git/refs/tags/0.1.59"
951
963
  - "./.git/refs/tags/0.1.60"
964
+ - "./.git/refs/tags/0.1.61"
952
965
  - "./.gitignore"
953
966
  - "./Dockerfile"
954
967
  - "./README.md"