crd-awsdynamodb.yaml 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. # Copyright (c) 2020 TriggerMesh Inc.
  2. #
  3. # Licensed under the Apache License, Version 2.0 (the "License");
  4. # you may not use this file except in compliance with the License.
  5. # You may obtain a copy of the License at
  6. #
  7. # http://www.apache.org/licenses/LICENSE-2.0
  8. #
  9. # Unless required by applicable law or agreed to in writing, software
  10. # distributed under the License is distributed on an "AS IS" BASIS,
  11. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. # See the License for the specific language governing permissions and
  13. # limitations under the License.
  14. apiVersion: apiextensions.k8s.io/v1
  15. kind: CustomResourceDefinition
  16. metadata:
  17. name: awsdynamodbsources.sources.triggermesh.io
  18. labels:
  19. eventing.knative.dev/source: 'true'
  20. duck.knative.dev/source: 'true'
  21. knative.dev/crd-install: 'true'
  22. annotations:
  23. registry.knative.dev/eventTypes: |
  24. [
  25. { "type": "com.amazon.dynamodb.insert" },
  26. { "type": "com.amazon.dynamodb.modify" },
  27. { "type": "com.amazon.dynamodb.remove" }
  28. ]
  29. spec:
  30. group: sources.triggermesh.io
  31. scope: Namespaced
  32. names:
  33. kind: AWSDynamoDBSource
  34. plural: awsdynamodbsources
  35. categories:
  36. - all
  37. - knative
  38. - eventing
  39. - sources
  40. versions:
  41. - name: v1alpha1
  42. served: true
  43. storage: true
  44. subresources:
  45. status: {}
  46. schema:
  47. openAPIV3Schema:
  48. type: object
  49. properties:
  50. spec:
  51. type: object
  52. properties:
  53. arn:
  54. type: string
  55. pattern: '^arn:aws(-cn|-us-gov)?:dynamodb:[a-z]{2}(-gov)?-[a-z]+-\d:\d{12}:table\/.+$'
  56. credentials:
  57. type: object
  58. properties:
  59. accessKeyID:
  60. type: object
  61. properties:
  62. value:
  63. type: string
  64. valueFromSecret:
  65. type: object
  66. properties:
  67. name:
  68. type: string
  69. key:
  70. type: string
  71. oneOf:
  72. - required: ['value']
  73. - required: ['valueFromSecret']
  74. secretAccessKey:
  75. type: object
  76. properties:
  77. value:
  78. type: string
  79. format: password
  80. valueFromSecret:
  81. type: object
  82. properties:
  83. name:
  84. type: string
  85. key:
  86. type: string
  87. oneOf:
  88. - required: ['value']
  89. - required: ['valueFromSecret']
  90. sink:
  91. type: object
  92. properties:
  93. ref:
  94. type: object
  95. properties:
  96. apiVersion:
  97. type: string
  98. kind:
  99. type: string
  100. namespace:
  101. type: string
  102. name:
  103. type: string
  104. required:
  105. - apiVersion
  106. - kind
  107. - name
  108. uri:
  109. type: string
  110. format: uri
  111. oneOf:
  112. - required: ['ref']
  113. - required: ['uri']
  114. required:
  115. - arn
  116. - sink
  117. status:
  118. type: object
  119. properties:
  120. sinkUri:
  121. type: string
  122. format: uri
  123. ceAttributes:
  124. type: array
  125. items:
  126. type: object
  127. properties:
  128. type:
  129. type: string
  130. source:
  131. type: string
  132. required:
  133. - type
  134. - source
  135. observedGeneration:
  136. type: integer
  137. format: int64
  138. conditions:
  139. type: array
  140. items:
  141. type: object
  142. properties:
  143. type:
  144. type: string
  145. status:
  146. type: string
  147. enum: ['True', 'False', Unknown]
  148. severity:
  149. type: string
  150. enum: [Error, Warning, Info]
  151. reason:
  152. type: string
  153. message:
  154. type: string
  155. lastTransitionTime:
  156. type: string
  157. format: date-time
  158. required:
  159. - type
  160. - status
  161. additionalPrinterColumns:
  162. - name: Ready
  163. type: string
  164. jsonPath: .status.conditions[?(@.type=='Ready')].status
  165. - name: Reason
  166. type: string
  167. jsonPath: .status.conditions[?(@.type=='Ready')].reason
  168. - name: Sink
  169. type: string
  170. jsonPath: .status.sinkUri
  171. - name: Age
  172. type: date
  173. jsonPath: .metadata.creationTimestamp