registry 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. # flake8: noqa
  2. # pylint: skip-file
  3. DOCUMENTATION = '''
  4. ---
  5. module: oc_adm_registry
  6. short_description: Module to manage openshift registry
  7. description:
  8. - Manage openshift registry programmatically.
  9. options:
  10. state:
  11. description:
  12. - The desired action when managing openshift registry
  13. - present - update or create the registry
  14. - absent - tear down the registry service and deploymentconfig
  15. - list - returns the current representiation of a registry
  16. required: false
  17. default: False
  18. aliases: []
  19. kubeconfig:
  20. description:
  21. - The path for the kubeconfig file to use for authentication
  22. required: false
  23. default: /etc/origin/master/admin.kubeconfig
  24. aliases: []
  25. debug:
  26. description:
  27. - Turn on debug output.
  28. required: false
  29. default: False
  30. aliases: []
  31. name:
  32. description:
  33. - The name of the registry
  34. required: false
  35. default: None
  36. aliases: []
  37. namespace:
  38. description:
  39. - The selector when filtering on node labels
  40. required: false
  41. default: None
  42. aliases: []
  43. images:
  44. description:
  45. - The image to base this registry on - ${component} will be replaced with --type
  46. required: 'openshift3/ose-${component}:${version}'
  47. default: None
  48. aliases: []
  49. latest_images:
  50. description:
  51. - If true, attempt to use the latest image for the registry instead of the latest release.
  52. required: false
  53. default: False
  54. aliases: []
  55. labels:
  56. description:
  57. - A set of labels to uniquely identify the registry and its components.
  58. required: false
  59. default: None
  60. aliases: []
  61. enforce_quota:
  62. description:
  63. - If set, the registry will refuse to write blobs if they exceed quota limits
  64. required: False
  65. default: False
  66. aliases: []
  67. mount_host:
  68. description:
  69. - If set, the registry volume will be created as a host-mount at this path.
  70. required: False
  71. default: False
  72. aliases: []
  73. ports:
  74. description:
  75. - A comma delimited list of ports or port pairs to expose on the registry pod. The default is set for 5000.
  76. required: False
  77. default: [5000]
  78. aliases: []
  79. replicas:
  80. description:
  81. - The replication factor of the registry; commonly 2 when high availability is desired.
  82. required: False
  83. default: 1
  84. aliases: []
  85. selector:
  86. description:
  87. - Selector used to filter nodes on deployment. Used to run registries on a specific set of nodes.
  88. required: False
  89. default: None
  90. aliases: []
  91. service_account:
  92. description:
  93. - Name of the service account to use to run the registry pod.
  94. required: False
  95. default: 'registry'
  96. aliases: []
  97. tls_certificate:
  98. description:
  99. - An optional path to a PEM encoded certificate (which may contain the private key) for serving over TLS
  100. required: false
  101. default: None
  102. aliases: []
  103. tls_key:
  104. description:
  105. - An optional path to a PEM encoded private key for serving over TLS
  106. required: false
  107. default: None
  108. aliases: []
  109. volume_mounts:
  110. description:
  111. - The volume mounts for the registry.
  112. required: false
  113. default: None
  114. aliases: []
  115. daemonset:
  116. description:
  117. - Use a daemonset instead of a deployment config.
  118. required: false
  119. default: False
  120. aliases: []
  121. edits:
  122. description:
  123. - A list of modifications to make on the deploymentconfig
  124. required: false
  125. default: None
  126. aliases: []
  127. env_vars:
  128. description:
  129. - A dictionary of modifications to make on the deploymentconfig. e.g. FOO: BAR
  130. required: false
  131. default: None
  132. aliases: []
  133. force:
  134. description:
  135. - Force a registry update.
  136. required: false
  137. default: False
  138. aliases: []
  139. author:
  140. - "Kenny Woodson <kwoodson@redhat.com>"
  141. extends_documentation_fragment: []
  142. '''
  143. EXAMPLES = '''
  144. - name: create a secure registry
  145. oc_adm_registry:
  146. name: docker-registry
  147. service_account: registry
  148. replicas: 2
  149. namespace: default
  150. selector: type=infra
  151. images: "registry.ops.openshift.com/openshift3/ose-${component}:${version}"
  152. env_vars:
  153. REGISTRY_CONFIGURATION_PATH: /etc/registryconfig/config.yml
  154. REGISTRY_HTTP_TLS_CERTIFICATE: /etc/secrets/registry.crt
  155. REGISTRY_HTTP_TLS_KEY: /etc/secrets/registry.key
  156. REGISTRY_HTTP_SECRET: supersecret
  157. volume_mounts:
  158. - path: /etc/secrets
  159. name: dockercerts
  160. type: secret
  161. secret_name: registry-secret
  162. - path: /etc/registryconfig
  163. name: dockersecrets
  164. type: secret
  165. secret_name: docker-registry-config
  166. edits:
  167. - key: spec.template.spec.containers[0].livenessProbe.httpGet.scheme
  168. value: HTTPS
  169. action: put
  170. - key: spec.template.spec.containers[0].readinessProbe.httpGet.scheme
  171. value: HTTPS
  172. action: put
  173. - key: spec.strategy.rollingParams
  174. value:
  175. intervalSeconds: 1
  176. maxSurge: 50%
  177. maxUnavailable: 50%
  178. timeoutSeconds: 600
  179. updatePeriodSeconds: 1
  180. action: put
  181. - key: spec.template.spec.containers[0].resources.limits.memory
  182. value: 2G
  183. action: update
  184. - key: spec.template.spec.containers[0].resources.requests.memory
  185. value: 1G
  186. action: update
  187. register: registryout
  188. '''