manifest.yaml 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. apiVersion: v1
  2. kind: Namespace
  3. metadata:
  4. name: console-plugin-template
  5. ---
  6. apiVersion: apps/v1
  7. kind: Deployment
  8. metadata:
  9. name: console-plugin-template
  10. namespace: console-plugin-template
  11. labels:
  12. app: console-plugin-template
  13. app.kubernetes.io/component: console-plugin-template
  14. app.kubernetes.io/instance: console-plugin-template
  15. app.kubernetes.io/part-of: console-plugin-template
  16. app.openshift.io/runtime-namespace: console-plugin-template
  17. spec:
  18. replicas: 1
  19. selector:
  20. matchLabels:
  21. app: console-plugin-template
  22. template:
  23. metadata:
  24. labels:
  25. app: console-plugin-template
  26. spec:
  27. containers:
  28. - name: console-plugin-template
  29. image: quay.io/spadgett/console-plugin-template:latest
  30. ports:
  31. - containerPort: 9443
  32. protocol: TCP
  33. imagePullPolicy: Always
  34. volumeMounts:
  35. - name: plugin-serving-cert
  36. readOnly: true
  37. mountPath: /var/serving-cert
  38. - name: nginx-conf
  39. readOnly: true
  40. mountPath: /etc/nginx/nginx.conf
  41. subPath: nginx.conf
  42. volumes:
  43. - name: plugin-serving-cert
  44. secret:
  45. secretName: plugin-serving-cert
  46. defaultMode: 420
  47. - name: nginx-conf
  48. configMap:
  49. name: nginx-conf
  50. defaultMode: 420
  51. restartPolicy: Always
  52. dnsPolicy: ClusterFirst
  53. strategy:
  54. type: RollingUpdate
  55. rollingUpdate:
  56. maxUnavailable: 25%
  57. maxSurge: 25%
  58. ---
  59. apiVersion: v1
  60. kind: ConfigMap
  61. metadata:
  62. name: nginx-conf
  63. namespace: console-plugin-template
  64. labels:
  65. app: console-plugin-template
  66. app.kubernetes.io/part-of: console-plugin-template
  67. data:
  68. nginx.conf: |
  69. error_log /dev/stdout info;
  70. events {}
  71. http {
  72. access_log /dev/stdout;
  73. include /etc/nginx/mime.types;
  74. default_type application/octet-stream;
  75. keepalive_timeout 65;
  76. server {
  77. listen 9443 ssl;
  78. ssl_certificate /var/serving-cert/tls.crt;
  79. ssl_certificate_key /var/serving-cert/tls.key;
  80. root /usr/share/nginx/html;
  81. }
  82. }
  83. ---
  84. apiVersion: v1
  85. kind: Service
  86. metadata:
  87. annotations:
  88. service.alpha.openshift.io/serving-cert-secret-name: plugin-serving-cert
  89. name: console-plugin-template
  90. namespace: console-plugin-template
  91. labels:
  92. app: console-plugin-template
  93. app.kubernetes.io/component: console-plugin-template
  94. app.kubernetes.io/instance: console-plugin-template
  95. app.kubernetes.io/part-of: console-plugin-template
  96. spec:
  97. ports:
  98. - name: 9443-tcp
  99. protocol: TCP
  100. port: 9443
  101. targetPort: 9443
  102. selector:
  103. app: console-plugin-template
  104. type: ClusterIP
  105. sessionAffinity: None
  106. ---
  107. apiVersion: console.openshift.io/v1alpha1
  108. kind: ConsolePlugin
  109. metadata:
  110. name: console-plugin-template
  111. spec:
  112. displayName: 'Console Plugin Template'
  113. service:
  114. name: console-plugin-template
  115. namespace: console-plugin-template
  116. port: 9443
  117. basePath: '/'