Skip to content

Commit bcd216e

Browse files
committed
ingress for iks and route for roks
1 parent dc0cbd7 commit bcd216e

File tree

4 files changed

+156
-89
lines changed

4 files changed

+156
-89
lines changed

app/generate_yaml.sh

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,15 @@ if [[ -z "$TARGET_NAMESPACE" ]]; then
2626
export TARGET_NAMESPACE=default
2727
fi
2828

29+
cat secure-file-storage.template.yaml | \
30+
envsubst '$IMAGE_PULL_SECRET $IMAGE_REPOSITORY $TARGET_NAMESPACE $BASENAME' > secure-file-storage.yaml
31+
32+
2933
if [[ -z "$PUBLIC_CERT_ID" ]] && [[ -z "$SECRETS_MANAGER_API_URL" ]] && [[ -z "$MYDOMAIN" ]]; then
30-
cat secure-file-storage.template.yaml | \
31-
envsubst '$IMAGE_NAME $INGRESS_SECRET $INGRESS_SUBDOMAIN $IMAGE_PULL_SECRET $IMAGE_REPOSITORY $TARGET_NAMESPACE $BASENAME' > secure-file-storage.yaml
34+
cat secure-file-storage-ingress.template.yaml | \
35+
envsubst '$INGRESS_SECRET $INGRESS_SUBDOMAIN $TARGET_NAMESPACE $BASENAME' > secure-file-storage-ingress.yaml
36+
cat secure-file-storage-route.template.yaml | \
37+
envsubst '$INGRESS_SECRET $INGRESS_SUBDOMAIN $TARGET_NAMESPACE $BASENAME' > secure-file-storage-route.yaml
3238
exit
3339
fi
3440

@@ -47,6 +53,9 @@ if [[ -z "$MYDOMAIN" ]]; then
4753
exit 1
4854
fi
4955

50-
cat secure-file-storage.template.yaml | \
56+
cat secure-file-storage-ingress.template.yaml | \
57+
sed -e 's/^# //' |
58+
envsubst '$PUBLIC_CERT_ID $SECRETS_MANAGER_API_URL $MYDOMAIN $INGRESS_SECRET $INGRESS_SUBDOMAIN $TARGET_NAMESPACE $BASENAME' > secure-file-storage-ingress.yaml
59+
cat secure-file-storage-route.template.yaml | \
5160
sed -e 's/^# //' |
52-
envsubst '$PUBLIC_CERT_ID $SECRETS_MANAGER_API_URL $MYDOMAIN $IMAGE_NAME $INGRESS_SECRET $INGRESS_SUBDOMAIN $IMAGE_PULL_SECRET $IMAGE_REPOSITORY $TARGET_NAMESPACE $BASENAME' > secure-file-storage.yaml
61+
envsubst '$PUBLIC_CERT_ID $SECRETS_MANAGER_API_URL $MYDOMAIN $INGRESS_SECRET $INGRESS_SUBDOMAIN $TARGET_NAMESPACE $BASENAME' > secure-file-storage-route.yaml
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
apiVersion: networking.k8s.io/v1
2+
kind: Ingress
3+
metadata:
4+
name: ingress-for-secure-file-storage
5+
namespace: $TARGET_NAMESPACE
6+
annotations:
7+
kubernetes.io/ingress.class: public-iks-k8s-nginx
8+
spec:
9+
tls:
10+
- hosts:
11+
- secure-file-storage.$INGRESS_SUBDOMAIN
12+
secretName: $INGRESS_SECRET
13+
## Uncomment below if you are using a custom domain. Remove '# '
14+
# - hosts:
15+
# - secure-file-storage.$MYDOMAIN
16+
# secretName: secure-file-storage-certificate
17+
rules:
18+
- host: secure-file-storage.$INGRESS_SUBDOMAIN
19+
http:
20+
paths:
21+
- path: /
22+
pathType: Prefix
23+
backend:
24+
service:
25+
name: secure-file-storage-service
26+
port:
27+
number: 8081
28+
## Uncomment below if you are using a custom domain. Remove '# '
29+
# - host: secure-file-storage.$MYDOMAIN
30+
# http:
31+
# paths:
32+
# - path: /
33+
# pathType: Prefix
34+
# backend:
35+
# service:
36+
# name: secure-file-storage-service
37+
# port:
38+
# number: 8081
39+
# ---
40+
# apiVersion: external-secrets.io/v1beta1
41+
# kind: SecretStore
42+
# metadata:
43+
# name: secure-file-storage-secretstore
44+
# spec:
45+
# provider:
46+
# ibm:
47+
# serviceUrl: $SECRETS_MANAGER_API_URL
48+
# auth:
49+
# secretRef:
50+
# secretApiKeySecretRef:
51+
# name: secure-file-storage-api-key
52+
# key: apikey
53+
# ---
54+
# apiVersion: external-secrets.io/v1beta1
55+
# kind: ExternalSecret
56+
# metadata:
57+
# name: secure-file-storage-external-secret
58+
# spec:
59+
# refreshInterval: 1m
60+
# secretStoreRef:
61+
# name: secure-file-storage-secretstore
62+
# kind: SecretStore
63+
# target:
64+
# name: secure-file-storage-certificate
65+
# template:
66+
# type: kubernetes.io/tls
67+
# data:
68+
# tls.crt: '{{ .sfscrt | toString }}'
69+
# tls.key: '{{ .sfskey | toString }}'
70+
# creationPolicy: Owner
71+
# data:
72+
# - secretKey: sfscrt
73+
# remoteRef:
74+
# key: public_cert/$PUBLIC_CERT_ID
75+
# property: certificate
76+
# - secretKey: sfskey
77+
# remoteRef:
78+
# key: public_cert/$PUBLIC_CERT_ID
79+
# property: private_key
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
kind: Route
2+
apiVersion: route.openshift.io/v1
3+
metadata:
4+
name: secure-file-storage-route
5+
namespace: $TARGET_NAMESPACE
6+
spec:
7+
host: >-
8+
secure-file-storage.$INGRESS_SUBDOMAIN
9+
to:
10+
kind: Service
11+
name: secure-file-storage-service
12+
weight: 100
13+
port:
14+
targetPort: 8081
15+
tls:
16+
termination: edge
17+
insecureEdgeTerminationPolicy: Redirect
18+
wildcardPolicy: None
19+
# ---
20+
# apiVersion: external-secrets.io/v1beta1
21+
# kind: SecretStore
22+
# metadata:
23+
# name: secure-file-storage-secretstore
24+
# spec:
25+
# provider:
26+
# ibm:
27+
# serviceUrl: $SECRETS_MANAGER_API_URL
28+
# auth:
29+
# secretRef:
30+
# secretApiKeySecretRef:
31+
# name: secure-file-storage-api-key
32+
# key: apikey
33+
# ---
34+
# apiVersion: external-secrets.io/v1beta1
35+
# kind: ExternalSecret
36+
# metadata:
37+
# name: secure-file-storage-external-secret
38+
# spec:
39+
# refreshInterval: 1m
40+
# secretStoreRef:
41+
# name: secure-file-storage-secretstore
42+
# kind: SecretStore
43+
# target:
44+
# name: secure-file-storage-certificate
45+
# template:
46+
# type: kubernetes.io/tls
47+
# data:
48+
# tls.crt: '{{ .sfscrt | toString }}'
49+
# tls.key: '{{ .sfskey | toString }}'
50+
# creationPolicy: Owner
51+
# data:
52+
# - secretKey: sfscrt
53+
# remoteRef:
54+
# key: public_cert/$PUBLIC_CERT_ID
55+
# property: certificate
56+
# - secretKey: sfskey
57+
# remoteRef:
58+
# key: public_cert/$PUBLIC_CERT_ID
59+
# property: private_key

