| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- # a multi-database configuration.
- [alembic]
- # path to migration scripts.
- # this is typically a path given in POSIX (e.g. forward slashes)
- # format, relative to the token %(here)s which refers to the location of this
- # ini file
- script_location = ${script_location}
- # template used to generate migration file names; The default value is %%(rev)s_%%(slug)s
- # Uncomment the line below if you want the files to be prepended with date and time
- # see https://alembic.sqlalchemy.org/en/latest/tutorial.html#editing-the-ini-file
- # for all available tokens
- # file_template = %%(year)d_%%(month).2d_%%(day).2d_%%(hour).2d%%(minute).2d-%%(rev)s_%%(slug)s
- # sys.path path, will be prepended to sys.path if present.
- # defaults to the current working directory. for multiple paths, the path separator
- # is defined by "path_separator" below.
- prepend_sys_path = .
- # timezone to use when rendering the date within the migration file
- # as well as the filename.
- # If specified, requires the python>=3.9 or backports.zoneinfo library and tzdata library.
- # Any required deps can installed by adding `alembic[tz]` to the pip requirements
- # string value is passed to ZoneInfo()
- # leave blank for localtime
- # timezone =
- # max length of characters to apply to the "slug" field
- # truncate_slug_length = 40
- # set to 'true' to run the environment during
- # the 'revision' command, regardless of autogenerate
- # revision_environment = false
- # set to 'true' to allow .pyc and .pyo files without
- # a source .py file to be detected as revisions in the
- # versions/ directory
- # sourceless = false
- # version location specification; This defaults
- # to <script_location>/versions. When using multiple version
- # directories, initial revisions must be specified with --version-path.
- # The path separator used here should be the separator specified by "path_separator"
- # below.
- # version_locations = %(here)s/bar:%(here)s/bat:%(here)s/alembic/versions
- # path_separator; This indicates what character is used to split lists of file
- # paths, including version_locations and prepend_sys_path within configparser
- # files such as alembic.ini.
- # The default rendered in new alembic.ini files is "os", which uses os.pathsep
- # to provide os-dependent path splitting.
- #
- # Note that in order to support legacy alembic.ini files, this default does NOT
- # take place if path_separator is not present in alembic.ini. If this
- # option is omitted entirely, fallback logic is as follows:
- #
- # 1. Parsing of the version_locations option falls back to using the legacy
- # "version_path_separator" key, which if absent then falls back to the legacy
- # behavior of splitting on spaces and/or commas.
- # 2. Parsing of the prepend_sys_path option falls back to the legacy
- # behavior of splitting on spaces, commas, or colons.
- #
- # Valid values for path_separator are:
- #
- # path_separator = :
- # path_separator = ;
- # path_separator = space
- # path_separator = newline
- #
- # Use os.pathsep. Default configuration used for new projects.
- path_separator = os
- # set to 'true' to search source files recursively
- # in each "version_locations" directory
- # new in Alembic version 1.10
- # recursive_version_locations = false
- # the output encoding used when revision files
- # are written from script.py.mako
- # output_encoding = utf-8
- # for multiple database configuration, new named sections are added
- # which each include a distinct ``sqlalchemy.url`` entry. A custom value
- # ``databases`` is added which indicates a listing of the per-database sections.
- # The ``databases`` entry as well as the URLs present in the ``[engine1]``
- # and ``[engine2]`` sections continue to be consumed by the user-maintained env.py
- # script only.
- databases = engine1, engine2
- [engine1]
- sqlalchemy.url = driver://user:pass@localhost/dbname
- [engine2]
- sqlalchemy.url = driver://user:pass@localhost/dbname2
- [post_write_hooks]
- # post_write_hooks defines scripts or Python functions that are run
- # on newly generated revision scripts. See the documentation for further
- # detail and examples
- # format using "black" - use the console_scripts runner, against the "black" entrypoint
- # hooks = black
- # black.type = console_scripts
- # black.entrypoint = black
- # black.options = -l 79 REVISION_SCRIPT_FILENAME
- # lint with attempts to fix using "ruff" - use the module runner, against the "ruff" module
- # hooks = ruff
- # ruff.type = module
- # ruff.module = ruff
- # ruff.options = check --fix REVISION_SCRIPT_FILENAME
- # Alternatively, use the exec runner to execute a binary found on your PATH
- # hooks = ruff
- # ruff.type = exec
- # ruff.executable = ruff
- # ruff.options = check --fix REVISION_SCRIPT_FILENAME
- # Logging configuration. This is also consumed by the user-maintained
- # env.py script only.
- [loggers]
- keys = root,sqlalchemy,alembic
- [handlers]
- keys = console
- [formatters]
- keys = generic
- [logger_root]
- level = WARNING
- handlers = console
- qualname =
- [logger_sqlalchemy]
- level = WARNING
- handlers =
- qualname = sqlalchemy.engine
- [logger_alembic]
- level = INFO
- handlers =
- qualname = alembic
- [handler_console]
- class = StreamHandler
- args = (sys.stderr,)
- level = NOTSET
- formatter = generic
- [formatter_generic]
- format = %(levelname)-5.5s [%(name)s] %(message)s
- datefmt = %H:%M:%S
|