Documentation ¶
Index ¶
- func CheckCompatibleVersion(cfg config.Cassandra, keyspace string, dirPath string) error
- func ParseCQLFile(filePath string) ([]string, error)
- func RunTool(args []string) error
- func SetupSchema(config *SetupSchemaConfig) error
- type BaseConfig
- type CQLClient
- type ConfigError
- type CreateKeyspaceConfig
- type SetupSchemaConfig
- type SetupSchemaTask
- type UpdateSchemaConfig
- type UpdateSchemaTask
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckCompatibleVersion ¶ added in v0.3.3
CheckCompatibleVersion check the version compatibility
func ParseCQLFile ¶
ParseCQLFile takes a cql file path as input and returns an array of cql statements on success.
func SetupSchema ¶
func SetupSchema(config *SetupSchemaConfig) error
SetupSchema setups the cassandra schema
Types ¶
type BaseConfig ¶
type BaseConfig struct { CassHosts string CassPort int CassUser string CassPassword string CassKeyspace string }
BaseConfig is the common config for all of the tasks that work with cassandra
type CQLClient ¶
type CQLClient interface { // Exec executes a cql statement Exec(stmt string) error // ListTables lists the table names in a keyspace ListTables() ([]string, error) // ListTypes lists the user defined types in a keyspace ListTypes() ([]string, error) // CreateKeyspace creates a keyspace, if it doesn't exist // it uses SimpleStrategy by default CreateKeyspace(name string, replicas int) error // DropTable drops the given table DropTable(name string) error // DropType drops a user defined type from keyspace DropType(name string) error // DropKeyspace drops a keyspace DropKeyspace(keyspace string) error // CreateSchemaVersionTables sets up the schema version tables CreateSchemaVersionTables() error // ReadSchemaVersion returns the current schema version for the keyspace ReadSchemaVersion() (string, error) // UpdateSchemaVersion updates the schema version for the keyspace UpdateSchemaVersion(newVersion string, minCompatibleVersion string) error // WriteSchemaUpdateLog adds an entry to the schema update history table WriteSchemaUpdateLog(oldVersion string, newVersion string, manifestMD5 string, desc string) error // Close gracefully closes the client object Close() }
CQLClient is the interface for implementations that provide a way to talk to cassandra through CQL
type ConfigError ¶
type ConfigError struct {
// contains filtered or unexported fields
}
ConfigError is an error type that represents a problem with the config
func (*ConfigError) Error ¶
func (e *ConfigError) Error() string
type CreateKeyspaceConfig ¶
type CreateKeyspaceConfig struct { BaseConfig ReplicationFactor int }
CreateKeyspaceConfig holds the config params needed to create a cassandra keyspace
type SetupSchemaConfig ¶
type SetupSchemaConfig struct { BaseConfig SchemaFilePath string InitialVersion string Overwrite bool // overwrite previous data DisableVersioning bool // do not use schema versioning }
SetupSchemaConfig holds the config params need by the SetupSchemaTask
type SetupSchemaTask ¶
type SetupSchemaTask struct {
// contains filtered or unexported fields
}
SetupSchemaTask represents a task that sets up cassandra schema on a specified keyspace
type UpdateSchemaConfig ¶
type UpdateSchemaConfig struct { BaseConfig TargetVersion string SchemaDir string IsDryRun bool }
UpdateSchemaConfig holds the config params for executing a UpdateSchemaTask
type UpdateSchemaTask ¶
type UpdateSchemaTask struct {
// contains filtered or unexported fields
}
UpdateSchemaTask represents a task that executes a cassandra schema upgrade
func NewUpdateSchemaTask ¶
func NewUpdateSchemaTask(config *UpdateSchemaConfig) (*UpdateSchemaTask, error)
NewUpdateSchemaTask returns a new instance of UpdateSchemaTask