Skip to content

Commit f446405

Browse files
committed
Add TLS listener with app internal routes in SAN to Envoy
Add another listener to Envoy that proxies port 61443 to 8080 inside of container. It serves the SSL certificate that contains SAN with all application internal routes. [#180173340](https://www.pivotaltracker.com/story/show/180173340)
1 parent 2d5aae4 commit f446405

File tree

11 files changed

+558
-302
lines changed

11 files changed

+558
-302
lines changed

depot/containerstore/containerstore_test.go

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1146,13 +1146,18 @@ var _ = Describe("Container Store", func() {
11461146
AppPort: 8080,
11471147
ProxyPort: 61001,
11481148
},
1149+
{
1150+
AppPort: 8080,
1151+
ProxyPort: 61443,
1152+
},
11491153
{
11501154
AppPort: 9090,
11511155
ProxyPort: 61002,
11521156
},
11531157
}, []uint16{
11541158
61001,
11551159
61002,
1160+
61443,
11561161
}, nil)
11571162

11581163
containerStore = containerstore.New(
@@ -1198,6 +1203,8 @@ var _ = Describe("Container Store", func() {
11981203
info.MappedPorts = append(info.MappedPorts, garden.PortMapping{HostPort: 16002, ContainerPort: 61002})
11991204
case 61003:
12001205
info.MappedPorts = append(info.MappedPorts, garden.PortMapping{HostPort: 16003, ContainerPort: 61003})
1206+
case 61443:
1207+
info.MappedPorts = append(info.MappedPorts, garden.PortMapping{HostPort: 16004, ContainerPort: 61443})
12011208
default:
12021209
return info, errors.New("failed-net-in")
12031210
}
@@ -1221,7 +1228,7 @@ var _ = Describe("Container Store", func() {
12211228
Expect(err).NotTo(HaveOccurred())
12221229

12231230
containerSpec := gardenClient.CreateArgsForCall(0)
1224-
Expect(containerSpec.NetIn).To(HaveLen(4))
1231+
Expect(containerSpec.NetIn).To(HaveLen(5))
12251232
Expect(containerSpec.NetIn).To(ContainElement(garden.NetIn{
12261233
HostPort: 0, ContainerPort: 8080,
12271234
}))
@@ -1234,6 +1241,9 @@ var _ = Describe("Container Store", func() {
12341241
Expect(containerSpec.NetIn).To(ContainElement(garden.NetIn{
12351242
HostPort: 0, ContainerPort: 61002,
12361243
}))
1244+
Expect(containerSpec.NetIn).To(ContainElement(garden.NetIn{
1245+
HostPort: 0, ContainerPort: 61443,
1246+
}))
12371247
})
12381248

12391249
Context("when disabling unproxied port mappings", func() {
@@ -1265,13 +1275,16 @@ var _ = Describe("Container Store", func() {
12651275
Expect(err).NotTo(HaveOccurred())
12661276

12671277
containerSpec := gardenClient.CreateArgsForCall(0)
1268-
Expect(containerSpec.NetIn).To(HaveLen(2))
1278+
Expect(containerSpec.NetIn).To(HaveLen(3))
12691279
Expect(containerSpec.NetIn).To(ContainElement(garden.NetIn{
12701280
HostPort: 0, ContainerPort: 61001,
12711281
}))
12721282
Expect(containerSpec.NetIn).To(ContainElement(garden.NetIn{
12731283
HostPort: 0, ContainerPort: 61002,
12741284
}))
1285+
Expect(containerSpec.NetIn).To(ContainElement(garden.NetIn{
1286+
HostPort: 0, ContainerPort: 61443,
1287+
}))
12751288
})
12761289

12771290
It("unproxied host ports are set to 0", func() {
@@ -1283,6 +1296,11 @@ var _ = Describe("Container Store", func() {
12831296
HostPort: 0,
12841297
ContainerTLSProxyPort: 61001,
12851298
HostTLSProxyPort: 16001,
1299+
}, executor.PortMapping{
1300+
ContainerPort: 8080,
1301+
HostPort: 0,
1302+
ContainerTLSProxyPort: 61443,
1303+
HostTLSProxyPort: 16004,
12861304
}, executor.PortMapping{
12871305
ContainerPort: 9090,
12881306
HostPort: 0,
@@ -1301,6 +1319,11 @@ var _ = Describe("Container Store", func() {
13011319
HostPort: 16000,
13021320
ContainerTLSProxyPort: 61001,
13031321
HostTLSProxyPort: 16001,
1322+
}, executor.PortMapping{
1323+
ContainerPort: 8080,
1324+
HostPort: 16000,
1325+
ContainerTLSProxyPort: 61443,
1326+
HostTLSProxyPort: 16004,
13041327
}, executor.PortMapping{
13051328
ContainerPort: 9090,
13061329
HostPort: 16004,
@@ -1318,7 +1341,7 @@ var _ = Describe("Container Store", func() {
13181341
Expect(containerStore.Run(logger, containerGuid)).NotTo(HaveOccurred())
13191342
Eventually(megatron.StepsRunnerCallCount).Should(Equal(1))
13201343
_, _, _, _, cfg := megatron.StepsRunnerArgsForCall(0)
1321-
Expect(cfg.ProxyTLSPorts).To(ConsistOf(uint16(61001), uint16(61002)))
1344+
Expect(cfg.ProxyTLSPorts).To(ConsistOf(uint16(61001), uint16(61002), uint16(61443)))
13221345
})
13231346

13241347
It("bind mounts envoy", func() {

depot/containerstore/containerstorefakes/fake_cred_handler.go

Lines changed: 12 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

depot/containerstore/containerstorefakes/fake_proxymanager.go

Lines changed: 12 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)