Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the flyway v1alpha1 API group +kubebuilder:object:generate=true +groupName=flyway.davidkarlsen.com
Index ¶
- Constants
- Variables
- type Database
- type FlywayConfiguration
- type Migration
- func (in *Migration) DeepCopy() *Migration
- func (in *Migration) DeepCopyInto(out *Migration)
- func (in *Migration) DeepCopyObject() runtime.Object
- func (m *Migration) GenerationAsString() string
- func (m *Migration) GetConditions() []metav1.Condition
- func (r *Migration) GetCredentials() v1.SecretReference
- func (m *Migration) IsPaused() bool
- func (m *Migration) SetConditions(conditions []metav1.Condition)
- type MigrationList
- type MigrationSource
- type MigrationSpec
- type MigrationStatus
Constants ¶
const ( Prefix = "flyway-operator.davidkarlsen.com" Generation = Prefix + "/" + "generation" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "flyway.davidkarlsen.com", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type Database ¶
type Database struct {
// username for connecting to database
// +kubebuilder:validation:Required
Username string `json:"username"`
// reference to a secret containing the password for connecting to database
// +kubebuilder:validation:Required
Credentials v1.SecretKeySelector `json:"credentials"`
// the jdbcUrl to connect to database
// +kubebuilder:validation:Required
// +kubebuilder:validation:Pattern=`^jdbc:.*`
JdbcUrl string `json:"jdbcUrl"`
}
Database defines the database-settings
func (*Database) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Database.
func (*Database) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FlywayConfiguration ¶ added in v0.1.8
type FlywayConfiguration struct {
// Reference to the flyway image to use.
// +kubebuilder:validation:Optional
FlywayImage string `json:"flywayImage"`
// The flyway actions to apply, like "info", "migrate"
// See https://documentation.red-gate.com/fd/commands-184127446.html
// +kubebuilder:default={"info", "migrate", "info"}
Commands []string `json:"commands"`
// The default flyway schema to use.
// See https://documentation.red-gate.com/fd/default-schema-184127496.html
// +kubebuilder:validation:Optional
DefaultSchema *string `json:"defaultSchema"`
// Base-line on migrate.
// See https://documentation.red-gate.com/fd/baseline-on-migrate-224919695.html
// +kubebuilder:validation:Optional
BaselineOnMigrate *bool `json:"baselineOnMigrate"`
// Arbitrary entries to set as env-vars to Flyway migration job.
// +kubebuilder:validation:Optional
EnvVars []v1.EnvVar `json:"envVars"`
// jdbcProperties to pass to the execution.
// See https://documentation.red-gate.com/fd/environment-jdbc-properties-namespace-277578928.html
// +kubebuilder:validation:Optional
JdbcProperties map[string]string `json:"jdbcProperties,omitempty"`
// Volumes to make available to the migration job.
// +kubebuilder:validation:Optional
Volumes []v1.Volume `json:"volumes,omitempty"`
// Volume mounts to mount into the migration job.
// +kubebuilder:validation:Optional
VolumeMounts []v1.VolumeMount `json:"volumeMounts,omitempty"`
}
func (*FlywayConfiguration) DeepCopy ¶ added in v0.1.8
func (in *FlywayConfiguration) DeepCopy() *FlywayConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlywayConfiguration.
func (*FlywayConfiguration) DeepCopyInto ¶ added in v0.1.8
func (in *FlywayConfiguration) DeepCopyInto(out *FlywayConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Migration ¶
type Migration struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// +kubebuilder:validation:Required
Spec MigrationSpec `json:"spec,omitempty"`
Status MigrationStatus `json:"status,omitempty"`
}
Migration is the Schema for the migrations API
func (*Migration) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Migration.
func (*Migration) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Migration) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Migration) GenerationAsString ¶ added in v0.1.15
func (*Migration) GetConditions ¶
func (*Migration) GetCredentials ¶
func (r *Migration) GetCredentials() v1.SecretReference
func (*Migration) SetConditions ¶
type MigrationList ¶
type MigrationList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Migration `json:"items"`
}
MigrationList contains a list of Migration
func (*MigrationList) DeepCopy ¶
func (in *MigrationList) DeepCopy() *MigrationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MigrationList.
func (*MigrationList) DeepCopyInto ¶
func (in *MigrationList) DeepCopyInto(out *MigrationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MigrationList) DeepCopyObject ¶
func (in *MigrationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MigrationSource ¶
type MigrationSource struct {
// Reference to the image holding the SQLs to migrate
// +kubebuilder:validation:Required
ImageRef string `json:"imageRef"`
// Optional. Image-pull secret to pull the migration source
// +kubebuilder:validation:Optional
ImagePullSecrets []v1.LocalObjectReference `json:"ImagePullSecret"`
// Path within the image to the SQLs for flyway
// +kubebuilder:default="/sql"
SqlPath string `json:"path"`
// The encoding of the SQL-files.
// +kubebuilder:default="UTF-8"
Encoding string `json:"encoding"`
// Flyway placeholders, see: https://documentation.red-gate.com/fd/placeholders-configuration-184127475.html
// These will be injected as env-vars with the required prefix.
// +kubebuilder:validation:Optional
Placeholders map[string]string `json:"placeholders"`
}
MigrationSource defines the source for the flyway-migrations.
func (*MigrationSource) DeepCopy ¶
func (in *MigrationSource) DeepCopy() *MigrationSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MigrationSource.
func (*MigrationSource) DeepCopyInto ¶
func (in *MigrationSource) DeepCopyInto(out *MigrationSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MigrationSource) GetPlaceholdersAsEnvVars ¶
func (r *MigrationSource) GetPlaceholdersAsEnvVars() []v1.EnvVar
type MigrationSpec ¶
type MigrationSpec struct {
// settings for database connection
// +kubebuilder:validation:Required
Database Database `json:"database"`
// settings for flyway
FlywayConfiguration FlywayConfiguration `json:"flywayConfiguration"`
// settings defining the SQL migrations
// +kubebuilder:validation:Required
MigrationSource MigrationSource `json:"migrationSource"`
}
MigrationSpec defines the desired state of Migration
func (*MigrationSpec) DeepCopy ¶
func (in *MigrationSpec) DeepCopy() *MigrationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MigrationSpec.
func (*MigrationSpec) DeepCopyInto ¶
func (in *MigrationSpec) DeepCopyInto(out *MigrationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MigrationStatus ¶
type MigrationStatus struct {
// +patchMergeKey=type
// +patchStrategy=merge
// +listType=map
// +listMapKey=type
Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
}
MigrationStatus defines the observed state of Migration
func (*MigrationStatus) DeepCopy ¶
func (in *MigrationStatus) DeepCopy() *MigrationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MigrationStatus.
func (*MigrationStatus) DeepCopyInto ¶
func (in *MigrationStatus) DeepCopyInto(out *MigrationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.