[英]Continuous integration is there any job naming conventions in the jenkins
我想知道在持续集成中是否存在任何作业命名约定。 我们正在将 Jenkins 用于 Ci,请提出建议。
命名约定应该是这样的,环境,服务,目的构建或部署等。
任何其他建议表示赞赏。
我正在使用这样的约定:
<primary purpose of the job | uppercase>_<(GitHub) project name>_<branch name / additional info>
所以工作将被命名为
BUILD_my-project
DEPLOY_my-project_staging
TEST_my-project_staging
UTILITY_install-helpful-tool_staging
INFRA_run-job-dsl
为了使事情更容易维护,尤其是在使用 JobDSL 时,我更喜欢不为作业使用单独的显示名称,代价是作业名称中同时包含连字符和下划线。
回答起来有点困难,因为 Jenkins 中没有关于命名约定的官方规则。 通常,每个组织都会定义自己的规则。 (这些规则可能是关于存储库名称,项目,版本,...)当您使用像 嵌套视图插件这样的插件时,具有命名约定很有用。 想一想如果您可以采用命名约定,您将拥有哪些不同类型的工作。 作业名称中的空格可能会使远程调用此作业变得困难,因此不建议这样做。
在 Jenkins 中使用名称约定的示例:
对于常规作业,我们以 git 存储库名称命名 Jenkins 作业。 例如,“ceph-deploy”包位于https://github.com/ceph/ceph-deploy ,因此作业名称是“ceph-deploy”。
我认为最好的答案是:视情况而定。 每个用例可能需要一个自定义的约定。
使用相同 Jenkins 的团队越多,为了正确管理角色和权限,约定就越复杂。
如果您想创建自己的约定,您还可以查找 Java/C#/python/powershell 命名约定以找到有用的想法。
一般来说,我会选择 PREFIX_Name_SUFFIX:
- PREFIX: [a-zA-Z0-9]{3,5} (might be skipped if complexity level is low)
- Name: [a-zA-Z0-9-]+
- SUFFIX: [a-zA-Z0-9]{3,5} (might be skipped if complexity level is low)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.