Mar 28, 2021 - 极狐Gitlab  
13.11

极狐GitLab 13.11发布,含Kubernetes Agent和流水线合规性

本次升级包含Kubernetes Agent和流水线合规性、On-call管理,用户报告导出等50多项内容。

随着DevOps实践的不断加深,我们的客户也需要更高的效率和自动化控制。极狐GitLabKubernetes Agent现已上线,可帮助你从快速、基于拉取(pull-based)的部署中获益,而极狐GitLab可以管理代理的必要服务器端组件。通过合规流水线配置,你可自定义强制执行的流水线,应用于任何指定了相应合规框架的项目。我们还有大量的功能来提高流水线的效率和度量,提供On-call管理,以及更多的安全增强功能。而这些只是此版本中50多个重要的新功能和改进升级中的一部分。Controls to help you grow safely and efficiently

安全和有效增长的控制措施

控制措施可以使你的自动化在增长和扩大规模的过程中保持正轨,同时简化合规工作。极狐GitLab Kubernetes Agent是极狐GitLab的Kubernetes集成的核心,现在可以在极狐GitLab上使用。基于代理的集成支持基于拉取(Pull-based)的部署,这是安全的首选,并迅速成为Kubernetes部署实践中的流行方法。该代理还支持网络安全策略集成和警报,从而在集群内实现精准的RBAC控制。合规流水线配置可实现更高的职责分离,并通过定义可执行的流水线来减少业务风险,这些流水线将运行于分配了相应的合规框架的任何项目。同时,自定义合规性框架标签允许你使用自定义,而不仅是PCI、HIPPA之类的通用规范。新的管理模式通过要求管理用户在运行管理命令之前重新验证他们的凭证,增加了对极狐GitLab实例的安全和控制。审计报告变得更加便利,在自助管理版的极狐GitLab实例中,有一个新的导出功能,可以在同一个报告中看到用户可以访问哪些组、子组和项目。

更快的流水线

"快速、可靠的流水线 "是此次发布的产品核心主题之一,我们在本月通过一系列的流水线改进兑现了这一承诺。 流水线编辑器帮助你更快地启动工作,并在工作开始后保持更高的生产力。新的空状态增强功能将允许新用户在一个新的、空白的流水线文件上开始直接使用流水线编辑器,而不必先创建一个配置文件。在一个作业中配置多个缓存键的能力将帮助你提高流水线性能,你可以从CI/CD仪表板上衡量这些改进,其中一个新的DORA 4图表将通过代码提交和部署到生产的时间来显示变更的准备时间。与此相关的是,关于DevOps采用率指标现在可以用于群组层面,让用户了解极狐GitLab的DevOps各项能力的使用情况。

确保你的软件供应链安全

安全专家会很高兴看到我们增加了Semgrep灵活的规则语法来扩展和修改自定义检测规则,这是极狐GitLab SAST客户的普遍要求。我们还增加了对自定义证书和密钥到期的电子邮件提醒的支持。现在你可以通过对Git操作强制执行SAML来提高你的安全态势。新的On-call管理将极狐GitLab中收到的警报传送给该项目日程表中的值班工程师。这对我们未来安全警报能力的成熟会特别的帮助,因为它提供了一个非常重要的事件管理能力,该能力在整个DevOps过程中具有端到端的可见性。 继续阅读,了解更多的功能、性能增强和变化!

极狐GitLab13.11发布的主要功能

合规流水线的配置

标准版 专业版 旗舰版 (黑色表示该版本不具备此功能,橙色表示该版本具备)

我们很高兴地宣布,现在可以对指定了合规(compliance)框架的项目,配置强制执行的流水线。 对于希望在流水线工作流程中实施合规要求的团队来说,他们现在可以通过为特定的合规框架设置一条流水线,来强制执行更多的职责分工。所有使用该框架的项目将自动包含预定义的流水线。在下游项目中,用户可以扩展,但不能修改这些的流水线配置,确保每次都以相同的方式运行合规步骤。 此功能节省了安全和合规团队的时间,因为不需要手动复制流水线配置到每个需要它的项目,然后有监控功能来防止编辑或删除配置。开发团队只要关注遵循政策,而无需成为合规方面的专家。 为合规框架定义一个合规性流水线配置,是一个可以确保组织能始终满足监管要求的有效措施,同时节省每个人的时间,并鼓励安全/合规团队和开发团队之间的合作。

