随着 DevOps 实践的不断加深,我们的客户也需要更高的效率和自动化控制。极狐 GitLab Kubernetes Agent 现已上线,可帮助你从快速、基于拉取(pull-based)的部署中获益,而极狐 GitLab 可以管理代理的必要服务器端组件。
通过合规流水线配置,你可自定义强制执行的流水线,应用于任何指定了相应合规框架的项目。
极狐GitLab13.11发布的13个主要功能
- 合规流水线的配置
现在可以对指定了合规(compliance)框架的项目,配置强制执行的流水线。
-
对于希望在流水线工作流程中实施合规要求的团队来说,现在可以通过为特定的合规框架设置一条流水线,来强制执行更多的职责分工。
-
所有使用该框架的项目将自动包含预定义的流水线。在下游项目中,用户可以扩展,但不能修改这些的流水线配置,确保每次都以相同的方式运行合规步骤。
此功能节省了安全和合规团队的时间,因为不需要手动复制流水线配置到每个需要它的项目,然后有监控功能来防止编辑或删除配置。开发团队只要关注遵循政策,而无需成为合规方面的专家。
- 创建自定义的合规框架标签
极狐GitLab目前提供了几个预定义的合规框架标签,如 GDPR、HIPAA、PCI-DSS、SOC 2 和 SOX。
在这个版本中,你现在可以添加自定义框架。这使你能够为你自己的特定框架和流程定制标签。在未来,你将能够创建基于该标签的项目的政策。
- On-call排班管理
出现问题的时候,你需要一个团队(或多个团队!)来快速有效地应对服务中断的情况。
On-call是一个有压力的工作,为了更好地管理压力和倦怠,大多数团队都会轮流承担这种待命责任。
- 极狐GitLab的On-call排班管理允许你和你的团队创建和管理On-call工作的时间表。
- 在极狐GitLab中通过HTTP端点收到的警报,会被转发给对应项目的排版日程表中的待命工程师。
- 用管理模式重新认证极狐GitLab管理
极狐GitLab现在推出管理模式,帮助管理员通过同一账户来安全地工作。
-
当管理模式未被激活时,管理员拥有与普通用户相同的权限。在运行管理命令之前,管理员用户必须重新验证他们的凭证。
-
管理模式通过对敏感操作和数据的保护,增加了实例的安全性。
- 导出用户访问报告
注重合规性的企业经常需要审计其用户对公司系统和资源的访问。以前,在GitLab中实现这一目标需要使用我们的审计相关的API建立自定义工具来收集你需要的数据。
现在只需在自助管理版极狐GitLab实例的管理区域点击一个导出按钮,就可以获得一个CSV文件,其中包含所有用户的列表和他们可以访问的群组、子组和项目。在更短的时间内对用户的访问进行审计,现在变得更加容易了。
- 在同一作业中使用多个缓存
-
极狐GitLab CI/CD提供了一个缓存机制,任务在运行的时候,可以节省宝贵的开发时间。以前,在同一个作业中不可以配置多个缓存键。
-
这个限制导致你需要使用制品(artifact)来进行缓存,或使用不同缓存路径的重复的任务(job)。在这个版本中,我们提供了在一个任务中配置多个缓存键的能力,这将帮助提高你的流水线性能。
- 追踪 DORA 4 变更前置时间的指标
衡量你的软件开发生命周期的效率是任何组织发展 DevOps 的重要步骤。在上一个里程碑中,我们增加了对项目层面上的变更准备时间的 API 支持。这些指标给出了对流程运转的衡量,所以你知道代码被提交和部署到生产环境需要多长时间。在这个版本中,你可以在极狐 GitLab 界面中的 CI/CD 仪表板访问这一功能,有一个新的图表显示变更前置时间,并在不同的时间范围下查看该指标,如上周、上个月或过去 90 天。除了新的图表,我们还在组的层级上增加了对该 API 的支持,允许你查看该组下所有项目的变更前置时间指标的综合结果。
- 极狐GitLab+Semgrep:为 SAST 的未来升级
极狐GitLab的SAST是由十几个开源静态安全分析支持的。这些分析器每月为使用极狐 GitLab 的开发者主动发现数百万个漏洞。这些分析器中的每一个组件都是对特定的语言,并用不同的技术方法进行扫描。这些差异给我们更新、管理和维护功能带来了额外的工作量,也给调试的人带来了困惑。
极狐 GitLab 静态分析团队一直在不断评估新的安全分析器。来自 r2c 开发团队的新工具 Semgrep 给我们留下了深刻印象。它是一个快速、开源的静态分析工具,用于查找漏洞和执行代码标准。Semgrep 的规则看起来就像代码,这意味着你可以编写自己的规则,而不必理解抽象语法树(AST)或与重码纠缠。
Semgrep 灵活的规则语法是简化极狐 GitLab 的自定义规则集功能的理想选择,可以扩展和修改检测的规则,这是极狐 GitLab 的 SAST 客户的普遍需求。Semgrep 还拥有一个由 1000 多个社区规则组成的不断增长的开源注册表。
- 创建发行版的命令行工具(release CLI)支持自定义 CA 证书
截至目前,如果你使用的是极狐 GitLab 的自助管理版,创建发行版的命令行工具只支持公共证书,但不能使用自己的自定义证书。在极狐 GitLab 13.11 中,我们通过使用 ADDITIONAL_CA_CERT_BUNDLE 环境变量或--additional-ca-cert-bundle 标志,增加了对自定义证书机构(CA)证书的支持。此外,还增加了 INSECURE_HTTPS 环境变量和--insecure-https 标志,这样客户端就可以跳过对服务器证书的验证,因为自定义 SSL 证书通常会失败,因为它不是由公共 CA 签署。
- 针对议题和合并请求的实例和群组描述模板
现在你不用在几十个项目中手动更新相同的描述模板,而可以在一个资源库中集中管理你的模板。我们已经扩展了实例和群组文件的模板,包括了议题和合并请求的描述模板。当你在文件模板库中创建一个.gitlab 目录时,描述模板将可用于属于该实例或群组的所有项目。每个群组或子组还可以设置一个额外的模板库,这将使来自多个文件模板库的模板逐级下传到你的子组和项目。
- CI/CD 流水线中的可选项 DAG(‘needs:’)任务
极狐 GitLabCI/CD 中的有向无环图(DAG)让你可以使用 needs 语法来配置一个任务,让它能在自己的阶段开始前启动(一旦它依赖的作业完成)。我们还有 rules、only 或 except 等关键字,这些关键字决定一个任务是否被添加到流水线中。但是,如果你将 needs 语法与这些其他关键字结合起来,当一个依赖任务没有被添加到流水线时,你的流水线有可能失败。
- 群组级别的特定环境(environment-specific)变量
许多组织喜欢在群组级别(group level)指定 secret 和其他环境变量,因为它与团队的边界或信任等级很一致。到目前为止,群组级别的环境变量会应用到所有的环境,这限制了它们在很多用例中的可用性。今天,我们正在发布组级别的特定环境变量。
- 使用极狐 GitLab Operator 在 OpenShift 和 Kubernetes 上部署极狐 GitLab(测试版)
极狐 GitLab 正在致力于为 OpenShift 提供全面支持。为了实现这一目标,我们已经发布了 MVP 产品极狐 GitLabOperator,旨在管理 Kubernetes 和 OpenShift 容器平台上的极狐 GitLab 实例的整个生命周期。目前,这是一个测试版,不建议在生产环境中使用。下一步将是正式发布(GA)。未来,极狐 GitlabOperator 将成为 Kubernetes 和 OpenShift 的推荐安装方法,而极狐 GitLabHelm 仍将被支持。欢迎试用这个功能,并在我们的议题追踪器上提供反馈。