ahriman.core.database.migrations package

Submodules

ahriman.core.database.migrations.m000_initial module

migrate_data(connection: Connection, configuration: Configuration) None

perform data migration

Parameters:
  • connection (Connection) – database connection

  • configuration (Configuration) – configuration instance

ahriman.core.database.migrations.m001_package_source module

migrate_data(connection: Connection, configuration: Configuration) None

perform data migration

Parameters:
  • connection (Connection) – database connection

  • configuration (Configuration) – configuration instance

ahriman.core.database.migrations.m002_user_access module

ahriman.core.database.migrations.m003_patch_variables module

ahriman.core.database.migrations.m004_logs module

ahriman.core.database.migrations.m005_make_opt_depends module

migrate_data(connection: Connection, configuration: Configuration) None

perform data migration

Parameters:
  • connection (Connection) – database connection

  • configuration (Configuration) – configuration instance

ahriman.core.database.migrations.m006_packages_architecture_required module

ahriman.core.database.migrations.m007_check_depends module

migrate_data(connection: Connection, configuration: Configuration) None

perform data migration

Parameters:
  • connection (Connection) – database connection

  • configuration (Configuration) – configuration instance

ahriman.core.database.migrations.m008_packagers module

migrate_data(connection: Connection, configuration: Configuration) None

perform data migration

Parameters:
  • connection (Connection) – database connection

  • configuration (Configuration) – configuration instance

ahriman.core.database.migrations.m009_local_source module

ahriman.core.database.migrations.m010_version_based_logs_removal module

ahriman.core.database.migrations.m011_repository_name module

migrate_data(connection: Connection, configuration: Configuration) None

perform data migration

Parameters:
  • connection (Connection) – database connection

  • configuration (Configuration) – configuration instance

ahriman.core.database.migrations.m012_last_commit_sha module

Module contents

class Migrations(connection: Connection, configuration: Configuration)

Bases: LazyLogging

simple migration wrapper for the sqlite idea comes from https://www.ash.dev/blog/simple-migration-system-in-sqlite/

configuration

configuration instance

Type:

Configuration

connection

database connection

Type:

Connection

default constructor

Parameters:
  • connection (Connection) – database connection

  • configuration (Configuration) – configuration instance

static migrate(connection: Connection, configuration: Configuration) MigrationResult

perform migrations implicitly

Parameters:
  • connection (Connection) – database connection

  • configuration (Configuration) – configuration instance

Returns:

current schema version

Return type:

MigrationResult

migration(cursor: Cursor, migration: Migration) None

perform single migration

Parameters:
  • cursor (Cursor) – connection cursor

  • migration (Migration) – single migration to perform

migrations() list[Migration]

extract all migrations from the current package idea comes from https://julienharbulot.com/python-dynamical-import.html

Returns:

list of found migrations

Return type:

list[Migration]

run() MigrationResult

perform migrations

Returns:

current schema version

Return type:

MigrationResult

user_version() int

get schema version from sqlite database

Returns:

current schema version

Return type:

int