【问题标题】:Create new database when creating a new branch GitLab CI/CD创建新分支 GitLab CI/CD 时创建新数据库
【发布时间】:2021-12-24 18:46:01
【问题描述】:

我的主分支有一个数据库。我想保持我的主分支与发布版本相同,因此我无法更改数据库以进行更新。

因为我同时处理不同的更新,切换数据库的工作量很大,所以我想自动完成。我已经有一个函数可以检查我正在工作的分支并将我的数据库设置更改为正确的数据库。

我正在考虑在创建新分支时自动创建数据库。但我不知道这在 GitLab 中是否可行。

创建新分支时是否可以将主数据库复制到新数据库?如果是这样,我可以查看任何文档吗?

【问题讨论】:

标签: mysql git gitlab cicd


【解决方案1】:

如果数据库名称是 git 分支名称 你可以使用 gitlab 预定义的变量和一些 shell 脚本来做到这一点。

.gitlab-ci.yml 结构如下:

// .gitlab-ci.yml

stages:
  - prepare

create_database:
  stage:
    prepare
  script:
    - ./common_shell_script.sh
    - if databse_exist then; $CI_COMMIT_BRANCH; exit 0; if;
    - copy_database $CI_DEFAULT_BRANCH $CI_COMMIT_BRANCH

// common_shell_script.sh

function database_exist() {
    // check database exist
    // if exist then;
    //     return true;
    // fi
    // return false;
}

function copy_database()  {
    // copy from $1 to $2
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-06
    • 1970-01-01
    • 2021-08-15
    • 2017-06-09
    • 2021-02-23
    • 2021-09-06
    • 2020-01-08
    • 1970-01-01
    相关资源
    最近更新 更多