iamkeycontroller

package
v0.10.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 6, 2023 License: BSD-3-Clause Imports: 36 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// KeyIDAnnotationKey is the annotation key where the IAMKey ID is stored.
	KeyIDAnnotationKey  = "exoscale.crossplane.io/key-id"
	RoleIDAnnotationKey = "exoscale.crossplane.io/role-id"
	// BucketResourceType is the resource type bucket to which the IAMKey has access to.
	BucketResourceType = "bucket"
	//SOSResourceDomain is the resource domain to which the IAMKey has access to.
	SOSResourceDomain = "sos"
)

Variables

This section is empty.

Functions

func ExecuteRequest added in v0.10.0

func ExecuteRequest(ctx context.Context, method, host, path, access_key, access_secret string, unMarshalledBody interface{}) (*http.Response, error)

func SetupController

func SetupController(mgr ctrl.Manager) error

SetupController adds a controller that reconciles exoscalev1.IAMKey managed resources.

func SetupWebhook

func SetupWebhook(mgr ctrl.Manager) error

SetupWebhook adds a webhook for Bucket managed resources.

Types

type IAMKeyPipeline

type IAMKeyPipeline struct {
	// contains filtered or unexported fields
}

IAMKeyPipeline provisions IAMKeys on exoscale.com

func NewPipeline

func NewPipeline(client client.Client, recorder event.Recorder, exoscaleClient *exoscalesdk.Client, apiKey, apiSecret string) *IAMKeyPipeline

NewPipeline returns a new instance of IAMKeyPipeline.

func (*IAMKeyPipeline) Create

Create implements managed.ExternalClient.

func (*IAMKeyPipeline) Delete

func (p *IAMKeyPipeline) Delete(ctx context.Context, mg resource.Managed) error

Delete implements managed.ExternalClient.

func (*IAMKeyPipeline) Observe

Observe implements managed.ExternalClient.

func (*IAMKeyPipeline) Update

Update implements managed.ExternalClient. exoscale.com does not allow any updates on IAM keys.

type IAMKeyValidator

type IAMKeyValidator struct {
	// contains filtered or unexported fields
}

IAMKeyValidator validates admission requests.

func (*IAMKeyValidator) ValidateCreate

func (v *IAMKeyValidator) ValidateCreate(_ context.Context, obj runtime.Object) error

ValidateCreate implements admission.CustomValidator.

func (*IAMKeyValidator) ValidateDelete

func (v *IAMKeyValidator) ValidateDelete(_ context.Context, obj runtime.Object) error

ValidateDelete implements admission.CustomValidator.

func (*IAMKeyValidator) ValidateUpdate

func (v *IAMKeyValidator) ValidateUpdate(_ context.Context, oldObj, newObj runtime.Object) error

ValidateUpdate implements admission.CustomValidator.

type IamKeysList added in v0.10.0

type IamKeysList struct {
	IamKeys []exooapi.IamApiKey `json:"api-keys"`
}

type IamRolesList added in v0.10.0

type IamRolesList struct {
	IamRoles []exooapi.IamRole `json:"iam-roles"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL