Travis CI:扩展

为核心插件设置Travis CI

要在travis上添加构建,你必须首先在travisci.com上启用构建(或者找一个有足够权限的人为你做)。然后,必须创建.travis。通过运行下面的Matomo控制台命令为你的插件创建一个yml文件:

./console generate:travis-yml——plugin=MyNewPlugin

以确保.travis.yml会自动更新自己什么时候模板已更改,则需要使用——github-token参数或GITHUB_TOKENsecret可以在Travis CI repo设置中设置。

不同.travis。yml行为

你可以控制生成的.travis。Yml文件的行为,通过在你的.travis中设置某些环境变量。yml文件。

这些变量可以让你下载其他的,针对特定的Matomo版本测试你的插件等等。

下面是所有支持的环境变量列表:

  • TEST_AGAINST_PIWIK_BRANCH

    这个变量可以设置为一个分支,标签或提交散列,以测试你的插件。

    这个变量不应该被设置为全局环境变量,而是应该作为一个条目添加到.travis中。yml文件的矩阵:部分,如:

    env: matrix: - TEST_SUITE=PluginTests MYSQL_ADAPTER=PDO_MYSQL TEST_AGAINST_PIWIK_BRANCH=分支名
  • PROTECTED_ARTIFACTS

    这个变量控制构建工件是否上传到builds-artifacts.www.hju8.com上的密码保护文件夹。如果您正在构建一个插件,并且需要保护您的工件,请联系Matomo团队了解更多。

    使用受保护的工件需要在生成.travis. xml文件时提供工件密码。Yml文件——artifacts-pass参数或被设置为ARTIFACTS_PASS秘密在特拉维斯CI回购设置。

    默认情况下,插件的构件存储在公共文件夹中。若要更改此行为,请设置PROTECTED_ARTIFACTS = 1作为一个全局环境变量,例如:

    env: global:—PROTECTED_ARTIFACTS=1
  • SKIP_COMPOSER_INSTALL

    如果设置为1,则作曲家安装步骤将被跳过。这可用于加快不需要安装编写器的构建。

    可以为所有构建设置全局环境变量,也可以为单个构建设置在矩阵中。

  • SKIP_PIWIK_TEST_PREPARE

    如果设置为1,则不执行prepare.sh/setup_webserver.sh脚本。这可以用来加速不执行PHP测试或需要运行Matomo的web服务器的构建。

    可以为所有构建设置全局环境变量,也可以为单个构建设置在矩阵中。

  • TRAVIS_COMMITTER_NAME

  • TRAVIS_COMMITTER_EMAIL

    这些变量控制用户名和电子邮件地址,当从travis构建中提交更改时使用。

    当。travis。Yml文件是自动更新的,Travis构建将提交更改并将其推送到插件的git存储库。提交者的用户名和电子邮件地址由这些变量决定。

    TRAVIS_COMMITTER_NAME默认为Matomo自动化TRAVIS_COMMITTER_EMAIL默认为hello@www.hju8.com

    使用示例:

    env: global: - TRAVIS_COMMITTER_NAME=“我的组织自动化”- TRAVIS_COMMITTER_EMAIL=my-org@myorg.com

延长.travis。yml行为

使用MySQL或PHP以外技术的插件可能需要额外的设置和安装步骤,在运行测试之前在travis上执行。

LoginLdap例如,OpenLDAP需要在一个活跃的LDAP服务器上进行测试,因此需要在travis上安装和设置OpenLDAP。为了做到这一点,LoginLdap向生成的.travis中添加额外的步骤。yml文件。

在插件的.travis中添加额外的步骤。Yml文件,创建一个/测试/特拉维斯在你的插件中添加一个或多个特殊的。yml文件:

  • before_install.before.yml
  • before_install.after.yml
  • install.before.yml
  • install.after.yml
  • before_script.before.yml
  • before_script.after.yml
  • after_script.before.yml
  • after_script.after.yml
  • after_success.before.yml
  • after_success.after.yml

的内容XXX.before.yml文件将被前置到你的.travis的特定部分。Yml文件,而内容XXX.after.yml文件将被追加。

注意:您不能简单地手动将这些更改添加到.travis。Yml文件,因为它们将被覆盖在下一个生成:travis-yml执行。

修改.travis。Yml发电系统

用于生成.travis的系统。yml文件在TestRunner插件中定义。如果你需要修改它,这里有一些注意事项要记住:

生成新的。travis。yml部分

这个.twig文件用于生成.travis. txt文件。yml文件:https://github.com/matomo-org/travis-scripts/blob/master/generator/templates/travis.yml.twig

如果你想在生成的.travis中添加一个新的section。Yml输出,你必须同时将section添加到travis.yml.twig文件中将section的名称添加到这个数组中:https://github.com/matomo-org/travis-scripts/blob/master/generator/TravisYmlView.php#L26

如果不添加,系统会将该section视为需要保留的section,在渲染树枝模板后再次输出。

Baidu