创建自定义的合规框架标签

标准版 专业版 旗舰版

极狐GitLab目前提供了几个预定义的合规框架标签,如GDPR、HIPAA、PCI-DSS、SOC 2和SOX。在这个版本中,你现在可以添加自定义框架。这使你能够为你自己的特定框架和流程定制标签。在未来,你将能够创建基于该标签的项目的政策。

img

On-call 排班管理

标准版 专业版 旗舰版

软件服务没有休息时段因为客户都期望24*7的可用性。出现问题的时候,你需要一个团队(或多个团队!)来快速有效地应对服务中断的情况。 On-call是一个有压力的工作,为了更好地管理压力和倦怠,大多数团队都会轮流承担这种待命责任。极狐GitLab的On-call排班管理允许你和你的团队创建和管理On-call工作的时间表。在极狐GitLab中通过HTTP端点收到的警报,会被转发给对应项目的排版日程表中的待命工程师。

用管理模式重新认证极狐GitLab管理

标准版 专业版 旗舰版

极狐GitLab现在推出管理模式,帮助管理员通过同一账户来安全地工作。当管理模式未被激活时,管理员拥有与普通用户相同的权限。在运行管理命令之前,管理员用户必须重新验证他们的凭证。管理模式通过对敏感操作和数据的保护,增加了实例的安全性。 感谢来自西门子的Diego Louzán的贡献。没有他的坚持不懈,就没有管理模式这个功能,这项功能开发了一年之久。 img

导出用户访问报告

标准版 专业版 旗舰版

注重合规性的企业经常需要审计其用户对公司系统和资源的访问。以前,在GitLab中实现这一目标需要使用我们的审计相关的API建立自定义工具来收集你需要的数据。 现在,你只需在自助管理版极狐GitLab实例的管理区域点击一个导出按钮,就可以获得一个CSV文件,其中包含所有用户的列表和他们可以访问的群组、子组和项目。在更短的时间内对用户的访问进行审计,现在变得更加容易了。

img

在同一作业中使用多个缓存

标准版 专业版 旗舰版

极狐GitLab CI/CD提供了一个缓存机制,任务在运行的时候,可以节省宝贵的开发时间。以前,在同一个作业中不可以配置多个缓存键。这个限制导致你需要使用制品(artifact)来进行缓存,或使用不同缓存路径的重复的任务(job)。在这个版本中,我们提供了在一个任务中配置多个缓存键的能力,这将帮助提高你的流水线性能。

img

追踪DORA 4变更前置时间的指标

标准版 专业版 旗舰版

衡量你的软件开发生命周期的效率是任何组织发展DevOps的重要步骤。在上一个里程碑中,我们增加了对项目层面上的变更准备时间的API支持。这些指标给出了对流程运转的衡量,所以你知道代码被提交和部署到生产环境需要多长时间。在这个版本中,你可以在极狐GitLab界面中的CI/CD仪表板访问这一功能,有一个新的图表显示变更前置时间,并在不同的时间范围下查看该指标,如上周、上个月或过去90天。除了新的图表,我们还在组的层级上增加了对该API的支持,允许你查看该组下所有项目的变更前置时间指标的综合结果。

img

极狐GitLab+Semgrep:为SAST的未来升级

标准版 专业版 旗舰版

极狐GitLab的SAST是由十几个开源静态安全分析支持的。这些分析器每月为使用极狐GitLab的开发者主动发现数百万个漏洞。这些分析器中的每一个组件都是对特定的语言,并用不同的技术方法进行扫描。这些差异给我们更新、管理和维护功能带来了额外的工作量,也给调试的人带来了困惑。 极狐GitLab静态分析团队一直在不断评估新的安全分析器。来自r2c开发团队的新工具Semgrep给我们留下了深刻印象。它是一个快速、开源的静态分析工具,用于查找漏洞和执行代码标准。Semgrep的规则看起来就像代码,这意味着你可以编写自己的规则,而不必理解抽象语法树(AST)或与重码纠缠。 Semgrep灵活的规则语法是简化极狐GitLab的自定义规则集功能的理想选择,可以扩展和修改检测的规则,这是极狐GitLab的SAST客户的普遍需求。Semgrep还拥有一个由1000多个社区规则组成的不断增长的开源注册表。 我们正在将我们许多基于lint的SAST分析器过渡到Semgrep。这一过渡将有助于提高稳定性、性能和规则覆盖率,并允许极狐GitLab客户访问Semgrep的社区规则,同时我们将在未来增加的额外的自定义规则集功能。我们很高兴能与r2c团队合作,迫不及待地想把我们更多的分析器过渡到Semgrep。你可以在我们的过渡史诗中读到更多的内容,或者尝试一下我们第一批用于JavaScript、TypeScript和Python的实验性的Semgrep分析器。 我们很高兴看到这一转变,对极狐GitLabSAST和更大的Semgrep社区的未来意义重大。极狐GitLab将为Semgrep开源项目做出贡献,包括额外的规则,以确保覆盖率符合或超过我们现有的分析器。

