Skip to content

Commit 6e253b1

Browse files
committed
feat(lb-frontend): add example with two certificates
1 parent 473ec5a commit 6e253b1

File tree

3 files changed

+937
-254
lines changed

3 files changed

+937
-254
lines changed

scaleway/resource_lb_frontend.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ func resourceScalewayLbFrontendCreate(ctx context.Context, d *schema.ResourceDat
203203

204204
certificatesRaw, certificatesExist := d.GetOk("certificate_ids")
205205
if certificatesExist {
206-
createFrontendRequest.CertificateIDs = expandSlideIDsPtr(certificatesRaw)
206+
createFrontendRequest.CertificateIDs = expandSliceIDsPtr(certificatesRaw)
207207
}
208208

209209
res, err := lbAPI.CreateFrontend(createFrontendRequest, scw.WithContext(ctx))
@@ -400,7 +400,7 @@ func resourceScalewayLbFrontendUpdate(ctx context.Context, d *schema.ResourceDat
400400
}
401401

402402
if d.HasChanges("certificate_ids") {
403-
req.CertificateIDs = expandSlideIDsPtr(d.Get("certificate_ids"))
403+
req.CertificateIDs = expandSliceIDsPtr(d.Get("certificate_ids"))
404404
}
405405

406406
_, err = lbAPI.UpdateFrontend(req, scw.WithContext(ctx))

scaleway/resource_lb_frontend_test.go

+26-7
Original file line numberDiff line numberDiff line change
@@ -81,15 +81,25 @@ func TestAccScalewayLbFrontend_Basic(t *testing.T) {
8181
func TestAccScalewayLbFrontend_Certificate(t *testing.T) {
8282
tt := NewTestTools(t)
8383
defer tt.Cleanup()
84+
testDNSZone := fmt.Sprintf("test.%s", testDomain)
8485
resource.ParallelTest(t, resource.TestCase{
8586
PreCheck: func() { testAccPreCheck(t) },
8687
ProviderFactories: tt.ProviderFactories,
8788
CheckDestroy: testAccCheckScalewayLbFrontendDestroy(tt),
8889
Steps: []resource.TestStep{
8990
{
90-
Config: `
91+
Config: fmt.Sprintf(`
9192
resource scaleway_lb_ip ip01 {}
9293
94+
resource "scaleway_domain_record" "tf_A" {
95+
dns_zone = %[1]q
96+
name = "test"
97+
type = "A"
98+
data = "${scaleway_lb_ip.ip01.ip_address}"
99+
ttl = 3600
100+
priority = 1
101+
}
102+
93103
resource scaleway_lb lb01 {
94104
ip_id = scaleway_lb_ip.ip01.id
95105
name = "test-lb"
@@ -98,8 +108,8 @@ func TestAccScalewayLbFrontend_Certificate(t *testing.T) {
98108
99109
resource scaleway_lb_backend bkd01 {
100110
lb_id = scaleway_lb.lb01.id
101-
forward_protocol = "tcp"
102-
forward_port = 443
111+
forward_protocol = "http"
112+
forward_port = 80
103113
proxy_protocol = "none"
104114
}
105115
@@ -111,18 +121,27 @@ func TestAccScalewayLbFrontend_Certificate(t *testing.T) {
111121
}
112122
}
113123
124+
resource scaleway_lb_certificate cert02 {
125+
lb_id = scaleway_lb.lb01.id
126+
name = "test-cert-front-end2"
127+
letsencrypt {
128+
common_name = %[2]q
129+
}
130+
}
131+
114132
resource scaleway_lb_frontend frt01 {
115133
lb_id = scaleway_lb.lb01.id
116134
backend_id = scaleway_lb_backend.bkd01.id
117-
inbound_port = 443
118-
certificate_ids = [scaleway_lb_certificate.cert01.id]
135+
inbound_port = 80
136+
certificate_ids = [scaleway_lb_certificate.cert01.id, scaleway_lb_certificate.cert02.id]
119137
}
120-
`,
138+
`, testDomain, testDNSZone),
121139
Check: resource.ComposeTestCheckFunc(
122140
testAccCheckScalewayLbFrontendExists(tt, "scaleway_lb_frontend.frt01"),
123141
testAccCheckScalewayFrontendCertificateExist(tt, "scaleway_lb_frontend.frt01", "scaleway_lb_certificate.cert01"),
142+
testAccCheckScalewayFrontendCertificateExist(tt, "scaleway_lb_frontend.frt01", "scaleway_lb_certificate.cert02"),
124143
resource.TestCheckResourceAttr("scaleway_lb_frontend.frt01",
125-
"certificate_ids.#", "1"),
144+
"certificate_ids.#", "2"),
126145
),
127146
},
128147
},

0 commit comments

Comments
 (0)