View Source
const (
	// Name is the identifier of the resource.
	Name = "s3bucketv26"
	// LifecycleLoggingBucketID is the Lifecycle ID for the logging bucket
	LifecycleLoggingBucketID = "ExpirationLogs"
View Source
const (
	// S3BucketEncryptionAlgorithm is used to determine which algorithm use S3 to encrypt buckets.
	S3BucketEncryptionAlgorithm = "AES256"


This section is empty.


func IsBucketAlreadyExists

func IsBucketAlreadyExists(err error) bool

    IsBucketAlreadyExists asserts bucket already exists error from upstream's API code.

    func IsBucketAlreadyOwnedByYou

    func IsBucketAlreadyOwnedByYou(err error) bool

      IsBucketAlreadyOwnedByYou asserts bucket already owned by you error from upstream's API code.

      func IsBucketNotEmpty

      func IsBucketNotEmpty(err error) bool

        IsBucketNotEmpty asserts bucketNotEmptyError. It also checks for BucketNotEmpty error codes from the AWS SDK. An error we expect looks like the one below.

        BucketNotEmpty: The bucket you tried to delete is not empty\n\tstatus code: 409, request id: 4B2CDF3222517C9D, host id: mOJAOuJsV/3CEeAkyTw1k3s5HLFsa5PHMkUfZv5lqtOKxiR67jclbqIHrzvtDa7E676h908MIY0=

        func IsBucketNotFound

        func IsBucketNotFound(err error) bool

          IsBucketNotFound asserts bucket not found error from upstream's API code.

          func IsInvalidConfig

          func IsInvalidConfig(err error) bool

            IsInvalidConfig asserts invalidConfigError.

            func IsNotFound

            func IsNotFound(err error) bool

              IsNotFound asserts notFoundError.

              func IsWrongType

              func IsWrongType(err error) bool

                IsWrongType asserts wrongTypeError.


                type BucketState

                type BucketState struct {
                	Name             string
                	IsLoggingBucket  bool
                	IsLoggingEnabled bool

                  BucketState is the state representation on which the resource methods work.

                  type Clients

                  type Clients struct {
                  	S3 S3Client

                  type Config

                  type Config struct {
                  	// Dependencies.
                  	Logger micrologger.Logger
                  	// Settings.
                  	AccessLogsExpiration int
                  	DeleteLoggingBucket  bool
                  	IncludeTags          bool
                  	InstallationName     string

                    Config represents the configuration used to create a new s3bucket resource.

                    type Resource

                    type Resource struct {
                    	// contains filtered or unexported fields

                      Resource implements the s3bucket resource.

                      func New

                      func New(config Config) (*Resource, error)

                        New creates a new configured s3bucket resource.

                        func (*Resource) ApplyCreateChange

                        func (r *Resource) ApplyCreateChange(ctx context.Context, obj, createChange interface{}) error

                        func (*Resource) ApplyDeleteChange

                        func (r *Resource) ApplyDeleteChange(ctx context.Context, obj, deleteChange interface{}) error

                        func (*Resource) ApplyUpdateChange

                        func (r *Resource) ApplyUpdateChange(ctx context.Context, obj, updateChange interface{}) error

                        func (*Resource) GetCurrentState

                        func (r *Resource) GetCurrentState(ctx context.Context, obj interface{}) (interface{}, error)

                        func (*Resource) GetDesiredState

                        func (r *Resource) GetDesiredState(ctx context.Context, obj interface{}) (interface{}, error)

                        func (*Resource) Name

                        func (r *Resource) Name() string

                        func (*Resource) NewDeletePatch

                        func (r *Resource) NewDeletePatch(ctx context.Context, obj, currentState, desiredState interface{}) (*controller.Patch, error)

                        func (*Resource) NewUpdatePatch

                        func (r *Resource) NewUpdatePatch(ctx context.Context, obj, currentState, desiredState interface{}) (*controller.Patch, error)

                        type S3Client

                          S3Client describes the methods required to be implemented by a S3 AWS client.