-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall-template-admin.yaml
89 lines (82 loc) · 2.06 KB
/
install-template-admin.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
---
apiVersion: template.openshift.io/v1
kind: Template
metadata:
annotations:
description: openshift-provision example-1
name: provision-example-1
parameters:
- name: PROJECT_NAME
value: provision-example-1
- name: OPENSHIFT_PROVISION_NAMESPACE
value: openshift-provision
- name: GIT_URL
value: https://github.com/gnuthought/openshift-provision-example-1.git
- name: WEBHOOK_KEY
generate: expression
from: '[a-zA-Z0-9]{8}'
objects:
- apiVersion: project.openshift.io/v1
kind: Project
metadata:
name: ${PROJECT_NAME}
annotations:
openshift-provision/action: create
spec:
finalizers:
- kubernetes
- apiVersion: v1
kind: ServiceAccount
metadata:
name: ${PROJECT_NAME}
namespace: ${OPENSHIFT_PROVISION_NAMESPACE}
- apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: openshift-provision-admin
namespace: ${PROJECT_NAME}
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: admin
subjects:
- kind: ServiceAccount
name: ${PROJECT_NAME}
namespace: ${OPENSHIFT_PROVISION_NAMESPACE}
- apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: openshift-provision-resource-manager
namespace: ${PROJECT_NAME}
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: resource-manager
subjects:
- kind: ServiceAccount
name: ${PROJECT_NAME}
namespace: ${OPENSHIFT_PROVISION_NAMESPACE}
- apiVersion: v1
kind: ConfigMap
metadata:
name: ${PROJECT_NAME}
namespace: ${OPENSHIFT_PROVISION_NAMESPACE}
labels:
openshift-provision.gnuthought.com/config: "true"
data:
git_url: ${GIT_URL}
check_mode: "true"
config_path: provision.yaml
service_account: ${PROJECT_NAME}
webhook_secret: ${PROJECT_NAME}-webhook
vars: |
project_name: ${PROJECT_NAME}
- apiVersion: v1
kind: Secret
metadata:
name: ${PROJECT_NAME}-webhook
namespace: ${OPENSHIFT_PROVISION_NAMESPACE}
annotations:
openshift-provision/action: create
stringData:
key: ${WEBHOOK_KEY}