OBS-URL: https://build.opensuse.org/package/show/devel:kubic/flux2-cli?expand=0&rev=48
4076 lines
184 KiB
YAML
4076 lines
184 KiB
YAML
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.19.0
|
|
name: buckets.source.toolkit.fluxcd.io
|
|
spec:
|
|
group: source.toolkit.fluxcd.io
|
|
names:
|
|
kind: Bucket
|
|
listKind: BucketList
|
|
plural: buckets
|
|
singular: bucket
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.endpoint
|
|
name: Endpoint
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
name: v1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: Bucket is the Schema for the buckets 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: |-
|
|
BucketSpec specifies the required configuration to produce an Artifact for
|
|
an object storage bucket.
|
|
properties:
|
|
bucketName:
|
|
description: BucketName is the name of the object storage bucket.
|
|
type: string
|
|
certSecretRef:
|
|
description: |-
|
|
CertSecretRef can be given the name of a Secret containing
|
|
either or both of
|
|
|
|
- a PEM-encoded client certificate (`tls.crt`) and private
|
|
key (`tls.key`);
|
|
- a PEM-encoded CA certificate (`ca.crt`)
|
|
|
|
and whichever are supplied, will be used for connecting to the
|
|
bucket. The client cert and key are useful if you are
|
|
authenticating with a certificate; the CA cert is useful if
|
|
you are using a self-signed server certificate. The Secret must
|
|
be of type `Opaque` or `kubernetes.io/tls`.
|
|
|
|
This field is only supported for the `generic` provider.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
endpoint:
|
|
description: Endpoint is the object storage address the BucketName
|
|
is located at.
|
|
type: string
|
|
ignore:
|
|
description: |-
|
|
Ignore overrides the set of excluded patterns in the .sourceignore format
|
|
(which is the same as .gitignore). If not provided, a default will be used,
|
|
consult the documentation for your version to find out what those are.
|
|
type: string
|
|
insecure:
|
|
description: Insecure allows connecting to a non-TLS HTTP Endpoint.
|
|
type: boolean
|
|
interval:
|
|
description: |-
|
|
Interval at which the Bucket Endpoint is checked for updates.
|
|
This interval is approximate and may be subject to jitter to ensure
|
|
efficient use of resources.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
prefix:
|
|
description: Prefix to use for server-side filtering of files in the
|
|
Bucket.
|
|
type: string
|
|
provider:
|
|
default: generic
|
|
description: |-
|
|
Provider of the object storage bucket.
|
|
Defaults to 'generic', which expects an S3 (API) compatible object
|
|
storage.
|
|
enum:
|
|
- generic
|
|
- aws
|
|
- gcp
|
|
- azure
|
|
type: string
|
|
proxySecretRef:
|
|
description: |-
|
|
ProxySecretRef specifies the Secret containing the proxy configuration
|
|
to use while communicating with the Bucket server.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
region:
|
|
description: Region of the Endpoint where the BucketName is located
|
|
in.
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing authentication credentials
|
|
for the Bucket.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
serviceAccountName:
|
|
description: |-
|
|
ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate
|
|
the bucket. This field is only supported for the 'gcp' and 'aws' providers.
|
|
For more information about workload identity:
|
|
https://fluxcd.io/flux/components/source/buckets/#workload-identity
|
|
type: string
|
|
sts:
|
|
description: |-
|
|
STS specifies the required configuration to use a Security Token
|
|
Service for fetching temporary credentials to authenticate in a
|
|
Bucket provider.
|
|
|
|
This field is only supported for the `aws` and `generic` providers.
|
|
properties:
|
|
certSecretRef:
|
|
description: |-
|
|
CertSecretRef can be given the name of a Secret containing
|
|
either or both of
|
|
|
|
- a PEM-encoded client certificate (`tls.crt`) and private
|
|
key (`tls.key`);
|
|
- a PEM-encoded CA certificate (`ca.crt`)
|
|
|
|
and whichever are supplied, will be used for connecting to the
|
|
STS endpoint. The client cert and key are useful if you are
|
|
authenticating with a certificate; the CA cert is useful if
|
|
you are using a self-signed server certificate. The Secret must
|
|
be of type `Opaque` or `kubernetes.io/tls`.
|
|
|
|
This field is only supported for the `ldap` provider.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
endpoint:
|
|
description: |-
|
|
Endpoint is the HTTP/S endpoint of the Security Token Service from
|
|
where temporary credentials will be fetched.
|
|
pattern: ^(http|https)://.*$
|
|
type: string
|
|
provider:
|
|
description: Provider of the Security Token Service.
|
|
enum:
|
|
- aws
|
|
- ldap
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing authentication credentials
|
|
for the STS endpoint. This Secret must contain the fields `username`
|
|
and `password` and is supported only for the `ldap` provider.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
required:
|
|
- endpoint
|
|
- provider
|
|
type: object
|
|
suspend:
|
|
description: |-
|
|
Suspend tells the controller to suspend the reconciliation of this
|
|
Bucket.
|
|
type: boolean
|
|
timeout:
|
|
default: 60s
|
|
description: Timeout for fetch operations, defaults to 60s.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
|
|
type: string
|
|
required:
|
|
- bucketName
|
|
- endpoint
|
|
- interval
|
|
type: object
|
|
x-kubernetes-validations:
|
|
- message: STS configuration is only supported for the 'aws' and 'generic'
|
|
Bucket providers
|
|
rule: self.provider == 'aws' || self.provider == 'generic' || !has(self.sts)
|
|
- message: '''aws'' is the only supported STS provider for the ''aws''
|
|
Bucket provider'
|
|
rule: self.provider != 'aws' || !has(self.sts) || self.sts.provider
|
|
== 'aws'
|
|
- message: '''ldap'' is the only supported STS provider for the ''generic''
|
|
Bucket provider'
|
|
rule: self.provider != 'generic' || !has(self.sts) || self.sts.provider
|
|
== 'ldap'
|
|
- message: spec.sts.secretRef is not required for the 'aws' STS provider
|
|
rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.secretRef)'
|
|
- message: spec.sts.certSecretRef is not required for the 'aws' STS provider
|
|
rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.certSecretRef)'
|
|
- message: ServiceAccountName is not supported for the 'generic' Bucket
|
|
provider
|
|
rule: self.provider != 'generic' || !has(self.serviceAccountName)
|
|
- message: cannot set both .spec.secretRef and .spec.serviceAccountName
|
|
rule: '!has(self.secretRef) || !has(self.serviceAccountName)'
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: BucketStatus records the observed state of a Bucket.
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the last successful Bucket reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the Bucket.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedGeneration:
|
|
description: ObservedGeneration is the last observed generation of
|
|
the Bucket object.
|
|
format: int64
|
|
type: integer
|
|
observedIgnore:
|
|
description: |-
|
|
ObservedIgnore is the observed exclusion patterns used for constructing
|
|
the source artifact.
|
|
type: string
|
|
url:
|
|
description: |-
|
|
URL is the dynamic fetch link for the latest Artifact.
|
|
It is provided on a "best effort" basis, and using the precise
|
|
BucketStatus.Artifact data is recommended.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.endpoint
|
|
name: Endpoint
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
deprecated: true
|
|
deprecationWarning: v1beta2 Bucket is deprecated, upgrade to v1
|
|
name: v1beta2
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: Bucket is the Schema for the buckets 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: |-
|
|
BucketSpec specifies the required configuration to produce an Artifact for
|
|
an object storage bucket.
|
|
properties:
|
|
accessFrom:
|
|
description: |-
|
|
AccessFrom specifies an Access Control List for allowing cross-namespace
|
|
references to this object.
|
|
NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092
|
|
properties:
|
|
namespaceSelectors:
|
|
description: |-
|
|
NamespaceSelectors is the list of namespace selectors to which this ACL applies.
|
|
Items in this list are evaluated using a logical OR operation.
|
|
items:
|
|
description: |-
|
|
NamespaceSelector selects the namespaces to which this ACL applies.
|
|
An empty map of MatchLabels matches all namespaces in a cluster.
|
|
properties:
|
|
matchLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: |-
|
|
MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
|
|
map is equivalent to an element of matchExpressions, whose key field is "key", the
|
|
operator is "In", and the values array contains only "value". The requirements are ANDed.
|
|
type: object
|
|
type: object
|
|
type: array
|
|
required:
|
|
- namespaceSelectors
|
|
type: object
|
|
bucketName:
|
|
description: BucketName is the name of the object storage bucket.
|
|
type: string
|
|
certSecretRef:
|
|
description: |-
|
|
CertSecretRef can be given the name of a Secret containing
|
|
either or both of
|
|
|
|
- a PEM-encoded client certificate (`tls.crt`) and private
|
|
key (`tls.key`);
|
|
- a PEM-encoded CA certificate (`ca.crt`)
|
|
|
|
and whichever are supplied, will be used for connecting to the
|
|
bucket. The client cert and key are useful if you are
|
|
authenticating with a certificate; the CA cert is useful if
|
|
you are using a self-signed server certificate. The Secret must
|
|
be of type `Opaque` or `kubernetes.io/tls`.
|
|
|
|
This field is only supported for the `generic` provider.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
endpoint:
|
|
description: Endpoint is the object storage address the BucketName
|
|
is located at.
|
|
type: string
|
|
ignore:
|
|
description: |-
|
|
Ignore overrides the set of excluded patterns in the .sourceignore format
|
|
(which is the same as .gitignore). If not provided, a default will be used,
|
|
consult the documentation for your version to find out what those are.
|
|
type: string
|
|
insecure:
|
|
description: Insecure allows connecting to a non-TLS HTTP Endpoint.
|
|
type: boolean
|
|
interval:
|
|
description: |-
|
|
Interval at which the Bucket Endpoint is checked for updates.
|
|
This interval is approximate and may be subject to jitter to ensure
|
|
efficient use of resources.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
prefix:
|
|
description: Prefix to use for server-side filtering of files in the
|
|
Bucket.
|
|
type: string
|
|
provider:
|
|
default: generic
|
|
description: |-
|
|
Provider of the object storage bucket.
|
|
Defaults to 'generic', which expects an S3 (API) compatible object
|
|
storage.
|
|
enum:
|
|
- generic
|
|
- aws
|
|
- gcp
|
|
- azure
|
|
type: string
|
|
proxySecretRef:
|
|
description: |-
|
|
ProxySecretRef specifies the Secret containing the proxy configuration
|
|
to use while communicating with the Bucket server.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
region:
|
|
description: Region of the Endpoint where the BucketName is located
|
|
in.
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing authentication credentials
|
|
for the Bucket.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
sts:
|
|
description: |-
|
|
STS specifies the required configuration to use a Security Token
|
|
Service for fetching temporary credentials to authenticate in a
|
|
Bucket provider.
|
|
|
|
This field is only supported for the `aws` and `generic` providers.
|
|
properties:
|
|
certSecretRef:
|
|
description: |-
|
|
CertSecretRef can be given the name of a Secret containing
|
|
either or both of
|
|
|
|
- a PEM-encoded client certificate (`tls.crt`) and private
|
|
key (`tls.key`);
|
|
- a PEM-encoded CA certificate (`ca.crt`)
|
|
|
|
and whichever are supplied, will be used for connecting to the
|
|
STS endpoint. The client cert and key are useful if you are
|
|
authenticating with a certificate; the CA cert is useful if
|
|
you are using a self-signed server certificate. The Secret must
|
|
be of type `Opaque` or `kubernetes.io/tls`.
|
|
|
|
This field is only supported for the `ldap` provider.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
endpoint:
|
|
description: |-
|
|
Endpoint is the HTTP/S endpoint of the Security Token Service from
|
|
where temporary credentials will be fetched.
|
|
pattern: ^(http|https)://.*$
|
|
type: string
|
|
provider:
|
|
description: Provider of the Security Token Service.
|
|
enum:
|
|
- aws
|
|
- ldap
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing authentication credentials
|
|
for the STS endpoint. This Secret must contain the fields `username`
|
|
and `password` and is supported only for the `ldap` provider.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
required:
|
|
- endpoint
|
|
- provider
|
|
type: object
|
|
suspend:
|
|
description: |-
|
|
Suspend tells the controller to suspend the reconciliation of this
|
|
Bucket.
|
|
type: boolean
|
|
timeout:
|
|
default: 60s
|
|
description: Timeout for fetch operations, defaults to 60s.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
|
|
type: string
|
|
required:
|
|
- bucketName
|
|
- endpoint
|
|
- interval
|
|
type: object
|
|
x-kubernetes-validations:
|
|
- message: STS configuration is only supported for the 'aws' and 'generic'
|
|
Bucket providers
|
|
rule: self.provider == 'aws' || self.provider == 'generic' || !has(self.sts)
|
|
- message: '''aws'' is the only supported STS provider for the ''aws''
|
|
Bucket provider'
|
|
rule: self.provider != 'aws' || !has(self.sts) || self.sts.provider
|
|
== 'aws'
|
|
- message: '''ldap'' is the only supported STS provider for the ''generic''
|
|
Bucket provider'
|
|
rule: self.provider != 'generic' || !has(self.sts) || self.sts.provider
|
|
== 'ldap'
|
|
- message: spec.sts.secretRef is not required for the 'aws' STS provider
|
|
rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.secretRef)'
|
|
- message: spec.sts.certSecretRef is not required for the 'aws' STS provider
|
|
rule: '!has(self.sts) || self.sts.provider != ''aws'' || !has(self.sts.certSecretRef)'
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: BucketStatus records the observed state of a Bucket.
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the last successful Bucket reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the Bucket.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedGeneration:
|
|
description: ObservedGeneration is the last observed generation of
|
|
the Bucket object.
|
|
format: int64
|
|
type: integer
|
|
observedIgnore:
|
|
description: |-
|
|
ObservedIgnore is the observed exclusion patterns used for constructing
|
|
the source artifact.
|
|
type: string
|
|
url:
|
|
description: |-
|
|
URL is the dynamic fetch link for the latest Artifact.
|
|
It is provided on a "best effort" basis, and using the precise
|
|
BucketStatus.Artifact data is recommended.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: false
|
|
subresources:
|
|
status: {}
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.19.0
|
|
name: externalartifacts.source.toolkit.fluxcd.io
|
|
spec:
|
|
group: source.toolkit.fluxcd.io
|
|
names:
|
|
kind: ExternalArtifact
|
|
listKind: ExternalArtifactList
|
|
plural: externalartifacts
|
|
singular: externalartifact
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
- jsonPath: .spec.sourceRef.name
|
|
name: Source
|
|
type: string
|
|
name: v1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: ExternalArtifact is the Schema for the external artifacts 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: ExternalArtifactSpec defines the desired state of ExternalArtifact
|
|
properties:
|
|
sourceRef:
|
|
description: |-
|
|
SourceRef points to the Kubernetes custom resource for
|
|
which the artifact is generated.
|
|
properties:
|
|
apiVersion:
|
|
description: API version of the referent, if not specified the
|
|
Kubernetes preferred version will be used.
|
|
type: string
|
|
kind:
|
|
description: Kind of the referent.
|
|
type: string
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
namespace:
|
|
description: Namespace of the referent, when not specified it
|
|
acts as LocalObjectReference.
|
|
type: string
|
|
required:
|
|
- kind
|
|
- name
|
|
type: object
|
|
type: object
|
|
status:
|
|
description: ExternalArtifactStatus defines the observed state of ExternalArtifact
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the output of an ExternalArtifact
|
|
reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the ExternalArtifact.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.19.0
|
|
name: gitrepositories.source.toolkit.fluxcd.io
|
|
spec:
|
|
group: source.toolkit.fluxcd.io
|
|
names:
|
|
kind: GitRepository
|
|
listKind: GitRepositoryList
|
|
plural: gitrepositories
|
|
shortNames:
|
|
- gitrepo
|
|
singular: gitrepository
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.url
|
|
name: URL
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
name: v1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: GitRepository is the Schema for the gitrepositories 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: |-
|
|
GitRepositorySpec specifies the required configuration to produce an
|
|
Artifact for a Git repository.
|
|
properties:
|
|
ignore:
|
|
description: |-
|
|
Ignore overrides the set of excluded patterns in the .sourceignore format
|
|
(which is the same as .gitignore). If not provided, a default will be used,
|
|
consult the documentation for your version to find out what those are.
|
|
type: string
|
|
include:
|
|
description: |-
|
|
Include specifies a list of GitRepository resources which Artifacts
|
|
should be included in the Artifact produced for this GitRepository.
|
|
items:
|
|
description: |-
|
|
GitRepositoryInclude specifies a local reference to a GitRepository which
|
|
Artifact (sub-)contents must be included, and where they should be placed.
|
|
properties:
|
|
fromPath:
|
|
description: |-
|
|
FromPath specifies the path to copy contents from, defaults to the root
|
|
of the Artifact.
|
|
type: string
|
|
repository:
|
|
description: |-
|
|
GitRepositoryRef specifies the GitRepository which Artifact contents
|
|
must be included.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
toPath:
|
|
description: |-
|
|
ToPath specifies the path to copy contents to, defaults to the name of
|
|
the GitRepositoryRef.
|
|
type: string
|
|
required:
|
|
- repository
|
|
type: object
|
|
type: array
|
|
interval:
|
|
description: |-
|
|
Interval at which the GitRepository URL is checked for updates.
|
|
This interval is approximate and may be subject to jitter to ensure
|
|
efficient use of resources.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
provider:
|
|
description: |-
|
|
Provider used for authentication, can be 'azure', 'github', 'generic'.
|
|
When not specified, defaults to 'generic'.
|
|
enum:
|
|
- generic
|
|
- azure
|
|
- github
|
|
type: string
|
|
proxySecretRef:
|
|
description: |-
|
|
ProxySecretRef specifies the Secret containing the proxy configuration
|
|
to use while communicating with the Git server.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
recurseSubmodules:
|
|
description: |-
|
|
RecurseSubmodules enables the initialization of all submodules within
|
|
the GitRepository as cloned from the URL, using their default settings.
|
|
type: boolean
|
|
ref:
|
|
description: |-
|
|
Reference specifies the Git reference to resolve and monitor for
|
|
changes, defaults to the 'master' branch.
|
|
properties:
|
|
branch:
|
|
description: Branch to check out, defaults to 'master' if no other
|
|
field is defined.
|
|
type: string
|
|
commit:
|
|
description: |-
|
|
Commit SHA to check out, takes precedence over all reference fields.
|
|
|
|
This can be combined with Branch to shallow clone the branch, in which
|
|
the commit is expected to exist.
|
|
type: string
|
|
name:
|
|
description: |-
|
|
Name of the reference to check out; takes precedence over Branch, Tag and SemVer.
|
|
|
|
It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description
|
|
Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head"
|
|
type: string
|
|
semver:
|
|
description: SemVer tag expression to check out, takes precedence
|
|
over Tag.
|
|
type: string
|
|
tag:
|
|
description: Tag to check out, takes precedence over Branch.
|
|
type: string
|
|
type: object
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing authentication credentials for
|
|
the GitRepository.
|
|
For HTTPS repositories the Secret must contain 'username' and 'password'
|
|
fields for basic auth or 'bearerToken' field for token auth.
|
|
For SSH repositories the Secret must contain 'identity'
|
|
and 'known_hosts' fields.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
serviceAccountName:
|
|
description: |-
|
|
ServiceAccountName is the name of the Kubernetes ServiceAccount used to
|
|
authenticate to the GitRepository. This field is only supported for 'azure' provider.
|
|
type: string
|
|
sparseCheckout:
|
|
description: |-
|
|
SparseCheckout specifies a list of directories to checkout when cloning
|
|
the repository. If specified, only these directories are included in the
|
|
Artifact produced for this GitRepository.
|
|
items:
|
|
type: string
|
|
type: array
|
|
suspend:
|
|
description: |-
|
|
Suspend tells the controller to suspend the reconciliation of this
|
|
GitRepository.
|
|
type: boolean
|
|
timeout:
|
|
default: 60s
|
|
description: Timeout for Git operations like cloning, defaults to
|
|
60s.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
|
|
type: string
|
|
url:
|
|
description: URL specifies the Git repository URL, it can be an HTTP/S
|
|
or SSH address.
|
|
pattern: ^(http|https|ssh)://.*$
|
|
type: string
|
|
verify:
|
|
description: |-
|
|
Verification specifies the configuration to verify the Git commit
|
|
signature(s).
|
|
properties:
|
|
mode:
|
|
default: HEAD
|
|
description: |-
|
|
Mode specifies which Git object(s) should be verified.
|
|
|
|
The variants "head" and "HEAD" both imply the same thing, i.e. verify
|
|
the commit that the HEAD of the Git repository points to. The variant
|
|
"head" solely exists to ensure backwards compatibility.
|
|
enum:
|
|
- head
|
|
- HEAD
|
|
- Tag
|
|
- TagAndHEAD
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing the public keys of trusted Git
|
|
authors.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
required:
|
|
- secretRef
|
|
type: object
|
|
required:
|
|
- interval
|
|
- url
|
|
type: object
|
|
x-kubernetes-validations:
|
|
- message: serviceAccountName can only be set when provider is 'azure'
|
|
rule: '!has(self.serviceAccountName) || (has(self.provider) && self.provider
|
|
== ''azure'')'
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: GitRepositoryStatus records the observed state of a Git repository.
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the last successful GitRepository
|
|
reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the GitRepository.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
includedArtifacts:
|
|
description: |-
|
|
IncludedArtifacts contains a list of the last successfully included
|
|
Artifacts as instructed by GitRepositorySpec.Include.
|
|
items:
|
|
description: Artifact represents the output of a Source reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of
|
|
'<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI
|
|
annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
type: array
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
ObservedGeneration is the last observed generation of the GitRepository
|
|
object.
|
|
format: int64
|
|
type: integer
|
|
observedIgnore:
|
|
description: |-
|
|
ObservedIgnore is the observed exclusion patterns used for constructing
|
|
the source artifact.
|
|
type: string
|
|
observedInclude:
|
|
description: |-
|
|
ObservedInclude is the observed list of GitRepository resources used to
|
|
produce the current Artifact.
|
|
items:
|
|
description: |-
|
|
GitRepositoryInclude specifies a local reference to a GitRepository which
|
|
Artifact (sub-)contents must be included, and where they should be placed.
|
|
properties:
|
|
fromPath:
|
|
description: |-
|
|
FromPath specifies the path to copy contents from, defaults to the root
|
|
of the Artifact.
|
|
type: string
|
|
repository:
|
|
description: |-
|
|
GitRepositoryRef specifies the GitRepository which Artifact contents
|
|
must be included.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
toPath:
|
|
description: |-
|
|
ToPath specifies the path to copy contents to, defaults to the name of
|
|
the GitRepositoryRef.
|
|
type: string
|
|
required:
|
|
- repository
|
|
type: object
|
|
type: array
|
|
observedRecurseSubmodules:
|
|
description: |-
|
|
ObservedRecurseSubmodules is the observed resource submodules
|
|
configuration used to produce the current Artifact.
|
|
type: boolean
|
|
observedSparseCheckout:
|
|
description: |-
|
|
ObservedSparseCheckout is the observed list of directories used to
|
|
produce the current Artifact.
|
|
items:
|
|
type: string
|
|
type: array
|
|
sourceVerificationMode:
|
|
description: |-
|
|
SourceVerificationMode is the last used verification mode indicating
|
|
which Git object(s) have been verified.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.url
|
|
name: URL
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
deprecated: true
|
|
deprecationWarning: v1beta2 GitRepository is deprecated, upgrade to v1
|
|
name: v1beta2
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: GitRepository is the Schema for the gitrepositories 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: |-
|
|
GitRepositorySpec specifies the required configuration to produce an
|
|
Artifact for a Git repository.
|
|
properties:
|
|
accessFrom:
|
|
description: |-
|
|
AccessFrom specifies an Access Control List for allowing cross-namespace
|
|
references to this object.
|
|
NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092
|
|
properties:
|
|
namespaceSelectors:
|
|
description: |-
|
|
NamespaceSelectors is the list of namespace selectors to which this ACL applies.
|
|
Items in this list are evaluated using a logical OR operation.
|
|
items:
|
|
description: |-
|
|
NamespaceSelector selects the namespaces to which this ACL applies.
|
|
An empty map of MatchLabels matches all namespaces in a cluster.
|
|
properties:
|
|
matchLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: |-
|
|
MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
|
|
map is equivalent to an element of matchExpressions, whose key field is "key", the
|
|
operator is "In", and the values array contains only "value". The requirements are ANDed.
|
|
type: object
|
|
type: object
|
|
type: array
|
|
required:
|
|
- namespaceSelectors
|
|
type: object
|
|
gitImplementation:
|
|
default: go-git
|
|
description: |-
|
|
GitImplementation specifies which Git client library implementation to
|
|
use. Defaults to 'go-git', valid values are ('go-git', 'libgit2').
|
|
Deprecated: gitImplementation is deprecated now that 'go-git' is the
|
|
only supported implementation.
|
|
enum:
|
|
- go-git
|
|
- libgit2
|
|
type: string
|
|
ignore:
|
|
description: |-
|
|
Ignore overrides the set of excluded patterns in the .sourceignore format
|
|
(which is the same as .gitignore). If not provided, a default will be used,
|
|
consult the documentation for your version to find out what those are.
|
|
type: string
|
|
include:
|
|
description: |-
|
|
Include specifies a list of GitRepository resources which Artifacts
|
|
should be included in the Artifact produced for this GitRepository.
|
|
items:
|
|
description: |-
|
|
GitRepositoryInclude specifies a local reference to a GitRepository which
|
|
Artifact (sub-)contents must be included, and where they should be placed.
|
|
properties:
|
|
fromPath:
|
|
description: |-
|
|
FromPath specifies the path to copy contents from, defaults to the root
|
|
of the Artifact.
|
|
type: string
|
|
repository:
|
|
description: |-
|
|
GitRepositoryRef specifies the GitRepository which Artifact contents
|
|
must be included.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
toPath:
|
|
description: |-
|
|
ToPath specifies the path to copy contents to, defaults to the name of
|
|
the GitRepositoryRef.
|
|
type: string
|
|
required:
|
|
- repository
|
|
type: object
|
|
type: array
|
|
interval:
|
|
description: Interval at which to check the GitRepository for updates.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
recurseSubmodules:
|
|
description: |-
|
|
RecurseSubmodules enables the initialization of all submodules within
|
|
the GitRepository as cloned from the URL, using their default settings.
|
|
type: boolean
|
|
ref:
|
|
description: |-
|
|
Reference specifies the Git reference to resolve and monitor for
|
|
changes, defaults to the 'master' branch.
|
|
properties:
|
|
branch:
|
|
description: Branch to check out, defaults to 'master' if no other
|
|
field is defined.
|
|
type: string
|
|
commit:
|
|
description: |-
|
|
Commit SHA to check out, takes precedence over all reference fields.
|
|
|
|
This can be combined with Branch to shallow clone the branch, in which
|
|
the commit is expected to exist.
|
|
type: string
|
|
name:
|
|
description: |-
|
|
Name of the reference to check out; takes precedence over Branch, Tag and SemVer.
|
|
|
|
It must be a valid Git reference: https://git-scm.com/docs/git-check-ref-format#_description
|
|
Examples: "refs/heads/main", "refs/tags/v0.1.0", "refs/pull/420/head", "refs/merge-requests/1/head"
|
|
type: string
|
|
semver:
|
|
description: SemVer tag expression to check out, takes precedence
|
|
over Tag.
|
|
type: string
|
|
tag:
|
|
description: Tag to check out, takes precedence over Branch.
|
|
type: string
|
|
type: object
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing authentication credentials for
|
|
the GitRepository.
|
|
For HTTPS repositories the Secret must contain 'username' and 'password'
|
|
fields for basic auth or 'bearerToken' field for token auth.
|
|
For SSH repositories the Secret must contain 'identity'
|
|
and 'known_hosts' fields.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
suspend:
|
|
description: |-
|
|
Suspend tells the controller to suspend the reconciliation of this
|
|
GitRepository.
|
|
type: boolean
|
|
timeout:
|
|
default: 60s
|
|
description: Timeout for Git operations like cloning, defaults to
|
|
60s.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
|
|
type: string
|
|
url:
|
|
description: URL specifies the Git repository URL, it can be an HTTP/S
|
|
or SSH address.
|
|
pattern: ^(http|https|ssh)://.*$
|
|
type: string
|
|
verify:
|
|
description: |-
|
|
Verification specifies the configuration to verify the Git commit
|
|
signature(s).
|
|
properties:
|
|
mode:
|
|
description: Mode specifies what Git object should be verified,
|
|
currently ('head').
|
|
enum:
|
|
- head
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing the public keys of trusted Git
|
|
authors.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
required:
|
|
- mode
|
|
- secretRef
|
|
type: object
|
|
required:
|
|
- interval
|
|
- url
|
|
type: object
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: GitRepositoryStatus records the observed state of a Git repository.
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the last successful GitRepository
|
|
reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the GitRepository.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
contentConfigChecksum:
|
|
description: |-
|
|
ContentConfigChecksum is a checksum of all the configurations related to
|
|
the content of the source artifact:
|
|
- .spec.ignore
|
|
- .spec.recurseSubmodules
|
|
- .spec.included and the checksum of the included artifacts
|
|
observed in .status.observedGeneration version of the object. This can
|
|
be used to determine if the content of the included repository has
|
|
changed.
|
|
It has the format of `<algo>:<checksum>`, for example: `sha256:<checksum>`.
|
|
|
|
Deprecated: Replaced with explicit fields for observed artifact content
|
|
config in the status.
|
|
type: string
|
|
includedArtifacts:
|
|
description: |-
|
|
IncludedArtifacts contains a list of the last successfully included
|
|
Artifacts as instructed by GitRepositorySpec.Include.
|
|
items:
|
|
description: Artifact represents the output of a Source reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of
|
|
'<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI
|
|
annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
type: array
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
ObservedGeneration is the last observed generation of the GitRepository
|
|
object.
|
|
format: int64
|
|
type: integer
|
|
observedIgnore:
|
|
description: |-
|
|
ObservedIgnore is the observed exclusion patterns used for constructing
|
|
the source artifact.
|
|
type: string
|
|
observedInclude:
|
|
description: |-
|
|
ObservedInclude is the observed list of GitRepository resources used to
|
|
to produce the current Artifact.
|
|
items:
|
|
description: |-
|
|
GitRepositoryInclude specifies a local reference to a GitRepository which
|
|
Artifact (sub-)contents must be included, and where they should be placed.
|
|
properties:
|
|
fromPath:
|
|
description: |-
|
|
FromPath specifies the path to copy contents from, defaults to the root
|
|
of the Artifact.
|
|
type: string
|
|
repository:
|
|
description: |-
|
|
GitRepositoryRef specifies the GitRepository which Artifact contents
|
|
must be included.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
toPath:
|
|
description: |-
|
|
ToPath specifies the path to copy contents to, defaults to the name of
|
|
the GitRepositoryRef.
|
|
type: string
|
|
required:
|
|
- repository
|
|
type: object
|
|
type: array
|
|
observedRecurseSubmodules:
|
|
description: |-
|
|
ObservedRecurseSubmodules is the observed resource submodules
|
|
configuration used to produce the current Artifact.
|
|
type: boolean
|
|
url:
|
|
description: |-
|
|
URL is the dynamic fetch link for the latest Artifact.
|
|
It is provided on a "best effort" basis, and using the precise
|
|
GitRepositoryStatus.Artifact data is recommended.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: false
|
|
subresources:
|
|
status: {}
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.19.0
|
|
name: helmcharts.source.toolkit.fluxcd.io
|
|
spec:
|
|
group: source.toolkit.fluxcd.io
|
|
names:
|
|
kind: HelmChart
|
|
listKind: HelmChartList
|
|
plural: helmcharts
|
|
shortNames:
|
|
- hc
|
|
singular: helmchart
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.chart
|
|
name: Chart
|
|
type: string
|
|
- jsonPath: .spec.version
|
|
name: Version
|
|
type: string
|
|
- jsonPath: .spec.sourceRef.kind
|
|
name: Source Kind
|
|
type: string
|
|
- jsonPath: .spec.sourceRef.name
|
|
name: Source Name
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
name: v1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: HelmChart is the Schema for the helmcharts 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: HelmChartSpec specifies the desired state of a Helm chart.
|
|
properties:
|
|
chart:
|
|
description: |-
|
|
Chart is the name or path the Helm chart is available at in the
|
|
SourceRef.
|
|
type: string
|
|
ignoreMissingValuesFiles:
|
|
description: |-
|
|
IgnoreMissingValuesFiles controls whether to silently ignore missing values
|
|
files rather than failing.
|
|
type: boolean
|
|
interval:
|
|
description: |-
|
|
Interval at which the HelmChart SourceRef is checked for updates.
|
|
This interval is approximate and may be subject to jitter to ensure
|
|
efficient use of resources.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
reconcileStrategy:
|
|
default: ChartVersion
|
|
description: |-
|
|
ReconcileStrategy determines what enables the creation of a new artifact.
|
|
Valid values are ('ChartVersion', 'Revision').
|
|
See the documentation of the values for an explanation on their behavior.
|
|
Defaults to ChartVersion when omitted.
|
|
enum:
|
|
- ChartVersion
|
|
- Revision
|
|
type: string
|
|
sourceRef:
|
|
description: SourceRef is the reference to the Source the chart is
|
|
available at.
|
|
properties:
|
|
apiVersion:
|
|
description: APIVersion of the referent.
|
|
type: string
|
|
kind:
|
|
description: |-
|
|
Kind of the referent, valid values are ('HelmRepository', 'GitRepository',
|
|
'Bucket').
|
|
enum:
|
|
- HelmRepository
|
|
- GitRepository
|
|
- Bucket
|
|
type: string
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- kind
|
|
- name
|
|
type: object
|
|
suspend:
|
|
description: |-
|
|
Suspend tells the controller to suspend the reconciliation of this
|
|
source.
|
|
type: boolean
|
|
valuesFiles:
|
|
description: |-
|
|
ValuesFiles is an alternative list of values files to use as the chart
|
|
values (values.yaml is not included by default), expected to be a
|
|
relative path in the SourceRef.
|
|
Values files are merged in the order of this list with the last file
|
|
overriding the first. Ignored when omitted.
|
|
items:
|
|
type: string
|
|
type: array
|
|
verify:
|
|
description: |-
|
|
Verify contains the secret name containing the trusted public keys
|
|
used to verify the signature and specifies which provider to use to check
|
|
whether OCI image is authentic.
|
|
This field is only supported when using HelmRepository source with spec.type 'oci'.
|
|
Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified.
|
|
properties:
|
|
matchOIDCIdentity:
|
|
description: |-
|
|
MatchOIDCIdentity specifies the identity matching criteria to use
|
|
while verifying an OCI artifact which was signed using Cosign keyless
|
|
signing. The artifact's identity is deemed to be verified if any of the
|
|
specified matchers match against the identity.
|
|
items:
|
|
description: |-
|
|
OIDCIdentityMatch specifies options for verifying the certificate identity,
|
|
i.e. the issuer and the subject of the certificate.
|
|
properties:
|
|
issuer:
|
|
description: |-
|
|
Issuer specifies the regex pattern to match against to verify
|
|
the OIDC issuer in the Fulcio certificate. The pattern must be a
|
|
valid Go regular expression.
|
|
type: string
|
|
subject:
|
|
description: |-
|
|
Subject specifies the regex pattern to match against to verify
|
|
the identity subject in the Fulcio certificate. The pattern must
|
|
be a valid Go regular expression.
|
|
type: string
|
|
required:
|
|
- issuer
|
|
- subject
|
|
type: object
|
|
type: array
|
|
provider:
|
|
default: cosign
|
|
description: Provider specifies the technology used to sign the
|
|
OCI Artifact.
|
|
enum:
|
|
- cosign
|
|
- notation
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Kubernetes Secret containing the
|
|
trusted public keys.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
required:
|
|
- provider
|
|
type: object
|
|
version:
|
|
default: '*'
|
|
description: |-
|
|
Version is the chart version semver expression, ignored for charts from
|
|
GitRepository and Bucket sources. Defaults to latest when omitted.
|
|
type: string
|
|
required:
|
|
- chart
|
|
- interval
|
|
- sourceRef
|
|
type: object
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: HelmChartStatus records the observed state of the HelmChart.
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the output of the last successful
|
|
reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the HelmChart.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedChartName:
|
|
description: |-
|
|
ObservedChartName is the last observed chart name as specified by the
|
|
resolved chart reference.
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
ObservedGeneration is the last observed generation of the HelmChart
|
|
object.
|
|
format: int64
|
|
type: integer
|
|
observedSourceArtifactRevision:
|
|
description: |-
|
|
ObservedSourceArtifactRevision is the last observed Artifact.Revision
|
|
of the HelmChartSpec.SourceRef.
|
|
type: string
|
|
observedValuesFiles:
|
|
description: |-
|
|
ObservedValuesFiles are the observed value files of the last successful
|
|
reconciliation.
|
|
It matches the chart in the last successfully reconciled artifact.
|
|
items:
|
|
type: string
|
|
type: array
|
|
url:
|
|
description: |-
|
|
URL is the dynamic fetch link for the latest Artifact.
|
|
It is provided on a "best effort" basis, and using the precise
|
|
BucketStatus.Artifact data is recommended.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.chart
|
|
name: Chart
|
|
type: string
|
|
- jsonPath: .spec.version
|
|
name: Version
|
|
type: string
|
|
- jsonPath: .spec.sourceRef.kind
|
|
name: Source Kind
|
|
type: string
|
|
- jsonPath: .spec.sourceRef.name
|
|
name: Source Name
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
deprecated: true
|
|
deprecationWarning: v1beta2 HelmChart is deprecated, upgrade to v1
|
|
name: v1beta2
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: HelmChart is the Schema for the helmcharts 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: HelmChartSpec specifies the desired state of a Helm chart.
|
|
properties:
|
|
accessFrom:
|
|
description: |-
|
|
AccessFrom specifies an Access Control List for allowing cross-namespace
|
|
references to this object.
|
|
NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092
|
|
properties:
|
|
namespaceSelectors:
|
|
description: |-
|
|
NamespaceSelectors is the list of namespace selectors to which this ACL applies.
|
|
Items in this list are evaluated using a logical OR operation.
|
|
items:
|
|
description: |-
|
|
NamespaceSelector selects the namespaces to which this ACL applies.
|
|
An empty map of MatchLabels matches all namespaces in a cluster.
|
|
properties:
|
|
matchLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: |-
|
|
MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
|
|
map is equivalent to an element of matchExpressions, whose key field is "key", the
|
|
operator is "In", and the values array contains only "value". The requirements are ANDed.
|
|
type: object
|
|
type: object
|
|
type: array
|
|
required:
|
|
- namespaceSelectors
|
|
type: object
|
|
chart:
|
|
description: |-
|
|
Chart is the name or path the Helm chart is available at in the
|
|
SourceRef.
|
|
type: string
|
|
ignoreMissingValuesFiles:
|
|
description: |-
|
|
IgnoreMissingValuesFiles controls whether to silently ignore missing values
|
|
files rather than failing.
|
|
type: boolean
|
|
interval:
|
|
description: |-
|
|
Interval at which the HelmChart SourceRef is checked for updates.
|
|
This interval is approximate and may be subject to jitter to ensure
|
|
efficient use of resources.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
reconcileStrategy:
|
|
default: ChartVersion
|
|
description: |-
|
|
ReconcileStrategy determines what enables the creation of a new artifact.
|
|
Valid values are ('ChartVersion', 'Revision').
|
|
See the documentation of the values for an explanation on their behavior.
|
|
Defaults to ChartVersion when omitted.
|
|
enum:
|
|
- ChartVersion
|
|
- Revision
|
|
type: string
|
|
sourceRef:
|
|
description: SourceRef is the reference to the Source the chart is
|
|
available at.
|
|
properties:
|
|
apiVersion:
|
|
description: APIVersion of the referent.
|
|
type: string
|
|
kind:
|
|
description: |-
|
|
Kind of the referent, valid values are ('HelmRepository', 'GitRepository',
|
|
'Bucket').
|
|
enum:
|
|
- HelmRepository
|
|
- GitRepository
|
|
- Bucket
|
|
type: string
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- kind
|
|
- name
|
|
type: object
|
|
suspend:
|
|
description: |-
|
|
Suspend tells the controller to suspend the reconciliation of this
|
|
source.
|
|
type: boolean
|
|
valuesFile:
|
|
description: |-
|
|
ValuesFile is an alternative values file to use as the default chart
|
|
values, expected to be a relative path in the SourceRef. Deprecated in
|
|
favor of ValuesFiles, for backwards compatibility the file specified here
|
|
is merged before the ValuesFiles items. Ignored when omitted.
|
|
type: string
|
|
valuesFiles:
|
|
description: |-
|
|
ValuesFiles is an alternative list of values files to use as the chart
|
|
values (values.yaml is not included by default), expected to be a
|
|
relative path in the SourceRef.
|
|
Values files are merged in the order of this list with the last file
|
|
overriding the first. Ignored when omitted.
|
|
items:
|
|
type: string
|
|
type: array
|
|
verify:
|
|
description: |-
|
|
Verify contains the secret name containing the trusted public keys
|
|
used to verify the signature and specifies which provider to use to check
|
|
whether OCI image is authentic.
|
|
This field is only supported when using HelmRepository source with spec.type 'oci'.
|
|
Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified.
|
|
properties:
|
|
matchOIDCIdentity:
|
|
description: |-
|
|
MatchOIDCIdentity specifies the identity matching criteria to use
|
|
while verifying an OCI artifact which was signed using Cosign keyless
|
|
signing. The artifact's identity is deemed to be verified if any of the
|
|
specified matchers match against the identity.
|
|
items:
|
|
description: |-
|
|
OIDCIdentityMatch specifies options for verifying the certificate identity,
|
|
i.e. the issuer and the subject of the certificate.
|
|
properties:
|
|
issuer:
|
|
description: |-
|
|
Issuer specifies the regex pattern to match against to verify
|
|
the OIDC issuer in the Fulcio certificate. The pattern must be a
|
|
valid Go regular expression.
|
|
type: string
|
|
subject:
|
|
description: |-
|
|
Subject specifies the regex pattern to match against to verify
|
|
the identity subject in the Fulcio certificate. The pattern must
|
|
be a valid Go regular expression.
|
|
type: string
|
|
required:
|
|
- issuer
|
|
- subject
|
|
type: object
|
|
type: array
|
|
provider:
|
|
default: cosign
|
|
description: Provider specifies the technology used to sign the
|
|
OCI Artifact.
|
|
enum:
|
|
- cosign
|
|
- notation
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Kubernetes Secret containing the
|
|
trusted public keys.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
required:
|
|
- provider
|
|
type: object
|
|
version:
|
|
default: '*'
|
|
description: |-
|
|
Version is the chart version semver expression, ignored for charts from
|
|
GitRepository and Bucket sources. Defaults to latest when omitted.
|
|
type: string
|
|
required:
|
|
- chart
|
|
- interval
|
|
- sourceRef
|
|
type: object
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: HelmChartStatus records the observed state of the HelmChart.
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the output of the last successful
|
|
reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the HelmChart.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedChartName:
|
|
description: |-
|
|
ObservedChartName is the last observed chart name as specified by the
|
|
resolved chart reference.
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
ObservedGeneration is the last observed generation of the HelmChart
|
|
object.
|
|
format: int64
|
|
type: integer
|
|
observedSourceArtifactRevision:
|
|
description: |-
|
|
ObservedSourceArtifactRevision is the last observed Artifact.Revision
|
|
of the HelmChartSpec.SourceRef.
|
|
type: string
|
|
observedValuesFiles:
|
|
description: |-
|
|
ObservedValuesFiles are the observed value files of the last successful
|
|
reconciliation.
|
|
It matches the chart in the last successfully reconciled artifact.
|
|
items:
|
|
type: string
|
|
type: array
|
|
url:
|
|
description: |-
|
|
URL is the dynamic fetch link for the latest Artifact.
|
|
It is provided on a "best effort" basis, and using the precise
|
|
BucketStatus.Artifact data is recommended.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: false
|
|
subresources:
|
|
status: {}
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.19.0
|
|
name: helmrepositories.source.toolkit.fluxcd.io
|
|
spec:
|
|
group: source.toolkit.fluxcd.io
|
|
names:
|
|
kind: HelmRepository
|
|
listKind: HelmRepositoryList
|
|
plural: helmrepositories
|
|
shortNames:
|
|
- helmrepo
|
|
singular: helmrepository
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.url
|
|
name: URL
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
name: v1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: HelmRepository is the Schema for the helmrepositories 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: |-
|
|
HelmRepositorySpec specifies the required configuration to produce an
|
|
Artifact for a Helm repository index YAML.
|
|
properties:
|
|
accessFrom:
|
|
description: |-
|
|
AccessFrom specifies an Access Control List for allowing cross-namespace
|
|
references to this object.
|
|
NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092
|
|
properties:
|
|
namespaceSelectors:
|
|
description: |-
|
|
NamespaceSelectors is the list of namespace selectors to which this ACL applies.
|
|
Items in this list are evaluated using a logical OR operation.
|
|
items:
|
|
description: |-
|
|
NamespaceSelector selects the namespaces to which this ACL applies.
|
|
An empty map of MatchLabels matches all namespaces in a cluster.
|
|
properties:
|
|
matchLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: |-
|
|
MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
|
|
map is equivalent to an element of matchExpressions, whose key field is "key", the
|
|
operator is "In", and the values array contains only "value". The requirements are ANDed.
|
|
type: object
|
|
type: object
|
|
type: array
|
|
required:
|
|
- namespaceSelectors
|
|
type: object
|
|
certSecretRef:
|
|
description: |-
|
|
CertSecretRef can be given the name of a Secret containing
|
|
either or both of
|
|
|
|
- a PEM-encoded client certificate (`tls.crt`) and private
|
|
key (`tls.key`);
|
|
- a PEM-encoded CA certificate (`ca.crt`)
|
|
|
|
and whichever are supplied, will be used for connecting to the
|
|
registry. The client cert and key are useful if you are
|
|
authenticating with a certificate; the CA cert is useful if
|
|
you are using a self-signed server certificate. The Secret must
|
|
be of type `Opaque` or `kubernetes.io/tls`.
|
|
|
|
It takes precedence over the values specified in the Secret referred
|
|
to by `.spec.secretRef`.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
insecure:
|
|
description: |-
|
|
Insecure allows connecting to a non-TLS HTTP container registry.
|
|
This field is only taken into account if the .spec.type field is set to 'oci'.
|
|
type: boolean
|
|
interval:
|
|
description: |-
|
|
Interval at which the HelmRepository URL is checked for updates.
|
|
This interval is approximate and may be subject to jitter to ensure
|
|
efficient use of resources.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
passCredentials:
|
|
description: |-
|
|
PassCredentials allows the credentials from the SecretRef to be passed
|
|
on to a host that does not match the host as defined in URL.
|
|
This may be required if the host of the advertised chart URLs in the
|
|
index differ from the defined URL.
|
|
Enabling this should be done with caution, as it can potentially result
|
|
in credentials getting stolen in a MITM-attack.
|
|
type: boolean
|
|
provider:
|
|
default: generic
|
|
description: |-
|
|
Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'.
|
|
This field is optional, and only taken into account if the .spec.type field is set to 'oci'.
|
|
When not specified, defaults to 'generic'.
|
|
enum:
|
|
- generic
|
|
- aws
|
|
- azure
|
|
- gcp
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing authentication credentials
|
|
for the HelmRepository.
|
|
For HTTP/S basic auth the secret must contain 'username' and 'password'
|
|
fields.
|
|
Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile'
|
|
keys is deprecated. Please use `.spec.certSecretRef` instead.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
suspend:
|
|
description: |-
|
|
Suspend tells the controller to suspend the reconciliation of this
|
|
HelmRepository.
|
|
type: boolean
|
|
timeout:
|
|
description: |-
|
|
Timeout is used for the index fetch operation for an HTTPS helm repository,
|
|
and for remote OCI Repository operations like pulling for an OCI helm
|
|
chart by the associated HelmChart.
|
|
Its default value is 60s.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
|
|
type: string
|
|
type:
|
|
description: |-
|
|
Type of the HelmRepository.
|
|
When this field is set to "oci", the URL field value must be prefixed with "oci://".
|
|
enum:
|
|
- default
|
|
- oci
|
|
type: string
|
|
url:
|
|
description: |-
|
|
URL of the Helm repository, a valid URL contains at least a protocol and
|
|
host.
|
|
pattern: ^(http|https|oci)://.*$
|
|
type: string
|
|
required:
|
|
- url
|
|
type: object
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: HelmRepositoryStatus records the observed state of the HelmRepository.
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the last successful HelmRepository
|
|
reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the HelmRepository.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
ObservedGeneration is the last observed generation of the HelmRepository
|
|
object.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the dynamic fetch link for the latest Artifact.
|
|
It is provided on a "best effort" basis, and using the precise
|
|
HelmRepositoryStatus.Artifact data is recommended.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.url
|
|
name: URL
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
deprecated: true
|
|
deprecationWarning: v1beta2 HelmRepository is deprecated, upgrade to v1
|
|
name: v1beta2
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: HelmRepository is the Schema for the helmrepositories 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: |-
|
|
HelmRepositorySpec specifies the required configuration to produce an
|
|
Artifact for a Helm repository index YAML.
|
|
properties:
|
|
accessFrom:
|
|
description: |-
|
|
AccessFrom specifies an Access Control List for allowing cross-namespace
|
|
references to this object.
|
|
NOTE: Not implemented, provisional as of https://github.com/fluxcd/flux2/pull/2092
|
|
properties:
|
|
namespaceSelectors:
|
|
description: |-
|
|
NamespaceSelectors is the list of namespace selectors to which this ACL applies.
|
|
Items in this list are evaluated using a logical OR operation.
|
|
items:
|
|
description: |-
|
|
NamespaceSelector selects the namespaces to which this ACL applies.
|
|
An empty map of MatchLabels matches all namespaces in a cluster.
|
|
properties:
|
|
matchLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: |-
|
|
MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
|
|
map is equivalent to an element of matchExpressions, whose key field is "key", the
|
|
operator is "In", and the values array contains only "value". The requirements are ANDed.
|
|
type: object
|
|
type: object
|
|
type: array
|
|
required:
|
|
- namespaceSelectors
|
|
type: object
|
|
certSecretRef:
|
|
description: |-
|
|
CertSecretRef can be given the name of a Secret containing
|
|
either or both of
|
|
|
|
- a PEM-encoded client certificate (`tls.crt`) and private
|
|
key (`tls.key`);
|
|
- a PEM-encoded CA certificate (`ca.crt`)
|
|
|
|
and whichever are supplied, will be used for connecting to the
|
|
registry. The client cert and key are useful if you are
|
|
authenticating with a certificate; the CA cert is useful if
|
|
you are using a self-signed server certificate. The Secret must
|
|
be of type `Opaque` or `kubernetes.io/tls`.
|
|
|
|
It takes precedence over the values specified in the Secret referred
|
|
to by `.spec.secretRef`.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
insecure:
|
|
description: |-
|
|
Insecure allows connecting to a non-TLS HTTP container registry.
|
|
This field is only taken into account if the .spec.type field is set to 'oci'.
|
|
type: boolean
|
|
interval:
|
|
description: |-
|
|
Interval at which the HelmRepository URL is checked for updates.
|
|
This interval is approximate and may be subject to jitter to ensure
|
|
efficient use of resources.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
passCredentials:
|
|
description: |-
|
|
PassCredentials allows the credentials from the SecretRef to be passed
|
|
on to a host that does not match the host as defined in URL.
|
|
This may be required if the host of the advertised chart URLs in the
|
|
index differ from the defined URL.
|
|
Enabling this should be done with caution, as it can potentially result
|
|
in credentials getting stolen in a MITM-attack.
|
|
type: boolean
|
|
provider:
|
|
default: generic
|
|
description: |-
|
|
Provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'.
|
|
This field is optional, and only taken into account if the .spec.type field is set to 'oci'.
|
|
When not specified, defaults to 'generic'.
|
|
enum:
|
|
- generic
|
|
- aws
|
|
- azure
|
|
- gcp
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Secret containing authentication credentials
|
|
for the HelmRepository.
|
|
For HTTP/S basic auth the secret must contain 'username' and 'password'
|
|
fields.
|
|
Support for TLS auth using the 'certFile' and 'keyFile', and/or 'caFile'
|
|
keys is deprecated. Please use `.spec.certSecretRef` instead.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
suspend:
|
|
description: |-
|
|
Suspend tells the controller to suspend the reconciliation of this
|
|
HelmRepository.
|
|
type: boolean
|
|
timeout:
|
|
description: |-
|
|
Timeout is used for the index fetch operation for an HTTPS helm repository,
|
|
and for remote OCI Repository operations like pulling for an OCI helm
|
|
chart by the associated HelmChart.
|
|
Its default value is 60s.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
|
|
type: string
|
|
type:
|
|
description: |-
|
|
Type of the HelmRepository.
|
|
When this field is set to "oci", the URL field value must be prefixed with "oci://".
|
|
enum:
|
|
- default
|
|
- oci
|
|
type: string
|
|
url:
|
|
description: |-
|
|
URL of the Helm repository, a valid URL contains at least a protocol and
|
|
host.
|
|
pattern: ^(http|https|oci)://.*$
|
|
type: string
|
|
required:
|
|
- url
|
|
type: object
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: HelmRepositoryStatus records the observed state of the HelmRepository.
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the last successful HelmRepository
|
|
reconciliation.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the HelmRepository.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
ObservedGeneration is the last observed generation of the HelmRepository
|
|
object.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the dynamic fetch link for the latest Artifact.
|
|
It is provided on a "best effort" basis, and using the precise
|
|
HelmRepositoryStatus.Artifact data is recommended.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: false
|
|
subresources:
|
|
status: {}
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.19.0
|
|
name: ocirepositories.source.toolkit.fluxcd.io
|
|
spec:
|
|
group: source.toolkit.fluxcd.io
|
|
names:
|
|
kind: OCIRepository
|
|
listKind: OCIRepositoryList
|
|
plural: ocirepositories
|
|
shortNames:
|
|
- ocirepo
|
|
singular: ocirepository
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.url
|
|
name: URL
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
name: v1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: OCIRepository is the Schema for the ocirepositories 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: OCIRepositorySpec defines the desired state of OCIRepository
|
|
properties:
|
|
certSecretRef:
|
|
description: |-
|
|
CertSecretRef can be given the name of a Secret containing
|
|
either or both of
|
|
|
|
- a PEM-encoded client certificate (`tls.crt`) and private
|
|
key (`tls.key`);
|
|
- a PEM-encoded CA certificate (`ca.crt`)
|
|
|
|
and whichever are supplied, will be used for connecting to the
|
|
registry. The client cert and key are useful if you are
|
|
authenticating with a certificate; the CA cert is useful if
|
|
you are using a self-signed server certificate. The Secret must
|
|
be of type `Opaque` or `kubernetes.io/tls`.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
ignore:
|
|
description: |-
|
|
Ignore overrides the set of excluded patterns in the .sourceignore format
|
|
(which is the same as .gitignore). If not provided, a default will be used,
|
|
consult the documentation for your version to find out what those are.
|
|
type: string
|
|
insecure:
|
|
description: Insecure allows connecting to a non-TLS HTTP container
|
|
registry.
|
|
type: boolean
|
|
interval:
|
|
description: |-
|
|
Interval at which the OCIRepository URL is checked for updates.
|
|
This interval is approximate and may be subject to jitter to ensure
|
|
efficient use of resources.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
layerSelector:
|
|
description: |-
|
|
LayerSelector specifies which layer should be extracted from the OCI artifact.
|
|
When not specified, the first layer found in the artifact is selected.
|
|
properties:
|
|
mediaType:
|
|
description: |-
|
|
MediaType specifies the OCI media type of the layer
|
|
which should be extracted from the OCI Artifact. The
|
|
first layer matching this type is selected.
|
|
type: string
|
|
operation:
|
|
description: |-
|
|
Operation specifies how the selected layer should be processed.
|
|
By default, the layer compressed content is extracted to storage.
|
|
When the operation is set to 'copy', the layer compressed content
|
|
is persisted to storage as it is.
|
|
enum:
|
|
- extract
|
|
- copy
|
|
type: string
|
|
type: object
|
|
provider:
|
|
default: generic
|
|
description: |-
|
|
The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'.
|
|
When not specified, defaults to 'generic'.
|
|
enum:
|
|
- generic
|
|
- aws
|
|
- azure
|
|
- gcp
|
|
type: string
|
|
proxySecretRef:
|
|
description: |-
|
|
ProxySecretRef specifies the Secret containing the proxy configuration
|
|
to use while communicating with the container registry.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
ref:
|
|
description: |-
|
|
The OCI reference to pull and monitor for changes,
|
|
defaults to the latest tag.
|
|
properties:
|
|
digest:
|
|
description: |-
|
|
Digest is the image digest to pull, takes precedence over SemVer.
|
|
The value should be in the format 'sha256:<HASH>'.
|
|
type: string
|
|
semver:
|
|
description: |-
|
|
SemVer is the range of tags to pull selecting the latest within
|
|
the range, takes precedence over Tag.
|
|
type: string
|
|
semverFilter:
|
|
description: SemverFilter is a regex pattern to filter the tags
|
|
within the SemVer range.
|
|
type: string
|
|
tag:
|
|
description: Tag is the image tag to pull, defaults to latest.
|
|
type: string
|
|
type: object
|
|
secretRef:
|
|
description: |-
|
|
SecretRef contains the secret name containing the registry login
|
|
credentials to resolve image metadata.
|
|
The secret must be of type kubernetes.io/dockerconfigjson.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
serviceAccountName:
|
|
description: |-
|
|
ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate
|
|
the image pull if the service account has attached pull secrets. For more information:
|
|
https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#add-imagepullsecrets-to-a-service-account
|
|
type: string
|
|
suspend:
|
|
description: This flag tells the controller to suspend the reconciliation
|
|
of this source.
|
|
type: boolean
|
|
timeout:
|
|
default: 60s
|
|
description: The timeout for remote OCI Repository operations like
|
|
pulling, defaults to 60s.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
|
|
type: string
|
|
url:
|
|
description: |-
|
|
URL is a reference to an OCI artifact repository hosted
|
|
on a remote container registry.
|
|
pattern: ^oci://.*$
|
|
type: string
|
|
verify:
|
|
description: |-
|
|
Verify contains the secret name containing the trusted public keys
|
|
used to verify the signature and specifies which provider to use to check
|
|
whether OCI image is authentic.
|
|
properties:
|
|
matchOIDCIdentity:
|
|
description: |-
|
|
MatchOIDCIdentity specifies the identity matching criteria to use
|
|
while verifying an OCI artifact which was signed using Cosign keyless
|
|
signing. The artifact's identity is deemed to be verified if any of the
|
|
specified matchers match against the identity.
|
|
items:
|
|
description: |-
|
|
OIDCIdentityMatch specifies options for verifying the certificate identity,
|
|
i.e. the issuer and the subject of the certificate.
|
|
properties:
|
|
issuer:
|
|
description: |-
|
|
Issuer specifies the regex pattern to match against to verify
|
|
the OIDC issuer in the Fulcio certificate. The pattern must be a
|
|
valid Go regular expression.
|
|
type: string
|
|
subject:
|
|
description: |-
|
|
Subject specifies the regex pattern to match against to verify
|
|
the identity subject in the Fulcio certificate. The pattern must
|
|
be a valid Go regular expression.
|
|
type: string
|
|
required:
|
|
- issuer
|
|
- subject
|
|
type: object
|
|
type: array
|
|
provider:
|
|
default: cosign
|
|
description: Provider specifies the technology used to sign the
|
|
OCI Artifact.
|
|
enum:
|
|
- cosign
|
|
- notation
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Kubernetes Secret containing the
|
|
trusted public keys.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
required:
|
|
- provider
|
|
type: object
|
|
required:
|
|
- interval
|
|
- url
|
|
type: object
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: OCIRepositoryStatus defines the observed state of OCIRepository
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the output of the last successful
|
|
OCI Repository sync.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the OCIRepository.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedGeneration:
|
|
description: ObservedGeneration is the last observed generation.
|
|
format: int64
|
|
type: integer
|
|
observedIgnore:
|
|
description: |-
|
|
ObservedIgnore is the observed exclusion patterns used for constructing
|
|
the source artifact.
|
|
type: string
|
|
observedLayerSelector:
|
|
description: |-
|
|
ObservedLayerSelector is the observed layer selector used for constructing
|
|
the source artifact.
|
|
properties:
|
|
mediaType:
|
|
description: |-
|
|
MediaType specifies the OCI media type of the layer
|
|
which should be extracted from the OCI Artifact. The
|
|
first layer matching this type is selected.
|
|
type: string
|
|
operation:
|
|
description: |-
|
|
Operation specifies how the selected layer should be processed.
|
|
By default, the layer compressed content is extracted to storage.
|
|
When the operation is set to 'copy', the layer compressed content
|
|
is persisted to storage as it is.
|
|
enum:
|
|
- extract
|
|
- copy
|
|
type: string
|
|
type: object
|
|
url:
|
|
description: URL is the download link for the artifact output of the
|
|
last OCI Repository sync.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
- additionalPrinterColumns:
|
|
- jsonPath: .spec.url
|
|
name: URL
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].status
|
|
name: Ready
|
|
type: string
|
|
- jsonPath: .status.conditions[?(@.type=="Ready")].message
|
|
name: Status
|
|
type: string
|
|
- jsonPath: .metadata.creationTimestamp
|
|
name: Age
|
|
type: date
|
|
deprecated: true
|
|
deprecationWarning: v1beta2 OCIRepository is deprecated, upgrade to v1
|
|
name: v1beta2
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: OCIRepository is the Schema for the ocirepositories 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: OCIRepositorySpec defines the desired state of OCIRepository
|
|
properties:
|
|
certSecretRef:
|
|
description: |-
|
|
CertSecretRef can be given the name of a Secret containing
|
|
either or both of
|
|
|
|
- a PEM-encoded client certificate (`tls.crt`) and private
|
|
key (`tls.key`);
|
|
- a PEM-encoded CA certificate (`ca.crt`)
|
|
|
|
and whichever are supplied, will be used for connecting to the
|
|
registry. The client cert and key are useful if you are
|
|
authenticating with a certificate; the CA cert is useful if
|
|
you are using a self-signed server certificate. The Secret must
|
|
be of type `Opaque` or `kubernetes.io/tls`.
|
|
|
|
Note: Support for the `caFile`, `certFile` and `keyFile` keys have
|
|
been deprecated.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
ignore:
|
|
description: |-
|
|
Ignore overrides the set of excluded patterns in the .sourceignore format
|
|
(which is the same as .gitignore). If not provided, a default will be used,
|
|
consult the documentation for your version to find out what those are.
|
|
type: string
|
|
insecure:
|
|
description: Insecure allows connecting to a non-TLS HTTP container
|
|
registry.
|
|
type: boolean
|
|
interval:
|
|
description: |-
|
|
Interval at which the OCIRepository URL is checked for updates.
|
|
This interval is approximate and may be subject to jitter to ensure
|
|
efficient use of resources.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
|
|
type: string
|
|
layerSelector:
|
|
description: |-
|
|
LayerSelector specifies which layer should be extracted from the OCI artifact.
|
|
When not specified, the first layer found in the artifact is selected.
|
|
properties:
|
|
mediaType:
|
|
description: |-
|
|
MediaType specifies the OCI media type of the layer
|
|
which should be extracted from the OCI Artifact. The
|
|
first layer matching this type is selected.
|
|
type: string
|
|
operation:
|
|
description: |-
|
|
Operation specifies how the selected layer should be processed.
|
|
By default, the layer compressed content is extracted to storage.
|
|
When the operation is set to 'copy', the layer compressed content
|
|
is persisted to storage as it is.
|
|
enum:
|
|
- extract
|
|
- copy
|
|
type: string
|
|
type: object
|
|
provider:
|
|
default: generic
|
|
description: |-
|
|
The provider used for authentication, can be 'aws', 'azure', 'gcp' or 'generic'.
|
|
When not specified, defaults to 'generic'.
|
|
enum:
|
|
- generic
|
|
- aws
|
|
- azure
|
|
- gcp
|
|
type: string
|
|
proxySecretRef:
|
|
description: |-
|
|
ProxySecretRef specifies the Secret containing the proxy configuration
|
|
to use while communicating with the container registry.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
ref:
|
|
description: |-
|
|
The OCI reference to pull and monitor for changes,
|
|
defaults to the latest tag.
|
|
properties:
|
|
digest:
|
|
description: |-
|
|
Digest is the image digest to pull, takes precedence over SemVer.
|
|
The value should be in the format 'sha256:<HASH>'.
|
|
type: string
|
|
semver:
|
|
description: |-
|
|
SemVer is the range of tags to pull selecting the latest within
|
|
the range, takes precedence over Tag.
|
|
type: string
|
|
semverFilter:
|
|
description: SemverFilter is a regex pattern to filter the tags
|
|
within the SemVer range.
|
|
type: string
|
|
tag:
|
|
description: Tag is the image tag to pull, defaults to latest.
|
|
type: string
|
|
type: object
|
|
secretRef:
|
|
description: |-
|
|
SecretRef contains the secret name containing the registry login
|
|
credentials to resolve image metadata.
|
|
The secret must be of type kubernetes.io/dockerconfigjson.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
serviceAccountName:
|
|
description: |-
|
|
ServiceAccountName is the name of the Kubernetes ServiceAccount used to authenticate
|
|
the image pull if the service account has attached pull secrets. For more information:
|
|
https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#add-imagepullsecrets-to-a-service-account
|
|
type: string
|
|
suspend:
|
|
description: This flag tells the controller to suspend the reconciliation
|
|
of this source.
|
|
type: boolean
|
|
timeout:
|
|
default: 60s
|
|
description: The timeout for remote OCI Repository operations like
|
|
pulling, defaults to 60s.
|
|
pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
|
|
type: string
|
|
url:
|
|
description: |-
|
|
URL is a reference to an OCI artifact repository hosted
|
|
on a remote container registry.
|
|
pattern: ^oci://.*$
|
|
type: string
|
|
verify:
|
|
description: |-
|
|
Verify contains the secret name containing the trusted public keys
|
|
used to verify the signature and specifies which provider to use to check
|
|
whether OCI image is authentic.
|
|
properties:
|
|
matchOIDCIdentity:
|
|
description: |-
|
|
MatchOIDCIdentity specifies the identity matching criteria to use
|
|
while verifying an OCI artifact which was signed using Cosign keyless
|
|
signing. The artifact's identity is deemed to be verified if any of the
|
|
specified matchers match against the identity.
|
|
items:
|
|
description: |-
|
|
OIDCIdentityMatch specifies options for verifying the certificate identity,
|
|
i.e. the issuer and the subject of the certificate.
|
|
properties:
|
|
issuer:
|
|
description: |-
|
|
Issuer specifies the regex pattern to match against to verify
|
|
the OIDC issuer in the Fulcio certificate. The pattern must be a
|
|
valid Go regular expression.
|
|
type: string
|
|
subject:
|
|
description: |-
|
|
Subject specifies the regex pattern to match against to verify
|
|
the identity subject in the Fulcio certificate. The pattern must
|
|
be a valid Go regular expression.
|
|
type: string
|
|
required:
|
|
- issuer
|
|
- subject
|
|
type: object
|
|
type: array
|
|
provider:
|
|
default: cosign
|
|
description: Provider specifies the technology used to sign the
|
|
OCI Artifact.
|
|
enum:
|
|
- cosign
|
|
- notation
|
|
type: string
|
|
secretRef:
|
|
description: |-
|
|
SecretRef specifies the Kubernetes Secret containing the
|
|
trusted public keys.
|
|
properties:
|
|
name:
|
|
description: Name of the referent.
|
|
type: string
|
|
required:
|
|
- name
|
|
type: object
|
|
required:
|
|
- provider
|
|
type: object
|
|
required:
|
|
- interval
|
|
- url
|
|
type: object
|
|
status:
|
|
default:
|
|
observedGeneration: -1
|
|
description: OCIRepositoryStatus defines the observed state of OCIRepository
|
|
properties:
|
|
artifact:
|
|
description: Artifact represents the output of the last successful
|
|
OCI Repository sync.
|
|
properties:
|
|
digest:
|
|
description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
|
|
pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
|
|
type: string
|
|
lastUpdateTime:
|
|
description: |-
|
|
LastUpdateTime is the timestamp corresponding to the last update of the
|
|
Artifact.
|
|
format: date-time
|
|
type: string
|
|
metadata:
|
|
additionalProperties:
|
|
type: string
|
|
description: Metadata holds upstream information such as OCI annotations.
|
|
type: object
|
|
path:
|
|
description: |-
|
|
Path is the relative file path of the Artifact. It can be used to locate
|
|
the file in the root of the Artifact storage on the local file system of
|
|
the controller managing the Source.
|
|
type: string
|
|
revision:
|
|
description: |-
|
|
Revision is a human-readable identifier traceable in the origin source
|
|
system. It can be a Git commit SHA, Git tag, a Helm chart version, etc.
|
|
type: string
|
|
size:
|
|
description: Size is the number of bytes in the file.
|
|
format: int64
|
|
type: integer
|
|
url:
|
|
description: |-
|
|
URL is the HTTP address of the Artifact as exposed by the controller
|
|
managing the Source. It can be used to retrieve the Artifact for
|
|
consumption, e.g. by another controller applying the Artifact contents.
|
|
type: string
|
|
required:
|
|
- digest
|
|
- lastUpdateTime
|
|
- path
|
|
- revision
|
|
- url
|
|
type: object
|
|
conditions:
|
|
description: Conditions holds the conditions for the OCIRepository.
|
|
items:
|
|
description: Condition contains details for one aspect of the current
|
|
state of this API Resource.
|
|
properties:
|
|
lastTransitionTime:
|
|
description: |-
|
|
lastTransitionTime is the last time the condition transitioned from one status to another.
|
|
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
|
|
format: date-time
|
|
type: string
|
|
message:
|
|
description: |-
|
|
message is a human readable message indicating details about the transition.
|
|
This may be an empty string.
|
|
maxLength: 32768
|
|
type: string
|
|
observedGeneration:
|
|
description: |-
|
|
observedGeneration represents the .metadata.generation that the condition was set based upon.
|
|
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
|
|
with respect to the current state of the instance.
|
|
format: int64
|
|
minimum: 0
|
|
type: integer
|
|
reason:
|
|
description: |-
|
|
reason contains a programmatic identifier indicating the reason for the condition's last transition.
|
|
Producers of specific condition types may define expected values and meanings for this field,
|
|
and whether the values are considered a guaranteed API.
|
|
The value should be a CamelCase string.
|
|
This field may not be empty.
|
|
maxLength: 1024
|
|
minLength: 1
|
|
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
|
|
type: string
|
|
status:
|
|
description: status of the condition, one of True, False, Unknown.
|
|
enum:
|
|
- "True"
|
|
- "False"
|
|
- Unknown
|
|
type: string
|
|
type:
|
|
description: type of condition in CamelCase or in foo.example.com/CamelCase.
|
|
maxLength: 316
|
|
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
|
|
type: string
|
|
required:
|
|
- lastTransitionTime
|
|
- message
|
|
- reason
|
|
- status
|
|
- type
|
|
type: object
|
|
type: array
|
|
contentConfigChecksum:
|
|
description: |-
|
|
ContentConfigChecksum is a checksum of all the configurations related to
|
|
the content of the source artifact:
|
|
- .spec.ignore
|
|
- .spec.layerSelector
|
|
observed in .status.observedGeneration version of the object. This can
|
|
be used to determine if the content configuration has changed and the
|
|
artifact needs to be rebuilt.
|
|
It has the format of `<algo>:<checksum>`, for example: `sha256:<checksum>`.
|
|
|
|
Deprecated: Replaced with explicit fields for observed artifact content
|
|
config in the status.
|
|
type: string
|
|
lastHandledReconcileAt:
|
|
description: |-
|
|
LastHandledReconcileAt holds the value of the most recent
|
|
reconcile request value, so a change of the annotation value
|
|
can be detected.
|
|
type: string
|
|
observedGeneration:
|
|
description: ObservedGeneration is the last observed generation.
|
|
format: int64
|
|
type: integer
|
|
observedIgnore:
|
|
description: |-
|
|
ObservedIgnore is the observed exclusion patterns used for constructing
|
|
the source artifact.
|
|
type: string
|
|
observedLayerSelector:
|
|
description: |-
|
|
ObservedLayerSelector is the observed layer selector used for constructing
|
|
the source artifact.
|
|
properties:
|
|
mediaType:
|
|
description: |-
|
|
MediaType specifies the OCI media type of the layer
|
|
which should be extracted from the OCI Artifact. The
|
|
first layer matching this type is selected.
|
|
type: string
|
|
operation:
|
|
description: |-
|
|
Operation specifies how the selected layer should be processed.
|
|
By default, the layer compressed content is extracted to storage.
|
|
When the operation is set to 'copy', the layer compressed content
|
|
is persisted to storage as it is.
|
|
enum:
|
|
- extract
|
|
- copy
|
|
type: string
|
|
type: object
|
|
url:
|
|
description: URL is the download link for the artifact output of the
|
|
last OCI Repository sync.
|
|
type: string
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: false
|
|
subresources:
|
|
status: {}
|