app/secure-file-storage.template.yaml

Lines changed: 5 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ spec:
2727
labels:
2828
app: secure-file-storage
2929
spec:
30-
## Uncomment only if you aren't deploying to the default namespace, remove ##
31-
## In this case, make sure to create a Docker registry secret
32-
## imagePullSecrets:
33-
## - name: $IMAGE_PULL_SECRET
30+
# Uncomment only if you aren't deploying to the default namespace, remove #
31+
# In this case, make sure to create a Docker registry secret
32+
# imagePullSecrets:
33+
# - name: $IMAGE_PULL_SECRET
3434
containers:
3535
- name: secure-file-storage-container
3636
image: $IMAGE_REPOSITORY:latest
@@ -39,84 +39,4 @@ spec:
3939
- containerPort: 8081
4040
envFrom:
4141
- secretRef:
42-
name: $BASENAME-credentials
43-
---
44-
apiVersion: networking.k8s.io/v1
45-
kind: Ingress
46-
metadata:
47-
name: ingress-for-sfs
48-
namespace: $TARGET_NAMESPACE
49-
annotations:
50-
kubernetes.io/ingress.class: public-iks-k8s-nginx
51-
spec:
52-
tls:
53-
- hosts:
54-
- secure-file-storage.$INGRESS_SUBDOMAIN
55-
secretName: $INGRESS_SECRET
56-
## Uncomment below if you are using a custom domain. Remove '# '
57-
# - hosts:
58-
# - secure-file-storage.$MYDOMAIN
59-
# secretName: secure-file-storage-certificate
60-
rules:
61-
- host: secure-file-storage.$INGRESS_SUBDOMAIN
62-
http:
63-
paths:
64-
- path: /
65-
pathType: Prefix
66-
backend:
67-
service:
68-
name: secure-file-storage-service
69-
port:
70-
number: 8081
71-
## Uncomment below if you are using a custom domain. Remove '# '
72-
# - host: secure-file-storage.$MYDOMAIN
73-
# http:
74-
# paths:
75-
# - path: /
76-
# pathType: Prefix
77-
# backend:
78-
# service:
79-
# name: secure-file-storage-service
80-
# port:
81-
# number: 8081
82-
# ---
83-
# apiVersion: external-secrets.io/v1beta1
84-
# kind: SecretStore
85-
# metadata:
86-
# name: secure-file-storage-secretstore
87-
# spec:
88-
# provider:
89-
# ibm:
90-
# serviceUrl: $SECRETS_MANAGER_API_URL
91-
# auth:
92-
# secretRef:
93-
# secretApiKeySecretRef:
94-
# name: secure-file-storage-api-key
95-
# key: apikey
96-
# ---
97-
# apiVersion: external-secrets.io/v1beta1
98-
# kind: ExternalSecret
99-
# metadata:
100-
# name: secure-file-storage-external-secret
101-
# spec:
102-
# refreshInterval: 1m
103-
# secretStoreRef:
104-
# name: secure-file-storage-secretstore
105-
# kind: SecretStore
106-
# target:
107-
# name: secure-file-storage-certificate
108-
# template:
109-
# type: kubernetes.io/tls
110-
# data:
111-
# tls.crt: '{{ .sfscrt | toString }}'
112-
# tls.key: '{{ .sfskey | toString }}'
113-
# creationPolicy: Owner
114-
# data:
115-
# - secretKey: sfscrt
116-
# remoteRef:
117-
# key: public_cert/$PUBLIC_CERT_ID
118-
# property: certificate
119-
# - secretKey: sfskey
120-
# remoteRef:
121-
# key: public_cert/$PUBLIC_CERT_ID
122-
# property: private_key
42+
name: $BASENAME-credentials

0 commit comments

Comments
 (0)