创建发行版的命令行工具(release CLI)支持自定义CA证书

标准版 专业版 旗舰版

截至目前,如果你使用的是极狐GitLab的自助管理版,创建发行版的命令行工具只支持公共证书,但不能使用自己的自定义证书。在极狐GitLab 13.11中,我们通过使用ADDITIONAL_CA_CERT_BUNDLE环境变量或--additional-ca-cert-bundle标志,增加了对自定义证书机构(CA)证书的支持。此外,还增加了INSECURE_HTTPS环境变量和--insecure-https标志,这样客户端就可以跳过对服务器证书的验证,因为自定义SSL证书通常会失败,因为它不是由公共CA签署。 img

针对议题和合并请求的实例和群组描述模板

标准版 专业版 旗舰版

现在你不用在几十个项目中手动更新相同的描述模板,而可以在一个资源库中集中管理你的模板。我们已经扩展了实例和群组文件的模板,包括了议题和合并请求的描述模板。当你在文件模板库中创建一个.gitlab目录时,描述模板将可用于属于该实例或群组的所有项目。每个群组或子组还可以设置一个额外的模板库,这将使来自多个文件模板库的模板逐级下传到你的子组和项目。 img

CI/CD流水线中的可选项DAG(‘needs:’)任务

标准版 专业版 旗舰版

极狐GitLabCI/CD中的有向无环图(DAG)让你可以使用needs语法来配置一个任务,让它能在自己的阶段开始前启动(一旦它依赖的作业完成)。我们还有rulesonlyexcept等关键字,这些关键字决定一个任务是否被添加到流水线中。但是,如果你将needs语法与这些其他关键字结合起来,当一个依赖任务没有被添加到流水线时,你的流水线有可能失败。 在这个版本中,我们在DAG任务的needs语法中加入了optional关键字。如果一个依赖任务被标记为optional但不存在于流水线中,那么needs任务会忽略它。如果该任务被标记为optional,并且存在于流水线中,那么needs任务会等它完成再开始。随着DAG越来越受欢迎,这个功能更简单安全地和rulesonlyexcept关键字结合。 img

群组级别的特定环境(environment-specific)变量

标准版 专业版 旗舰版

许多组织喜欢在群组级别(group level)指定secret和其他环境变量,因为它与团队的边界或信任等级很一致。到目前为止,群组级别的环境变量会应用到所有的环境,这限制了它们在很多用例中的可用性。今天,我们正在发布组级别的特定环境变量。 这一变化延伸了项目层面上的类似功能。从现在开始,群组的维护者可以指定环境使用某个特定的变量。 img

使用极狐GitLab Operator在OpenShift和Kubernetes上部署极狐GitLab(测试版)

标准版 专业版 旗舰版

极狐GitLab正在致力于为OpenShift提供全面支持。为了实现这一目标,我们已经发布了MVP产品极狐GitLabOperator,旨在管理Kubernetes和OpenShift容器平台上的极狐GitLab实例的整个生命周期。目前,这是一个测试版,不建议在生产环境中使用。下一步将是正式发布(GA)。未来,极狐GitlabOperator将成为Kubernetes和OpenShift的推荐安装方法,而极狐GitLabHelm仍将被支持。欢迎试用这个功能,并在我们的议题追踪器上提供反馈。

img

极狐GitLab 13.11 主要功能

Cover image licensed under CC0

30天免费试用极狐GitLab专业版

极狐GitLab不仅是源代码管理或CI/CD工具,它是一个覆盖完整软件开发生命周期和DevOps的开放式一体化平台。

免费试用
Git为Software Freedom Conservancy的注册商标,GitLab为GitLab B.V.的注册商标,我们已获授权使用“极狐GitLab”。
Gitlab x icon svg