diff --git a/PROJECT b/PROJECT index 97b4652..92a4cb5 100644 --- a/PROJECT +++ b/PROJECT @@ -4,7 +4,7 @@ # More info: https://book.kubebuilder.io/reference/project-config.html domain: epam.com layout: -- go.kubebuilder.io/v3 +- go.kubebuilder.io/v4 plugins: manifests.sdk.operatorframework.io/v2: {} scorecard.sdk.operatorframework.io/v2: {} diff --git a/README.md b/README.md index 17dc4f9..6bfb75e 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ In order to install the Nexus operator, follow the steps below: ```bash helm search repo epamedp/nexus-operator -l NAME CHART VERSION APP VERSION DESCRIPTION - epamedp/nexus-operator 3.2.0 3.2.0 A Helm chart for KRCI Nexus Operator + epamedp/nexus-operator 3.3.0 3.3.0 A Helm chart for KRCI Nexus Operator ``` _**NOTE:** It is highly recommended to use the latest released version._ diff --git a/api/common/zz_generated.deepcopy.go b/api/common/zz_generated.deepcopy.go new file mode 100644 index 0000000..1cfbabb --- /dev/null +++ b/api/common/zz_generated.deepcopy.go @@ -0,0 +1,32 @@ +//go:build !ignore_autogenerated + +// Code generated by controller-gen. DO NOT EDIT. + +package common + +import () + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SourceRef) DeepCopyInto(out *SourceRef) { + *out = *in + if in.ConfigMapKeyRef != nil { + in, out := &in.ConfigMapKeyRef, &out.ConfigMapKeyRef + *out = new(ConfigMapKeySelector) + **out = **in + } + if in.SecretKeyRef != nil { + in, out := &in.SecretKeyRef, &out.SecretKeyRef + *out = new(SecretKeySelector) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceRef. +func (in *SourceRef) DeepCopy() *SourceRef { + if in == nil { + return nil + } + out := new(SourceRef) + in.DeepCopyInto(out) + return out +} diff --git a/api/v1alpha1/zz_generated.deepcopy.go b/api/v1alpha1/zz_generated.deepcopy.go index 025d0d1..f13bd39 100755 --- a/api/v1alpha1/zz_generated.deepcopy.go +++ b/api/v1alpha1/zz_generated.deepcopy.go @@ -5,6 +5,7 @@ package v1alpha1 import ( + "github.com/epam/edp-nexus-operator/api/common" runtime "k8s.io/apimachinery/pkg/runtime" ) @@ -1109,7 +1110,16 @@ func (in *NexusBlobStoreSpec) DeepCopyInto(out *NexusBlobStoreSpec) { *out = new(SoftQuota) **out = **in } - out.File = in.File + if in.File != nil { + in, out := &in.File, &out.File + *out = new(File) + **out = **in + } + if in.S3 != nil { + in, out := &in.S3, &out.S3 + *out = new(S3) + (*in).DeepCopyInto(*out) + } out.NexusRef = in.NexusRef } @@ -2370,6 +2380,104 @@ func (in *RubyGemsSpec) DeepCopy() *RubyGemsSpec { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *S3) DeepCopyInto(out *S3) { + *out = *in + out.Bucket = in.Bucket + if in.Encryption != nil { + in, out := &in.Encryption, &out.Encryption + *out = new(S3Encryption) + **out = **in + } + if in.BucketSecurity != nil { + in, out := &in.BucketSecurity, &out.BucketSecurity + *out = new(S3BucketSecurity) + (*in).DeepCopyInto(*out) + } + if in.AdvancedBucketConnection != nil { + in, out := &in.AdvancedBucketConnection, &out.AdvancedBucketConnection + *out = new(S3AdvancedBucketConnection) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3. +func (in *S3) DeepCopy() *S3 { + if in == nil { + return nil + } + out := new(S3) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *S3AdvancedBucketConnection) DeepCopyInto(out *S3AdvancedBucketConnection) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3AdvancedBucketConnection. +func (in *S3AdvancedBucketConnection) DeepCopy() *S3AdvancedBucketConnection { + if in == nil { + return nil + } + out := new(S3AdvancedBucketConnection) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *S3Bucket) DeepCopyInto(out *S3Bucket) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3Bucket. +func (in *S3Bucket) DeepCopy() *S3Bucket { + if in == nil { + return nil + } + out := new(S3Bucket) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *S3BucketSecurity) DeepCopyInto(out *S3BucketSecurity) { + *out = *in + in.AccessKeyID.DeepCopyInto(&out.AccessKeyID) + in.SecretAccessKey.DeepCopyInto(&out.SecretAccessKey) + if in.SessionToken != nil { + in, out := &in.SessionToken, &out.SessionToken + *out = new(common.SourceRef) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3BucketSecurity. +func (in *S3BucketSecurity) DeepCopy() *S3BucketSecurity { + if in == nil { + return nil + } + out := new(S3BucketSecurity) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *S3Encryption) DeepCopyInto(out *S3Encryption) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3Encryption. +func (in *S3Encryption) DeepCopy() *S3Encryption { + if in == nil { + return nil + } + out := new(S3Encryption) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SoftQuota) DeepCopyInto(out *SoftQuota) { *out = *in diff --git a/bundle.Dockerfile b/bundle.Dockerfile index f763e9a..4e61dd8 100644 --- a/bundle.Dockerfile +++ b/bundle.Dockerfile @@ -7,9 +7,9 @@ LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/ LABEL operators.operatorframework.io.bundle.package.v1=nexus-operator LABEL operators.operatorframework.io.bundle.channels.v1=stable LABEL operators.operatorframework.io.bundle.channel.default.v1=stable -LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.33.0 +LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.38.0 LABEL operators.operatorframework.io.metrics.mediatype.v1=metrics+v1 -LABEL operators.operatorframework.io.metrics.project_layout=go.kubebuilder.io/v3 +LABEL operators.operatorframework.io.metrics.project_layout=go.kubebuilder.io/v4 # Labels for testing. LABEL operators.operatorframework.io.test.mediatype.v1=scorecard+v1 diff --git a/bundle/manifests/edp.epam.com_nexusblobstores.yaml b/bundle/manifests/edp.epam.com_nexusblobstores.yaml index b2c8976..0e9d631 100644 --- a/bundle/manifests/edp.epam.com_nexusblobstores.yaml +++ b/bundle/manifests/edp.epam.com_nexusblobstores.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 creationTimestamp: null name: nexusblobstores.edp.epam.com spec: @@ -25,14 +25,19 @@ spec: description: NexusBlobStore is the Schema for the nexusblobstores 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' + 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' + 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 @@ -43,15 +48,15 @@ spec: description: File type blobstore. properties: path: - description: The path to the blobstore contents. This can be an - absolute path to anywhere on the system Nexus Repository Manager - has access to it or can be a path relative to the sonatype-work - directory. + description: |- + The path to the blobstore contents. + This can be an absolute path to anywhere on the system Nexus Repository Manager has access to it or can be a path relative to the sonatype-work directory. type: string type: object name: - description: Name of the BlobStore. Name should be unique across all - BlobStores. + description: |- + Name of the BlobStore. + Name should be unique across all BlobStores. type: string x-kubernetes-validations: - message: Value is immutable @@ -69,6 +74,200 @@ spec: required: - name type: object + s3: + description: S3 type blobstore. + properties: + advancedBucketConnection: + description: A custom endpoint URL, signer type and whether path + style access is enabled. + properties: + endpoint: + description: A custom endpoint URL for third party object + stores using the S3 API. + type: string + forcePathStyle: + default: false + description: Setting this flag will result in path-style access + being used for all requests. + type: boolean + maxConnectionPoolSize: + description: Setting this value will override the default + connection pool size of Nexus of the s3 client for this + blobstore. + format: int32 + type: integer + signerType: + description: An API signature version which may be required + for third party object stores using the S3 API. + enum: + - DEFAULT + - S3SignerType + - AWSS3V4SignerType + type: string + type: object + bucket: + description: Details of the S3 bucket such as name and region. + properties: + expiration: + default: 3 + description: How many days until deleted blobs are finally + removed from the S3 bucket (-1 to disable). + format: int32 + type: integer + name: + description: The name of the S3 bucket. + type: string + prefix: + description: The S3 blob store (i.e. S3 object) key prefix. + type: string + region: + default: DEFAULT + description: The AWS region to create a new S3 bucket in or + an existing S3 bucket's region. + type: string + required: + - name + type: object + bucketSecurity: + description: Security details for granting access the S3 API. + properties: + accessKeyId: + description: An IAM access key ID for granting access to the + S3 bucket. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + required: + - key + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + description: Selects a key of a secret. + properties: + key: + description: The key of the secret to select from. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + role: + description: An IAM role to assume in order to access the + S3 bucket. + type: string + secretAccessKey: + description: The secret access key associated with the specified + IAM access key ID. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + required: + - key + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + description: Selects a key of a secret. + properties: + key: + description: The key of the secret to select from. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + sessionToken: + description: An AWS STS session token associated with temporary + security credentials which grant access to the S3 bucket. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + required: + - key + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + description: Selects a key of a secret. + properties: + key: + description: The key of the secret to select from. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - accessKeyId + - secretAccessKey + type: object + encryption: + description: The type of encryption to use if any. + properties: + encryptionKey: + description: If using KMS encryption, you can supply a Key + ID. If left blank, then the default will be used. + type: string + encryptionType: + description: The type of S3 server side encryption to use. + enum: + - none + - s3ManagedEncryption + - kmsManagedEncryption + type: string + type: object + required: + - bucket + type: object softQuota: description: Settings to control the soft quota. properties: diff --git a/bundle/manifests/edp.epam.com_nexuscleanuppolicies.yaml b/bundle/manifests/edp.epam.com_nexuscleanuppolicies.yaml index d99ea0e..9af8413 100644 --- a/bundle/manifests/edp.epam.com_nexuscleanuppolicies.yaml +++ b/bundle/manifests/edp.epam.com_nexuscleanuppolicies.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 creationTimestamp: null name: nexuscleanuppolicies.edp.epam.com spec: @@ -20,14 +20,19 @@ spec: description: NexusCleanupPolicy is the Schema for the cleanuppolicies 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' + 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' + 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 diff --git a/bundle/manifests/edp.epam.com_nexuses.yaml b/bundle/manifests/edp.epam.com_nexuses.yaml index 35b54d8..def11dc 100644 --- a/bundle/manifests/edp.epam.com_nexuses.yaml +++ b/bundle/manifests/edp.epam.com_nexuses.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 creationTimestamp: null name: nexuses.edp.epam.com spec: @@ -25,14 +25,19 @@ spec: description: Nexus is the Schema for the nexus 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' + 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' + 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 @@ -40,9 +45,9 @@ spec: description: NexusSpec defines the desired state of Nexus. properties: secret: - description: Secret is the name of the k8s object Secret related to - nexus. Secret should contain a user field with a nexus username - and a password field with a nexus password. + description: |- + Secret is the name of the k8s object Secret related to nexus. + Secret should contain a user field with a nexus username and a password field with a nexus password. type: string url: description: Url is the url of nexus instance. diff --git a/bundle/manifests/edp.epam.com_nexusrepositories.yaml b/bundle/manifests/edp.epam.com_nexusrepositories.yaml index 10d663b..d997bf0 100644 --- a/bundle/manifests/edp.epam.com_nexusrepositories.yaml +++ b/bundle/manifests/edp.epam.com_nexusrepositories.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 creationTimestamp: null name: nexusrepositories.edp.epam.com spec: @@ -20,21 +20,26 @@ spec: description: NexusRepository is the Schema for the nexusrepositories 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' + 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' + 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: NexusRepositorySpec defines the desired state of NexusRepository. - It should contain only one format of repository - go, maven, npm, etc. - and only one type - proxy, hosted or group. + description: |- + NexusRepositorySpec defines the desired state of NexusRepository. + It should contain only one format of repository - go, maven, npm, etc. and only one type - proxy, hosted or group. properties: apt: properties: @@ -67,8 +72,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -86,9 +91,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -147,8 +152,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -222,9 +227,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -314,9 +319,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -351,8 +356,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -370,9 +375,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -425,8 +430,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -500,9 +505,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -583,8 +588,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -658,9 +663,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -740,8 +745,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -815,9 +820,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -897,8 +902,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -972,9 +977,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -1088,9 +1093,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -1125,8 +1130,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -1165,9 +1170,9 @@ spec: - v1Enabled type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -1212,8 +1217,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -1253,8 +1258,9 @@ spec: - CUSTOM type: string indexUrl: - description: 'Url of Docker Index to use. TODO: add cel - validation. (Required if indexType is CUSTOM)' + description: |- + Url of Docker Index to use. + TODO: add cel validation. (Required if indexType is CUSTOM) type: string type: object httpClient: @@ -1324,9 +1330,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -1408,8 +1414,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -1427,9 +1433,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -1485,9 +1491,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -1522,8 +1528,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -1597,9 +1603,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -1679,8 +1685,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -1698,9 +1704,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -1744,8 +1750,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -1819,9 +1825,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -1943,9 +1949,9 @@ spec: type: string type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -1980,8 +1986,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -2032,9 +2038,9 @@ spec: type: string type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -2078,8 +2084,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -2189,9 +2195,9 @@ spec: type: string type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -2293,9 +2299,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -2330,8 +2336,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -2349,9 +2355,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -2395,8 +2401,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -2470,9 +2476,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -2573,9 +2579,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -2610,8 +2616,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -2629,9 +2635,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -2675,8 +2681,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -2750,9 +2756,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -2852,8 +2858,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -2927,9 +2933,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -3018,9 +3024,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -3055,8 +3061,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -3074,9 +3080,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -3120,8 +3126,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -3195,9 +3201,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -3286,9 +3292,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -3323,8 +3329,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -3342,9 +3348,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -3388,8 +3394,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -3463,9 +3469,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -3554,9 +3560,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -3600,8 +3606,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -3619,9 +3625,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -3674,8 +3680,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -3749,9 +3755,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -3849,9 +3855,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -3886,8 +3892,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -3905,9 +3911,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -3951,8 +3957,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -4026,9 +4032,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: @@ -4117,9 +4123,9 @@ spec: - memberNames type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -4164,8 +4170,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -4183,9 +4189,9 @@ spec: - proprietaryComponents type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string online: @@ -4245,8 +4251,8 @@ spec: cleanup: properties: policyNames: - description: Components that match any of the applied - policies will be deleted. + description: ' Components that match any of the applied + policies will be deleted.' items: type: string type: array @@ -4320,9 +4326,9 @@ spec: type: object type: object name: - description: A unique identifier for this repository. Only - letters, digits, underscores(_), hyphens(-), and dots(.) - are allowed and may not start with underscore or dot. + description: |- + A unique identifier for this repository. + Only letters, digits, underscores(_), hyphens(-), and dots(.) are allowed and may not start with underscore or dot. pattern: ^[a-zA-Z0-9][a-zA-Z0-9_.-]*$ type: string negativeCache: diff --git a/bundle/manifests/edp.epam.com_nexusroles.yaml b/bundle/manifests/edp.epam.com_nexusroles.yaml index 41c0831..07655db 100644 --- a/bundle/manifests/edp.epam.com_nexusroles.yaml +++ b/bundle/manifests/edp.epam.com_nexusroles.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 creationTimestamp: null name: nexusroles.edp.epam.com spec: @@ -20,14 +20,19 @@ spec: description: NexusRole is the Schema for the nexusroles 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' + 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' + 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 @@ -39,8 +44,9 @@ spec: example: Administrator role type: string id: - description: ID is the id of the role. ID should be unique across - all roles. + description: |- + ID is the id of the role. + ID should be unique across all roles. example: nx-admin maxLength: 512 type: string diff --git a/bundle/manifests/edp.epam.com_nexusscripts.yaml b/bundle/manifests/edp.epam.com_nexusscripts.yaml index ab5fac9..6e47c4c 100644 --- a/bundle/manifests/edp.epam.com_nexusscripts.yaml +++ b/bundle/manifests/edp.epam.com_nexusscripts.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 creationTimestamp: null name: nexusscripts.edp.epam.com spec: @@ -20,14 +20,19 @@ spec: description: NexusScript is the Schema for the nexusscripts 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' + 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' + 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 @@ -43,8 +48,9 @@ spec: description: Execute defines if script should be executed after creation. type: boolean name: - description: Name is the id of the script. Name should be unique across - all scripts. + description: |- + Name is the id of the script. + Name should be unique across all scripts. example: anonymous maxLength: 512 type: string diff --git a/bundle/manifests/edp.epam.com_nexususers.yaml b/bundle/manifests/edp.epam.com_nexususers.yaml index 6767d45..2a62754 100644 --- a/bundle/manifests/edp.epam.com_nexususers.yaml +++ b/bundle/manifests/edp.epam.com_nexususers.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 creationTimestamp: null name: nexususers.edp.epam.com spec: @@ -20,14 +20,19 @@ spec: description: NexusUser is the Schema for the nexususers 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' + 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' + 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 @@ -44,8 +49,9 @@ spec: example: John type: string id: - description: ID is the username of the user. ID should be unique across - all users. + description: |- + ID is the username of the user. + ID should be unique across all users. example: new-user maxLength: 512 type: string @@ -78,9 +84,10 @@ spec: minItems: 1 type: array secret: - description: 'Secret is the reference of the k8s object Secret for - the user password. Format: $secret-name:secret-key. Updating user - password is not supported.' + description: |- + Secret is the reference of the k8s object Secret for the user password. + Format: $secret-name:secret-key. + Updating user password is not supported. example: $nexus-user-secret:password-filed type: string status: diff --git a/bundle/manifests/nexus-operator.clusterserviceversion.yaml b/bundle/manifests/nexus-operator.clusterserviceversion.yaml index ba45ded..42254df 100644 --- a/bundle/manifests/nexus-operator.clusterserviceversion.yaml +++ b/bundle/manifests/nexus-operator.clusterserviceversion.yaml @@ -206,13 +206,13 @@ metadata: ] capabilities: Deep Insights categories: Developer Tools - containerImage: docker.io/epamedp/nexus-operator:3.2.0 - createdAt: "2024-02-21T18:00:19Z" + containerImage: docker.io/epamedp/nexus-operator:3.3.0 + createdAt: "2024-12-25T09:37:07Z" description: An Operator for managing Nexus entities. - operators.operatorframework.io/builder: operator-sdk-v1.33.0 - operators.operatorframework.io/project_layout: go.kubebuilder.io/v3 + operators.operatorframework.io/builder: operator-sdk-v1.38.0 + operators.operatorframework.io/project_layout: go.kubebuilder.io/v4 repository: https://github.com/epam/edp-nexus-operator - name: nexus-operator.v3.2.0 + name: nexus-operator.v3.3.0 namespace: placeholder spec: apiservicedefinitions: {} @@ -260,37 +260,60 @@ spec: ## Quick Start - 1. Create a User in the Nexus Repository. - - 2. Insert newly created user credentials into Kubernetes secret: + 1. Login into Nexus and create user. Attach permissions to user such as scripts, rules, blobs etc. Insert user credentials into Kubernetes secret. ```yaml apiVersion: v1 kind: Secret metadata: - name: nexus-secret - type: Opaque + name: nexus-admin-password data: - username: dXNlcg== # base64-encoded value of "user" - password: cGFzcw== # base64-encoded value of "pass" + password: cGFzcw== # base64-encoded value of "pass" + user: dXNlcg== # base64-encoded value of "user" ``` - 3. Create Custom Resource `kind: Nexus` with Nexus instance URL and secret created on the previous step: + 2. Create Custom Resource `kind: Nexus` with Nexus instance URL and secret created on the previous step: ```yaml - apiVersion: v1.edp.epam.com/v1alpha1 + apiVersion: edp.epam.com/v1alpha1 kind: Nexus metadata: - name: nexus-sample + name: nexus spec: - secret: nexus-secret # Secret name - url: https://nexus.example.com # Nexus URL + secret: nexus-admin-password + url: http://nexus.example.com ``` Wait for the `.status` field with `status.connected: true` + + 3. Create Role using Custom Resources NexusRole: + + ```yaml + apiVersion: edp.epam.com/v1alpha1 + kind: NexusRole + metadata: + name: edp-admin + spec: + description: Read and write access to all repos and scripts + id: edp-admin + name: edp-admin + nexusRef: + kind: Nexus + name: nexus + privileges: + - nx-apikey-all + - nx-repository-view-*-*-add + - nx-repository-view-*-*-browse + - nx-repository-view-*-*-edit + - nx-repository-view-*-*-read + - nx-script-*-add + - nx-script-*-delete + - nx-script-*-run + - nx-search-read + ``` displayName: EDP Nexus Operator icon: - - base64data: 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 + - base64data: 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 mediatype: image/png install: spec: @@ -325,7 +348,7 @@ spec: env: - name: SETUP_SELF_SIGNED_CERTIFICATES value: "false" - image: docker.io/epamedp/nexus-operator:3.2.0 + image: docker.io/epamedp/nexus-operator:3.3.0 livenessProbe: httpGet: path: /healthz @@ -603,10 +626,11 @@ spec: - supported: true type: AllNamespaces keywords: + - artifact - edp + - kuberocketci - nexus - operator - - artifact - storage links: - name: Nexus Operator @@ -617,9 +641,9 @@ spec: maturity: stable minKubeVersion: 1.20.0 provider: - name: EPAM Delivery Platform - url: https://epam.github.io/edp-install/ - version: 3.2.0 + name: KubeRocketCI + url: https://docs.kuberocketci.io + version: 3.3.0 webhookdefinitions: - admissionReviewVersions: - v1 diff --git a/bundle/metadata/annotations.yaml b/bundle/metadata/annotations.yaml index 9732891..343cceb 100644 --- a/bundle/metadata/annotations.yaml +++ b/bundle/metadata/annotations.yaml @@ -6,12 +6,9 @@ annotations: operators.operatorframework.io.bundle.package.v1: nexus-operator operators.operatorframework.io.bundle.channels.v1: stable operators.operatorframework.io.bundle.channel.default.v1: stable - operators.operatorframework.io.metrics.builder: operator-sdk-v1.33.0 + operators.operatorframework.io.metrics.builder: operator-sdk-v1.38.0 operators.operatorframework.io.metrics.mediatype.v1: metrics+v1 - operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v3 - - # Annotations for OpenShift. - com.redhat.openshift.versions: "v4.7-v4.13" + operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v4 # Annotations for testing. operators.operatorframework.io.test.mediatype.v1: scorecard+v1 diff --git a/config/manager/kustomization.yaml b/config/manager/kustomization.yaml index 5e3b0bb..a645ac5 100644 --- a/config/manager/kustomization.yaml +++ b/config/manager/kustomization.yaml @@ -5,4 +5,4 @@ kind: Kustomization images: - name: controller newName: docker.io/epamedp/nexus-operator - newTag: 3.2.0 + newTag: 3.3.0 diff --git a/config/manifests/bases/nexus-operator.clusterserviceversion.yaml b/config/manifests/bases/nexus-operator.clusterserviceversion.yaml index fbb3280..3c51521 100644 --- a/config/manifests/bases/nexus-operator.clusterserviceversion.yaml +++ b/config/manifests/bases/nexus-operator.clusterserviceversion.yaml @@ -5,10 +5,10 @@ metadata: alm-examples: '[]' capabilities: Deep Insights categories: Developer Tools - containerImage: docker.io/epamedp/nexus-operator:3.2.0 + containerImage: docker.io/epamedp/nexus-operator:3.3.0 description: An Operator for managing Nexus entities. repository: https://github.com/epam/edp-nexus-operator - name: nexus-operator.v3.2.0 + name: nexus-operator.v3.3.0 namespace: placeholder spec: apiservicedefinitions: {} @@ -56,37 +56,60 @@ spec: ## Quick Start - 1. Create a User in the Nexus Repository. - - 2. Insert newly created user credentials into Kubernetes secret: + 1. Login into Nexus and create user. Attach permissions to user such as scripts, rules, blobs etc. Insert user credentials into Kubernetes secret. ```yaml apiVersion: v1 kind: Secret metadata: - name: nexus-secret - type: Opaque + name: nexus-admin-password data: - username: dXNlcg== # base64-encoded value of "user" - password: cGFzcw== # base64-encoded value of "pass" + password: cGFzcw== # base64-encoded value of "pass" + user: dXNlcg== # base64-encoded value of "user" ``` - 3. Create Custom Resource `kind: Nexus` with Nexus instance URL and secret created on the previous step: + 2. Create Custom Resource `kind: Nexus` with Nexus instance URL and secret created on the previous step: ```yaml - apiVersion: v1.edp.epam.com/v1alpha1 + apiVersion: edp.epam.com/v1alpha1 kind: Nexus metadata: - name: nexus-sample + name: nexus spec: - secret: nexus-secret # Secret name - url: https://nexus.example.com # Nexus URL + secret: nexus-admin-password + url: http://nexus.example.com ``` Wait for the `.status` field with `status.connected: true` + + 3. Create Role using Custom Resources NexusRole: + + ```yaml + apiVersion: edp.epam.com/v1alpha1 + kind: NexusRole + metadata: + name: edp-admin + spec: + description: Read and write access to all repos and scripts + id: edp-admin + name: edp-admin + nexusRef: + kind: Nexus + name: nexus + privileges: + - nx-apikey-all + - nx-repository-view-*-*-add + - nx-repository-view-*-*-browse + - nx-repository-view-*-*-edit + - nx-repository-view-*-*-read + - nx-script-*-add + - nx-script-*-delete + - nx-script-*-run + - nx-search-read + ``` displayName: EDP Nexus Operator icon: - - base64data: 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 + - base64data: AAABAAMAEBAAAAEAIABoBAAANgAAACAgAAABACAAKBEAAJ4EAAAwMAAAAQAgAGgmAADGFQAAKAAAABAAAAAgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPiYo3X2mJp89ZaNOP+qqgMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3lptp95eS/feWh/z4ln3v+ZZxr/uVaVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+JqMJveWiP73lHtI+JZyevmXapf5l2CxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD5l33h+pd0e/mXaf36l17g+pdSmwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+JZxn/qXa6P6ll7V+pZXZvqVS3b+jTgJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPuWaUT6lmG1+5VTj/qWTHz8l0Bb+5U1k/qUJTf9lSCP/5QVeP6XCRsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/kSQH+5U1j/yTLGj8lSLI/5YWZP2WDuD/lgWSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+VJjX9lSLH/JMWaP6VDuT+lQJy/pcAmQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD9lB+L/5YWZv6VDuT8kwJo/pgA7v6fAJj/tgAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/pUWcv2VDuH+lAJ1/pgA7PycAGj+pQDv/asAwP6uABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP6TCRr9lQWW/pgAm/6eAJ79pADs/KkAaP2yAO/9uADZ/7sAIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/mQAK/aoAyP2xAOv8twBo/L4A8PzEAOT3zAAjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP6tABn8twDh/L4A6vzEAGj7ygDx/NAAzf//AAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/70AK/zEAOz8ygDp+tIAu/vXAP783ABZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD5yAAv+9AA3PvWAP763QD+++MAqQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP7iAAn82wBt+uIAvPjmAJsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAACAAAABAAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPeXp0D3l6Rg7ZWeHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9pilOfaYof72l5z+95eX1/aWkZP4l4pP7pmIDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/f38E9pec8feXl/73l5L+95eN/viXiP74loP6+JZ+xvmXd4L2lG8+/5lmBQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3l5ey95eS/vaXjf32lof2+JeD/viXfv74l3n++Zdz/vmXb/75lmny+JZkTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPiXkG/3l43+95aI/veZgyP3lH1D+ZZ5hvmXdMr4lm78+Zdp/vmXZP77ll+YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+ZaLLPeXiP74l4P+9pd/XvmVd1z4lnFu+JdtKv6bYxL4lmVT+ZZgl/mXW5cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+ZeD5viXfv74lnih/JlyVfmXbv75l2r++pZk5PqWX6H5lldd9ZNOGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD3lX2l+Jd5/vqXc+P/mWYU+Zdq/PmXZP76l1/++pda/vqXVf76l1D4/38AAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPeWd2L5l3T/+Zdv/viZbCj6l2TO+pdf/vmWW4b7l1aC+5ZRxvqWS/v+l0IbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA9pRzH/iXb/75l2r++pZma/mWXYv6l1r++ZVWkQAAAADffz8I/48/EP6NOAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+ZZp2vmXZf76lmCu+5RYSPqXVf77l1DU/5kzBf+ZPxT6lUGk/Zc6oPGTNRP/kSQO/5cpVvqUJjz2lCAf/38ABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD6mGY5+ZZhjfqXW57ni0UL+5ZQ7fqWS/7+mEcZ+5dAov+ZMxT8lTe4+5Ux4fqRKDj7kydA/JUi5v2WHv78lRj8/pYT4vyVDm0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/pNDE/+ZMwr7lTqT+5U3wv+MMxT8lSu6/JUn+fyVIm//lBUY/ZYYvv6WFP7+lg/+/pUJ9f+ZAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+RNg78ljLb/ZUtv/6TKBP9lSK6/ZYe/v2VF6v/lg8R/ZUPh/2WCf3+lgT+/5UATQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/5kiD/+TKDL9lSj3/JUiv/KMGRT9lRi8/pYU/v6VDtj/lgUs/5YDTv6WAO/+lwCZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD7lStN/5YmSf6VIWr9lh7+/JUYvf+MDBT/lQ69/pYJ/v2VBPT/lwBb/5cAJf6cALj/AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPmRJDH8lSLr/pEbHP2VGKn+lhT+/ZUOvP+MABT9lQS//pYA/v2YAP7/mwCS/5YAEf+fAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/pMaE/2WHv79lhjD/o0OEv6WDtn+lgr+/ZUEuv6TABP/lwDA/psA/v6eAP79oQDC/qYAFwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/ZYZ9P6WFP79lA6L/5UFLv6VBfX+lgD+/5cAuf+ZABT9nQDC/qEA/v6lAP79pwDh/6oAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+lRTX/pYP//+WCv3/lANP/5QAYv6YAP7+mwD+/Z4At/+ZABT9pADD/qgA/v2rAP78rgDz/7MATgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+WDmn9lgr4/pYF/v2WAO//mQAj/5sAnP6eAP7+oQD+/aUAtv+lABT9qgDF/a4A/v2xAP78tQD8/LcAbgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+RAA78lgBV/5gAof6aALz+mwAS/6EAzP6kAP7+qAD+/akAtP+yABT9sQDF/bQA/v23AP78uwD+/b0AiQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/6oAA/6iAAv+pAAf/acA6v2rAP79rgD+/bIAs/+yABT9uADH/boA/vy+AP78wQD++8MAl///AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/qgA//a4A+f2xAP79tAD+/LYAsfK2ABX8vQDI/MEA/vzEAP78xwD+/csAiwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/sgBk/LQA/v23AP/9ugD+/L0AsP7CABX8xADJ/McA/vzKAP77zQD++9AAUwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD9tgCK/boA//y+AP78wQD+/MUArf7CABX8ywDK+80A/vvQAP761ADo/9oADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAH9vgCn/MEA/vzEAP78xwD+/csArP7OABX60AD1+9QA/vvXAP762gB+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+qAAb8wwC3/McA/vzKAP77zQD++9AA5fvUAP771wD/+9oA/vrdAOb//wADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+/AAj8yQCy/M0A/vvQAP770wD++9cA/vvaAP773QD++uAA/vrlADsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAL6zwB8+9MA+PvXAP772gD++90A/vrgAP764wD++uUAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/1gAm+9oApvrdAPr64AD++uMA/vrmAP755wCFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/ucAFvniAGH75gCT+OcApffoAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKAAAADAAAABgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP6pqQn2mKo595efIO6ZmQ//f38CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP6WrRb2mKbT95ij1PSWnqn2lpp6+JWYTfeSkiGqVVUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOeLogv2mKGs9pif/vaXnP72lpj895iW8fiXkuX1l43C9paKePOWhSz/AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wH3l52A9pec/PeXmf73l5X+95eS/veXj/73l4v++JeI/viXhfz3l4HY95d8kfiVd0v3lHEk8ZNrE/+qVQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD1l5pU95iZ7veXlv73l5L+95eP/veXi/74l4j++JeE/viXgf74l37++Jd6/viWd/z5lnPf+ZZvsvuXbYX7lmlE/39VBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4k5om9peV3feXkv73l47+9paK+veWh+P4l4T++JeB/viXfv74l3r++Jd3/vmXc/75l3D++Zds/viWaf75l2Xn/5dhKgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/qqoD+JeSwPeXj/73l4v+95eI/feSeyH6lX019pV9fviWesH6l3fd+JZ07/mXcPz5l23/+Zdp/vmXZv75l2P++5VfUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+JePfveXi/74l4j++JeE/veXgWr/kW0H9pB3HtqRbQf4lXYp+ZZyVfmXbYL5l2mx+Zdm3fmXYv36l1/++pZacwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+paMM/eXiP74l4T++JeB/viYfrr/f2YK+ZZ2vviXc9H5lW+F+pRqN/9VAAP/lGoM/pBjF/qVWzX7l1yF+pdYcQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AfiWheb4l4H++Jd+/viWe+T+kG4X+phynPmXcP75l23++Zdq/vmWZuj4lmKe+ZZdVfiWWyfzllEW/5kzBQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPiWgZz4l37++Jd6/viXd+/7mHVD+JdwVPmXbf75l2n++Zdm/vqXY/76l1/++pdc/vmXWOn6llW6+5ZRhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPiZfUv4l3r++Jd3/vmWdPr4l3Bx/5FbDvmWafn5l2b++Zdi/vqXX/76l1z++pdY/vqXVf76l1L++5ZP+v9/KgYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPWXcRv5lnfr+Zd0//mXcf76l2yd/otcC/mXZ7z5l2P++pdf/vmWXbT7mFmc+5ZV0PqWUuT7lk/1+pZL/v+WRycAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAO+PbxD4l3PA+Zdw//mXbf75lmrJ/pdnG/qXYm/6l1/++pdc/vmWWMD/fwAC/49PEPqVTzr8mExo+ZRHlf+XRi8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP9/fwT5l3CR+Jdt/vmXav75l2b0+ZdhL/+WWyf5l1z4+pdY/vqXVeX2lFIfAAAAAP+qAAPwljwR/6oqBv9/PwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD5l2xl+JZp9fmXZv75l2P++pZfa/+ZWRT6llfS+pdV/vuXUvD7l09K/1UAA/6LRQv6lkNm+pZBv/uVPIr4lTcp/38AAv8AAAH+li4W/pQpH/+UHxjwlh4R/o0cCf9/AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD5lGor+ZZmyfmWY/76l2D++pdcs/6NVAn6llSm+pdS/vuXT/r6lUp35X8zCvqVQXT/mT8U+pU8avyWOu/7lTbN/JcyVv+ZAAX/lyxF/ZUorP2WJcD8lCGt/ZUdmf2UGob+lRZy/5USXv+UDiQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wAB8pFhFf+TYC35ll1V+JVZcgAAAAD6llBp+pZO7fqWS/76lUil/5E2DvqWQKr8lj5//osuC/+VNE37lTPy/JUw8v2WK5f+iScN/pEkHP2VIrP9lh/+/ZYc/vyVGP79lhX7/ZYR9v6WDtb/kQwqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP6RPBX4lkEn/38qBvyWO2L7lTr0+pQ2cf6LLgv8lS5t+5Us7vyVKfz9lSWp/5MhJuV/GQr9lRqO/pYY7/6WFv7+lhL+/pYP/v2VC/v8lAh1/wAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+UNRj8ljfF+5Yz9vyULn3yjCYU/JUqbf2WJfL9liP9/JQfyv6VGFL/jw8Q/JQUYv2VEtr+lg/+/pYL/v6WCP7+lgSm/5EADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD7ljJH+5Uw6PuVLPf8lCl8/5kZCvuSIlL8lh/z/ZYc/vyVGPD/lhR8/5kACv+RDiP9lQm//ZUH/v6WBP7+lQHa/5YAIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAH/fyoG/JYrevyVKfr9lSX1+pMgbf+ZGQr8lBtx/ZUY7/6WFf79lRL8/pUOnf6XABv+mAAZ/pUDpP6WAfT+lgD8/5QASAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+RJA7/lStG64knDf2WJZz8liP9/ZUf9fyVGXn/jBkU/pQUcf2VEfT+lg/+/pYL/v6VB8b/lgNC/okADf+WAHD9mADj/pkAlwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP6NKhL9lCmt/5YkMf6QIRf9lR7C/ZYc/vyVGPb/lBV4/5kACv+WDFX9lQr0/pYH/v2VBP79lQHp/5YAZP9/AAL/mwBA/p0Ax/9VAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP6JJw38lSS1/JQiyv6NHBL/lxhK/JUY5v6WFv79lRH0/pUMaP+ZAAr8lQZ0/5UE8P6WAv7+lgD+/ZgA/v+aAJH/pQAU/58AIP+UABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+fHwj9liGh/ZYf//2VGqL+mw4S/JQTc/2VEvz+lg/+/ZUL9P6WBnX/jAAU/JQAdf6VAPX+mAD+/poA//2dAPr+ngCs/6AAKwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+qAAP9lhyN/ZYc/vyVGPf8lRVt/58ACP+WDpD+lgv//pYH/v6WBPT+lQB0/5kACv+WAFr9mgD2/pwA/v6eAP79oAD9/aEA4/+jAEYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD8lRt5/JUY/P6WFv79lhLg/5QNN/+WABH9lQfD/pYF/P6WAv79lgDz/5kAZP+ZAAr+ngB3/Z4A8v6gAP7+ogD+/qUA/v2mAPL8qABh/58ACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD8lBZn/ZUV9f6WEv7+lg/+/ZULxv6RABz/lQNG/pUB5P6WAP7+mAD+/poA8vycAHL/mQAU/58AeP6iAPb+pAD+/qcA/v2pAP79qwDr/64Agv6wAA0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+lRJS/ZUS7v6WD//+lgv+/ZUI/v+UBLn+iQAN/pYAX/6YAP7+mgD+/pwA/v2eAPT8oABx/5kACvylAF79pwD3/qkA/v2rAP79rQD+/K8A+vywALr+sQAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+kQkc/ZUOwf2VC/r+lgj+/pYF/v2WAvj+lQB0/5kABf6bAI/9nAD6/p4A/v6gAP7/ogDx/KIAYf+ZAAr+qQB7/asA8/2tAP79rwD+/bEA/vyzAP39tgCz/7oAJQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+JIMKPyUCHj/lgSt/ZYB4P6WAP79lwDh+5kARv6bABL9nQC3/aAA/f6iAP7+pAD+/acA8f+pAG7/pQAU/KwAfP2vAPf9sQD+/bMA/v21AP78twD+/LkAw/++ADsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD+iwAL/5QAGP+UAEP+mQCf/ZsA0/6cAB/5nAAx/6MA3v6kAP7+pgD+/qkA/v2rAPP8rQBt5ZkACvyxAGP9tAD3/bUA/v23AP79uQD+/LwA/v2+AOL7vQBGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/58ACP+XACAAAAAA/qQAUv+mAPD+qQD+/asA/v2tAP79sADv/LIAXf7GAAn8tAB//bgA8/25AP78uwD+/L4A/vy/AP77wQDc/8cAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+oAG39qwDz/a0A/v2vAP79sQD+/LQA7/y2AGr/vwAU/bkAgPy7APn8vgD+/MAA/vzCAP78xAD+/MYA3vvIAEsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+fAAj9rgCR/K8A+/2xAP79swD+/bUA/vy4APL8uABp5bIACvy+AGf8wAD5/MIA/vzEAP78xgD+/MgA/vzLAOP/ywA7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/qgAY/LEAu/yzAP79tQD+/bcA//25AP79vADt/L0AWf7GAAn9wgCC/MQA9PzGAP78yAD+/MoA/vvMAP78zgC0/tIAFwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/7UAJv21AMj9twD+/bkA//y7AP78vQD+/MAA7fzDAGb+wgAV/cYAg/vHAPr8ygD++8wA/vvOAP770AD5+tIAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+zACX8uQDY/bsA//y+AP78wAD+/MIA/vzEAPD8xwBl/sYACfrLAGz7zQD6+84A/vvQAP770gD++tUA9fnXAC0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/vABR/L4A5fy/AP78wgD+/MQA/vzGAP77xwDs/MwAVf7iAAn9zwCV+tAA/fvSAP771QD++9cA/vzZALP/zAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/vwAE/L8AYPzCAO/8xAD+/MYA/vzIAP78ygD+/M0A6/zQAHP70gCl+tMA+/vUAP771wD++9kA/vvbAOz62gA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/38AAvvAAE38xgDx/MgA/vzKAP78zAD++84A/vvQAPn60wD6+9UA/vvXAP/72QD++9sA/vveAPv43gB8/38AAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP+qAAP8ygBq/MoA6vzMAP77zgD/+9AA/vvSAP771AD++9cA/vvZAP772wD++90A/vrfAP764gCw/uIAEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/1AAG+ckAW/zOANT70AD++9IA//vVAP771wD++9kA/vvbAP773QD++98A/vrhAP764wDY9+cAIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAf/MAB770wCp+9UA+vvXAP772QD++9sA/vvdAP773wD++uEA/vrjAP765gD2+ecALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/1AAG/NYAXvvaAND62wDy+90A/frfAP764QD++uMA/vrlAP765wD++ugAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP/YABT53ABg++AAn/nfANX65AD3+uUA/vrnAP766gD6+usAMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/98ACPLaABX45QAo++cATfnnAGL45wBN5+cACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA== mediatype: image/png install: spec: @@ -102,10 +125,11 @@ spec: - supported: true type: AllNamespaces keywords: + - artifact - edp + - kuberocketci - nexus - operator - - artifact - storage links: - name: Nexus Operator @@ -116,6 +140,6 @@ spec: maturity: stable minKubeVersion: 1.20.0 provider: - name: EPAM Delivery Platform - url: https://epam.github.io/edp-install/ - version: 3.2.0 + name: KubeRocketCI + url: https://docs.kuberocketci.io + version: 3.3.0 diff --git a/deploy-templates/README.md b/deploy-templates/README.md index 50a206d..2b3509f 100644 --- a/deploy-templates/README.md +++ b/deploy-templates/README.md @@ -32,7 +32,7 @@ In order to install the Nexus operator, follow the steps below: ```bash helm search repo epamedp/nexus-operator -l NAME CHART VERSION APP VERSION DESCRIPTION - epamedp/nexus-operator 3.2.0 3.2.0 A Helm chart for KRCI Nexus Operator + epamedp/nexus-operator 3.3.0 3.3.0 A Helm chart for KRCI Nexus Operator ``` _**NOTE:** It is highly recommended to use the latest released version._ diff --git a/deploy-templates/README.md.gotmpl b/deploy-templates/README.md.gotmpl index b46f4a8..f15a3ec 100644 --- a/deploy-templates/README.md.gotmpl +++ b/deploy-templates/README.md.gotmpl @@ -33,7 +33,7 @@ In order to install the Nexus operator, follow the steps below: ```bash helm search repo epamedp/nexus-operator -l NAME CHART VERSION APP VERSION DESCRIPTION - epamedp/nexus-operator 3.2.0 3.2.0 A Helm chart for KRCI Nexus Operator + epamedp/nexus-operator 3.3.0 3.3.0 A Helm chart for KRCI Nexus Operator ``` _**NOTE:** It is highly recommended to use the latest released version._