Skip to content

Commit

Permalink
operator ack-elasticache-controller (0.0.27)
Browse files Browse the repository at this point in the history
  • Loading branch information
ack-bot authored Sep 20, 2023
1 parent f793657 commit c7eac19
Show file tree
Hide file tree
Showing 13 changed files with 2,489 additions and 0 deletions.
21 changes: 21 additions & 0 deletions operators/ack-elasticache-controller/0.0.27/bundle.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
FROM scratch

# Core bundle labels.
LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
LABEL operators.operatorframework.io.bundle.package.v1=ack-elasticache-controller
LABEL operators.operatorframework.io.bundle.channels.v1=alpha
LABEL operators.operatorframework.io.bundle.channel.default.v1=alpha
LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.28.0
LABEL operators.operatorframework.io.metrics.mediatype.v1=metrics+v1
LABEL operators.operatorframework.io.metrics.project_layout=unknown

# Labels for testing.
LABEL operators.operatorframework.io.test.mediatype.v1=scorecard+v1
LABEL operators.operatorframework.io.test.config.v1=tests/scorecard/

# Copy files to locations specified by labels.
COPY bundle/manifests /manifests/
COPY bundle/metadata /metadata/
COPY bundle/tests/scorecard /tests/scorecard/

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
apiVersion: v1
kind: Service
metadata:
creationTimestamp: null
name: ack-elasticache-metrics-service
spec:
ports:
- name: metricsport
port: 8080
protocol: TCP
targetPort: http
selector:
app.kubernetes.io/name: ack-elasticache-controller
type: NodePort
status:
loadBalancer: {}
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
creationTimestamp: null
name: ack-elasticache-reader
rules:
- apiGroups:
- elasticache.services.k8s.aws
resources:
- cacheparametergroups
- cachesubnetgroups
- replicationgroups
- snapshots
- users
- usergroups
verbs:
- get
- list
- watch
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
creationTimestamp: null
name: ack-elasticache-writer
rules:
- apiGroups:
- elasticache.services.k8s.aws
resources:
- cacheparametergroups
- cachesubnetgroups
- replicationgroups
- snapshots
- users
- usergroups
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
- apiGroups:
- elasticache.services.k8s.aws
resources:
- cacheparametergroups
- cachesubnetgroups
- replicationgroups
- snapshots
- users
- usergroups
verbs:
- get
- patch
- update
Original file line number Diff line number Diff line change
@@ -0,0 +1,215 @@
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.9.2
creationTimestamp: null
name: cacheparametergroups.elasticache.services.k8s.aws
spec:
group: elasticache.services.k8s.aws
names:
kind: CacheParameterGroup
listKind: CacheParameterGroupList
plural: cacheparametergroups
singular: cacheparametergroup
scope: Namespaced
versions:
- name: v1alpha1
schema:
openAPIV3Schema:
description: CacheParameterGroup is the Schema for the CacheParameterGroups
API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: "CacheParameterGroupSpec defines the desired state of CacheParameterGroup.
\n Represents the output of a CreateCacheParameterGroup operation."
properties:
cacheParameterGroupFamily:
description: "The name of the cache parameter group family that the
cache parameter group can be used with. \n Valid values are: memcached1.4
| memcached1.5 | memcached1.6 | redis2.6 | redis2.8 | redis3.2 |
redis4.0 | redis5.0 | redis6.x"
type: string
cacheParameterGroupName:
description: A user-specified name for the cache parameter group.
type: string
description:
description: A user-specified description for the cache parameter
group.
type: string
parameterNameValues:
description: An array of parameter names and values for the parameter
update. You must supply at least one parameter name and value; subsequent
arguments are optional. A maximum of 20 parameters may be modified
per request.
items:
description: Describes a name-value pair that is used to update
the value of a parameter.
properties:
parameterName:
type: string
parameterValue:
type: string
type: object
type: array
tags:
description: A list of tags to be added to this resource. A tag is
a key-value pair. A tag key must be accompanied by a tag value,
although null is accepted.
items:
description: A tag that can be added to an ElastiCache cluster or
replication group. Tags are composed of a Key/Value pair. You
can use tags to categorize and track all your ElastiCache resources,
with the exception of global replication group. When you add or
remove tags on replication groups, those actions will be replicated
to all nodes in the replication group. A tag with a null Value
is permitted.
properties:
key:
type: string
value:
type: string
type: object
type: array
required:
- cacheParameterGroupFamily
- cacheParameterGroupName
- description
type: object
status:
description: CacheParameterGroupStatus defines the observed state of CacheParameterGroup
properties:
ackResourceMetadata:
description: All CRs managed by ACK have a common `Status.ACKResourceMetadata`
member that is used to contain resource sync state, account ownership,
constructed ARN for the resource
properties:
arn:
description: 'ARN is the Amazon Resource Name for the resource.
This is a globally-unique identifier and is set only by the
ACK service controller once the controller has orchestrated
the creation of the resource OR when it has verified that an
"adopted" resource (a resource where the ARN annotation was
set by the Kubernetes user on the CR) exists and matches the
supplied CR''s Spec field values. TODO(vijat@): Find a better
strategy for resources that do not have ARN in CreateOutputResponse
https://github.com/aws/aws-controllers-k8s/issues/270'
type: string
ownerAccountID:
description: OwnerAccountID is the AWS Account ID of the account
that owns the backend AWS service API resource.
type: string
region:
description: Region is the AWS region in which the resource exists
or will exist.
type: string
required:
- ownerAccountID
- region
type: object
conditions:
description: All CRS managed by ACK have a common `Status.Conditions`
member that contains a collection of `ackv1alpha1.Condition` objects
that describe the various terminal states of the CR and its backend
AWS service API resource
items:
description: Condition is the common struct used by all CRDs managed
by ACK service controllers to indicate terminal states of the
CR and its backend AWS service API resource
properties:
lastTransitionTime:
description: Last time the condition transitioned from one status
to another.
format: date-time
type: string
message:
description: A human readable message indicating details about
the transition.
type: string
reason:
description: The reason for the condition's last transition.
type: string
status:
description: Status of the condition, one of True, False, Unknown.
type: string
type:
description: Type is the type of the Condition
type: string
required:
- status
- type
type: object
type: array
events:
description: A list of events. Each element in the list contains detailed
information about one event.
items:
description: Represents a single occurrence of something interesting
within the system. Some examples of events are creating a cluster,
adding or removing a cache node, or rebooting a node.
properties:
date:
format: date-time
type: string
message:
type: string
sourceIdentifier:
type: string
sourceType:
type: string
type: object
type: array
isGlobal:
description: Indicates whether the parameter group is associated with
a Global datastore
type: boolean
parameters:
description: A list of Parameter instances.
items:
description: Describes an individual setting that controls some
aspect of ElastiCache behavior.
properties:
allowedValues:
type: string
changeType:
type: string
dataType:
type: string
description:
type: string
isModifiable:
type: boolean
minimumEngineVersion:
type: string
parameterName:
type: string
parameterValue:
type: string
source:
type: string
type: object
type: array
type: object
type: object
served: true
storage: true
subresources:
status: {}
status:
acceptedNames:
kind: ""
plural: ""
conditions: null
storedVersions: null
Loading

0 comments on commit c7eac19

Please sign in to comment.