@@ -3,6 +3,8 @@ package test
33import (
44 "encoding/json"
55 "fmt"
6+ "html/template"
7+ "os"
68 "os/exec"
79 "path/filepath"
810 "strings"
@@ -17,6 +19,36 @@ import (
1719 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1820)
1921
22+ var traefikIngress = `
23+ ---
24+ apiVersion: traefik.containo.us/v1alpha1
25+ kind: IngressRoute
26+ metadata:
27+ name: platform
28+ spec:
29+ entryPoints:
30+ - websecure
31+ routes:
32+ - match: Host('keycloak.opentdf.local')
33+ kind: Rule
34+ services:
35+ - name: platform-keycloak
36+ namespace: {{ .Namespace }}
37+ port: 80
38+ scheme: http
39+ passHostHeader: true
40+ - match: Host('platform.opentdf.local')
41+ kind: Rule
42+ services:
43+ - name: opentdf-platform
44+ namespace: {{ .Namespace }}
45+ port: 9000
46+ scheme: h2c
47+ passHostHeader: true
48+ tls:
49+ secretName: platform-tls
50+ `
51+
2052type PlatformChartIntegrationSuite struct {
2153 suite.Suite
2254 chartPath string
@@ -126,6 +158,13 @@ func (suite *PlatformChartIntegrationSuite) TestBasicDeployment() {
126158 ingresses := k8s .ListIngresses (suite .T (), kubectlOptions , metav1.ListOptions {})
127159 suite .Require ().Len (ingresses , 0 )
128160
161+ ingFile , err := os .Create ("traefik.yaml" )
162+ suite .Require ().NoError (err )
163+ ingTmpl , err := template .New ("traefik" ).Parse (traefikIngress )
164+ suite .Require ().NoError (err )
165+ err = ingTmpl .Execute (ingFile , map [string ]string {"Namespace" : namespaceName })
166+ suite .Require ().NoError (err )
167+
129168 traefikIngressCfg , err := filepath .Abs ("traefik.yaml" )
130169 suite .Require ().NoError (err )
131170
0 commit comments