Skip to content
This repository was archived by the owner on Dec 6, 2024. It is now read-only.

moves various fields into status from spec #37

Merged
merged 2 commits into from
Apr 16, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
170 changes: 66 additions & 104 deletions apis/objectstorage.k8s.io/v1alpha1/openapi_generated.go

Large diffs are not rendered by default.

18 changes: 9 additions & 9 deletions apis/objectstorage.k8s.io/v1alpha1/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,9 +72,6 @@ type BucketSpec struct {

Protocol Protocol `json:"protocol"`

// +optional
BucketID string `json:"bucketID,omitempty"`

// +optional
Parameters map[string]string `json:"parameters,omitempty"`

Expand All @@ -88,6 +85,9 @@ type BucketStatus struct {

// +optional
BucketAvailable bool `json:"bucketAvailable,omitempty"`

// +optional
BucketID string `json:"bucketID,omitempty"`
}

// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
Expand Down Expand Up @@ -239,14 +239,8 @@ type BucketAccessSpec struct {
// +optional
ServiceAccount *corev1.ObjectReference `json:"serviceAccount,omitempty"`

// +optional
MintedSecretName string `json:"mintedSecretName,omitempty"`

PolicyActionsConfigMapData string `json:"policyActionsConfigMapData,omitempty"`

// +optional
AccountID string `json:"accountID,omitempty"`

// +optional
Parameters map[string]string `json:"parameters,omitempty"`
}
Expand All @@ -255,6 +249,12 @@ type BucketAccessStatus struct {
// +optional
Message string `json:"message,omitempty"`

// +optional
MintedSecretName string `json:"mintedSecretName,omitempty"`

// +optional
AccountID string `json:"accountID,omitempty"`

// +optional
AccessGranted bool `json:"accessGranted,omitempty"`
}
Expand Down
2 changes: 1 addition & 1 deletion clientset/fake/register.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion controller/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,7 @@ func (c *ObjectStorageController) processNextItem(ctx context.Context) bool {
err = delete(ctx, o.Object)
if err == nil {
o.Indexer.Delete(o.Object)
c.opMap.Delete(uuid)
}
default:
panic("unknown item in queue")
Expand Down Expand Up @@ -320,7 +321,6 @@ func (c *ObjectStorageController) GetOpLock(op types.UID) *sync.Mutex {
// handleErr checks if an error happened and makes sure we will retry later.
func (c *ObjectStorageController) handleErr(err error, uuid types.UID) {
if err == nil {
c.opMap.Delete(uuid)
return
}
c.queue.AddRateLimited(uuid)
Expand Down
47 changes: 6 additions & 41 deletions crds/objectstorage.k8s.io_bucketaccessclasses.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.4.1
controller-gen.kubebuilder.io/version: v0.5.0
creationTimestamp: null
name: bucketaccessclasses.objectstorage.k8s.io
spec:
Expand All @@ -21,14 +21,10 @@ spec:
openAPIV3Schema:
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
Expand All @@ -37,43 +33,13 @@ spec:
type: string
type: object
policyActionsConfigMap:
description: 'ObjectReference contains enough information to let you inspect
or modify the referred object. --- New uses of this type are discouraged
because of difficulty describing its usage when embedded in APIs. 1.
Ignored fields. It includes many fields which are not generally honored. For
instance, ResourceVersion and FieldPath are both very rarely valid in
actual usage. 2. Invalid usage help. It is impossible to add specific
help for individual usage. In most embedded usages, there are particular restrictions
like, "must refer only to types A and B" or "UID not honored" or "name
must be restricted". Those cannot be well described when embedded. 3.
Inconsistent validation. Because the usages are different, the validation
rules are different by usage, which makes it hard for users to predict
what will happen. 4. The fields are both imprecise and overly precise. Kind
is not a precise mapping to a URL. This can produce ambiguity during
interpretation and require a REST mapping. In most cases, the dependency
is on the group,resource tuple and the version of the actual struct
is irrelevant. 5. We cannot easily change it. Because this type is
embedded in many locations, updates to this type will affect numerous
schemas. Don''t make new APIs embed an underspecified API type they
do not control. Instead of using this type, create a locally provided
and used type that is well-focused on your reference. For example, ServiceReferences
for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533
.'
description: 'ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, "must refer only to types A and B" or "UID not honored" or "name must be restricted". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don''t make new APIs embed an underspecified API type they do not control. Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .'
properties:
apiVersion:
description: API version of the referent.
type: string
fieldPath:
description: 'If referring to a piece of an object instead of an entire
object, this string should contain a valid JSON/Go field access
statement, such as desiredState.manifest.containers[2]. For example,
if the object reference is to a container within a pod, this would
take on a value like: "spec.containers{name}" (where "name" refers
to the name of the container that triggered the event) or if no
container name is specified "spec.containers[2]" (container with
index 2 in this pod). This syntax is chosen only to have some well-defined
way of referencing a part of an object. TODO: this design is not
final and this field is subject to change in the future.'
description: 'If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: "spec.containers{name}" (where "name" refers to the name of the container that triggered the event) or if no container name is specified "spec.containers[2]" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.'
type: string
kind:
description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
Expand All @@ -85,8 +51,7 @@ spec:
description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
type: string
resourceVersion:
description: 'Specific resourceVersion to which this reference is
made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
description: 'Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency'
type: string
uid:
description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids'
Expand Down
Loading