dreamproduction/cli-migrate

此包最新版本(1.0.2)没有可用的许可信息。

一个用于执行脚本迁移管理的包。

安装: 583

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 0

语言:Python

1.0.2 2016-08-13 15:27 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:18:32 UTC


README

此工具运行 CLI 脚本。它与数据库迁移工具类似,但它运行 CLI 脚本。其理念是,有时您在代码部署后需要运行一些脚本,例如重建缓存或重新生成图像衍生物。此工具会跟踪已运行的脚本,并且不会再次运行它们。如果您需要自动化部署,这会很有帮助。

安装

先决条件:您需要安装 PyYAML。

对于 Mac,运行

pip install pyyaml

如果您未安装 pip,请运行

easy_install pip

如果您不想安装 pip,可以使用 easy_install 安装 PyYAML

easy_install pyyaml

对于 Linux,使用您的包管理器。示例

sudo apt-get install python-yaml
sudo yum install python-yaml

然后安装 cli-migrate 包。如果您有 composer

composer require dreamproduction/cli-manager

否则,只需克隆它。

然后,请确保可执行文件(bin/cli-migrate)位于您的路径中。

项目设置

在项目根目录中,您应该有一个 YAML 文件,名称为 .cli-migrate.config.yml。此文件应包含以下键

  • scripts_folder: 从项目根目录到您希望存储迁移脚本的文件夹的路径。
  • state_file: 存储迁移状态文件的名称(和路径,如果您希望)。

该包提供了一个配置文件(.cli-migrate.config.dist.yml),其中包含了大多数情况下选项的良好默认值。

您还应该配置您的版本控制系统,不要包含状态文件(默认 .cli-migrate.state.yml)。如果您使用 git,请在 .gitignore 中添加


# Ignore the state file for dreamproduction/cli-migrate
.cli-migrate.state.yml

如何使用它

首先,您需要定义您的迁移文件。 cli-migrate 提供了一个生成带有 year-month-day-hour:minute:second 格式日期的空可执行迁移文件的命令,以确保脚本按创建顺序执行。命令是

cli-migrate generate "Optional description of the migration. It is however a good practice to provide it. Only the first 6 words are used for the filename, but the whole description will be added to the migration file as a message displayed using echo"

然后您可以在其中编写代码,提交它们,无论您何时部署代码或同事拉取您的代码,唯一需要执行的操作是

cli-migrate run

已执行的迁移脚本将记录在状态文件中,并且不会再次执行。