gitlab是什么表,gitlab简介和使用

首页 > 技术 > 作者:YD1662022-12-12 15:25:21

容器扫描与 Trivy 集成(ULTIMATE)

GitLab中的容器扫描现在默认使用Trivy引擎。此更改为客户提供更及时的漏洞情报更新、更准确的结果以及对更多操作系统的支持。使用默认设置运行容器扫描的用户会无缝自动切换到GitLab 14.0中的新引擎。

gitlab是什么表,gitlab简介和使用(21)

SAST分析器固定到特定的版本

随着GitLab安全扫描工具的成熟,需要为发布过程添加更多的粒度。此前,GitLab 为所有的分析器和工具共享了一个主要版本号。这要求所有工具共享一个主要版本并防止使用语义版本编号。从14.0开始,GitLab SAST 删除了托管的 SAST.gitlab-ci.yml CI 模板中的全局变量SAST_ANALYZER_IMAGE_TAG,以支持分析器作业变量在 SAST 供应商模板中设置“major.minor”标签。每个分析器作业现在都有一个作用域SAST_ANALYZER_IMAGE_TAG变量,该变量将由 GitLab 主动管理并设置为相应分析器的“主要”标签。要固定到特定版本,只需将变量值更改为特定版本标记。如果覆盖或维护自定义版本,SAST.gitlab-ci.yml将需要更新CI模板以停止引用全局SAST_ANALYZER_IMAGE_TAG并将其移动到范围分析器作业标签。强烈鼓励继承和覆盖托管 CI 模板,以确保CI模板面向未来。此更改将允许使用固定major.minor版本更精细地控制未来的分析器更新。

静态分析分析器更新

GitLab 静态分析由一组许多安全分析器组成,GitLab 静态分析团队积极管理、维护和更新这些分析器。14.0发布的分析器更新包括覆盖范围、错误修复和改进。

Semgrep更新到2.8.0版;

修复了多行通用模式的错误行号;

使用SAST_EXCLUDED_PATHS 传递给 semgrep 以在semgrep运行时排除;

性能优化;

将url添加到报告中规则的主要标识符以链接到基础规则;

GoSec更新到3.1.0版;

移除SAST_GOSEC_CONFIG支持;

添加COMPILE变量以支持在需要时跳过依赖项获取;

添加GOSEC_GO_PKG_PATH变量以提供设置go构建应用程序的位置的选项;

更新依赖获取以仅下载包而不是构建/安装默认情况下:

Flawfinder 更新至2.0.17版;

SpotBugs更新至2.28.3版;

更新的依赖项:

PMD-Apex更新到版本 2.12.3:提高规则准确性,修复错误。

ESLint更新到7.27.0版。

注意,该分析器计划在即将发布的版本中被Semgrep取代。

如果包含GitLab托管的供应商 SAST 模板(SAST.gitlab-ci.yml),则无需执行任何操作即可接收这些更新。但是,如果覆盖或自定义自己的CI模板,将需要更新CI配置。如果想继续使用任何分析器的特定版本,现在可以固定到分析器的次要版本。固定到以前的版本将阻止接收自动分析器更新,并要求在 CI 模板中手动增加分析器版本。

GitLab Chart改进

对于 GitLab 14.0,预计Kubernetes 的最低版本为 1.16。

Kubernetes 代理服务器 (KAS) 部署无法指定imagePullSecret。将导致 K8s 因未授权而失败。现在,随着 pullSecrets 的出现,镜像获取成功并且 Pod 启动。

Cert Manager升级到 1.2.0。

Grafana 镜像版本升级到 6.9.1。Chart部署的Grafana功能现在与Omnibus(在 7.5.5 上)相当。

GitLab Geo改进GA中对 PostgreSQL 高可用性的Geo支持(PREMIUM)

Patroni是PostgreSQL高可用性的解决方案,它也允许在Geo Secondary上配置高可用的PostgreSQL备用集群。当将辅助站点用作灾难恢复策略的一部分时,该配置很重要,因为它允许系统管理员镜像主站点和辅助站点上的数据库节点数量。这样在故障转移后,无需配置额外的数据库节点即可重新获得高可用性。

新版本中Geo使用Patroni为高度可用的PostgreSQL配置提供普遍可用的支持。

重新设计Geo站点仪表板(PREMIUM)

Geo复制和验证许多不同的数据类型。系统管理员需要监控其Geo站点的健康状况,以了解是否存在任何需要注意的问题,例如项目无法同步或校验和不匹配。重新设计的Geo站点仪表添加了更多有用的指标,例如数据类型的同步和验证摘要,以及各个数据类型组件的验证状态栏。还改进了页面的组织方式,减少了显示重要信息所需的点击次数。

gitlab是什么表,gitlab简介和使用(22)

Bug修复

14.0 中的一些值得注意的错误修复是:

清理策略可能会卡在正在进行的状态;

漏洞报告上的活动过滤器在组级仪表板上引发错误;

管道安全选项卡上的扫描器过滤器不过滤结果;

在容器扫描中未找到误导性 Dockerfile 错误;

每日容器扫描更新被破坏;

cilium 1.8.1 图表在最新版本的 GKE 中表现不佳;

共享过滤搜索栏不允许选择多个标签;

VSA - 删除标签过滤器后无法添加新标签过滤器;

VSA - 无法删除或编辑持久化的默认阶段;

DevOps采纳工具提示显示不正确的数据;

生产力分析:趋势线图表未加载,因为n.response未定义;

标签过滤不适用于 Slack 通知集成;

diffs_metadata 返回 500 错误;

无法编辑具有未选中可合并性状态的 MR;

无法查看合并请求的旧差异版本;

除非选中、保存和取消选中,否则“防止作者批准 MR”将被忽略;

SSH 密钥过期通知电子邮件未针对过去已过期的 SSH 密钥发送;

项目永远陷入索引并使用大量资源;

全局搜索结果中的合并请求引用错误;

“取消管道”按钮在未经许可的情况下对用户可见;

只有external_pull_requests更改不起作用;

使用可选需求会导致管道视图中出现渲染错误;

将用户首选项中的正确 Gitpod URL 用于自我管理的实例;

修复gitlab:incoming_email:check13.12 更改后的 rake 任务;

从需求导出中的描述字段中删除额外的字符;

使用非唯一项目后缀时防止服务台电子邮件被拒绝;

修复一些不适用于 GraphQL 板列表的过滤器;

GraphQL EpicsResolver 不处理timeframe参数;

无法为以前可以启用的项目启用通知开关;

stateDiagram-v2不呈现带有状态描述的美人鱼;

延迟更新打开合并请求并在 Geo 二级上发布计数徽章;

性能改进

在每个版本中,我们都继续大步提高 GitLab 的性能。我们致力于使每个 GitLab 实例更快。这包括 GitLab.com,一个拥有超过 100 万用户的实例!

在 GitLab 14.0 中,我们正在为问题、项目、里程碑等提供性能改进!GitLab 14.0 的一些改进是:

提高负载下合并请求列表 API 的性能;

UpdateMergeRequestsWorker 可能很贵;

引用Epic中的 N 1 问题;

启用片段以使用参考过滤器缓存;

启用标签以使用参考过滤器缓存;

可用性改进

在GitLab14.0中,在问题、项目、里程碑等提供可用性改进。重点改善包括:

组概览分析:用单个stat替换指标卡。

显示与包关联的哈希值。

当合并请求中的最新管道未通过时,将“Start/Add Merge Train”按钮设为红色。

功能变更和删除

NFS for Git存储库存储

迁移日期:2022 年6月22 日

随着 Gitaly Cluster普遍可用性, GitLab 14.0中停止NFS for Git存储库存储的的开发(错误修复、性能改进等)。将在 14.x 中继续为Git存储库的NFS 提供技术支持,但在GitLab 15.0中删除对 NFS 的所有支持。

Gitaly Cluster提供了巨大的好处,例如:

可变复制因子。

强一致性。

分布式读取能力。

当前使用 NFS for Git 存储库的客户建议迁移到 Gitaly Cluster。

计划搬迁日期:

Terraform CI 模板的重大更改

迁移日期:20221年6月22 日

Terraform CI模板更新到最新版本。新模板是为 GitLab Managed Terraform 状态设置的,依赖于 GitLab terraform-images镜像,以围绕 GitLab 的基础设施即代码功能提供良好的用户体验。

当前稳定版和最新版模板不兼容,从 GitLab 14.0 开始,当前最新版模板成为稳定版模板,如果运行自定义init作业, Terraform 管道可能会遇到意外故障。

代码质量 RuboCop 支持已更改

默认情况下,如果使用代码质量模板,代码质量功能不支持 Ruby 2.6 。为了更好地支持 Ruby 的最新版本,默认的 RuboCop 版本已更新,以添加对 Ruby 2.4 到 3.0 的支持。因此,删除了对 Ruby 2.1、2.2 和 2.3 的支持。

容器扫描引擎 Clair

默认容器扫描引擎 Clair 在 GitLab 13.9 中已弃用,并在GitLab 14.0中删除并由 Trivy 取代。

DAST 环境变量重命名和删除

GitLab 13.8 重命名了多个环境变量,以支持它们在不同工作流程中的更广泛使用。在 GitLab 14.0 中,旧变量已被永久删除。使用这些变量的任何配置都必须更新为新的变量名称。在 GitLab 14.0 及更高版本中使用这些变量的任何扫描都将无法正确配置。这些变量是:

DAST_AUTH_EXCLUDE_URLS ->DAST_EXCLUDE_URLS。

AUTH_EXCLUDE_URLS->DAST_EXCLUDE_URLS。

AUTH_USERNAME->DAST_USERNAME。

AUTH_PASSWORD->DAST_PASSWORD。

AUTH_USERNAME_FIELD->DAST_USERNAME_FIELD。

AUTH_PASSWORD_FIELD->DAST_PASSWORD_FIELD。

DAST_ZAP_USE_AJAX_SPIDER->DAST_USE_AJAX_SPIDER。

DAST_FULL_SCAN_DOMAIN_VALIDATION_REQUIRED将被删除

在 GitLab 14.0 中重命名默认浏览器性能测试作业

浏览器性能测试已在performance默认命名的作业中运行。随着GitLab 13.2 中引入负载性能测试,这种命名可能会令人困惑。要清楚其工作运行浏览器性能测试,默认作业名称从browser_performance改变performance到模板中。

默认 DAST 蜘蛛开始在目标 URL 处爬行

在 GitLab 14.0 中,DAST 删除了当前在开始爬虫时将扫描重置为主机名的方法。在 GitLab 14.0 之前,蜘蛛不会从 URL 的指定目标路径开始,而是会重置 URL 以在主机根目录开始爬行。GitLab 14.0改变为新变量默认DAST_SPIDER_START_AT_HOST以false更好地支持用户的开始抓取,并在指定的URL进行扫描,而不是主机根URL的意图。此更改有一个额外的好处:如果指定的路径不包含指向整个站点的链接,则扫描可以花费更少的时间。这样可以更轻松地扫描应用程序的较小部分,而不是在每次扫描期间抓取整个应用程序。

新存储库的默认分支名称为main

每个 Git 存储库都有一个初始分支,master默认命名。它是您创建新存储库时自动创建的第一个分支。未来的Git 版本会将Git 中的默认分支名称从master更改为main。与 Git 项目和更广泛的社区协调,GitLab 更改了SaaS和自 GitLab 14.0 开始的自建实例新项目的默认分支名称。这不会影响现有项目。

GitLab 已经引入了一些更改,允许在实例级别(自建实例用户)和组级别(对于 SaaS 和自建实例用户)更改默认分支名称。

GraphQL 删除字段

根据GraphQL删除流程,以下在 13.7 之前放弃的字段在 14.0中完全删除:

Mutations::Todos::MarkAllDone,Mutations::Todos::RestoreMany-:updated_ids Mutations::DastScannerProfiles::Create,Types::DastScannerProfileType-:global_id Types::SnippetType——:blob EE::Types::GroupType,EE::Types::QueryType-:vulnerabilities_count_by_day_and_severity DeprecatedMutations (concern**)-AddAwardEmoji,RemoveAwardEmoji,ToggleAwardEmoji EE::Types::DeprecatedMutations (concern***)-Mutations::Pipelines::RunDastScan,Mutations::Vulnerabilities::Dismiss,Mutations::Vulnerabilities::RevertToDetected

依赖扫描的删除

依赖扫描的一些删除生效。

以前,要排除 DS 分析器,您需要将其从默认的分析器列表中删除,并使用它来设置DS_DEFAULT_ANALYZERS项目 CI 模板中的变量。我们确定避免运行特定分析器而不失去新添加的分析器的好处应该更容易。因此,我们要求您在可用时从DS_DEFAULT_ANALYZERS到迁移DS_EXCLUDED_ANALYZERS。以前,为了防止 Gemnasium 分析器在运行时获取咨询数据库,您需要设置该GEMNASIUM_DB_UPDATE变量。但是,这没有正确记录,并且其命名与等效BUNDLER_AUDIT_UPDATE_DISABLED变量不一致。因此,我们要求您在可用时从GEMNASIUM_DB_UPDATE到迁移GEMNASIUM_UPDATE_DISABLED。

updated_at从部署 API删除过滤器

从项目部署 API接口提取数据以填充 GitLab 中的自定义仪表板,可能已经注意到没有办法限制 API 结果仅显示最新更改。为了克服这个问题,必须检索所有记录,逐一检查结果,并仅处理updated_at在检索到的最后一批中的最新值之后更新的记录。为了使这个过程更加高效和高效,该 API在 GitLab 14.0 中发生了变化。updated_after和updated_before参数将被替换finished_after和finished_before参数。这将使用户能够更有效地选择他们有兴趣检索的部署。

外部管道验证服务代码更改

对于使用实验性外部管道验证服务的自建实例,GitLab 接受的错误代码范围将减少。当前,当验证服务返回响应代码时,管道将失效从400 to 499。在 GitLab 14.0 及更高版本中,管道将406: Not Accepted仅对响应代码无效。

删除了Geo外部数据包装器设置

正如GitLab 13.3 中所宣布的,以下配置设置/etc/gitlab/gitlab.rb已在 14.0 中删除:

geo_secondary['db_fdw'] geo_postgresql['fdw_external_user'] geo_postgresql['fdw_external_password'] gitlab-_rails['geo_migrated_local_files_clean_up_worker_cron']

GitLab OAuth 隐式授权

GitLab 放弃OAuth 2 隐式授权流程,因为它已被OAuth 2.1删除。

从 14.0 开始,无法使用 OAuth 2 隐式授权流程创建新应用程序。14.4 不再支持现有的 OAuth 隐式授权流。在 14.4 版之前将现有应用程序迁移到其他受支持的OAuth2 流。

Container Registry 中的 GitLab Runner 助手镜像

在 14.0 中,从 GitLab Container Registry 而不是 Docker Hub 中提取 GitLab Runner助手镜像

GitLab Runner 安装忽略skel目录

在 GitLab Runner 14.0 中,安装过程skel在创建用户主目录时默认会忽略该目录。

Gitaly Cluster SQL 主选举人已被移除

现在 Praefect 支持每个存储库的主要选举策略,已经删除了sql选举策略。在per_repository选举战略是新的默认设置,如果没有指定的选举策略,会自动使用。

如果已经配置了sql选举策略,必须在升级迁移

Helm v2 支持

Helm v2 于2020 年11月正式放弃,此后不久该stable存储库从 Helm Hub 中除名。随着 GitLab 14.0 的发布,其中将包括GitLab Helm chart的 5.0 版本,Helm v2 将不再受支持。

图表用户应升级到 Helm v3以部署 GitLab 14.0 及更高版本。

已删除旧版功能标志

旧版功能标志在 GitLab 13.4 中变为只读。GitLab 14.0 删除了对旧功能标志的支持,因此必须迁移到新版本。可以先记下遗留标志(屏幕截图),然后通过 API 或 UI 删除标志(不需要更改代码),最后创建一个与以下名称相同的新功能标志您删除的旧标志。此外,请确保策略和环境与已删除的标志相匹配。

旧存储已移除

由于在GitLab 13.0宣布,原有的存储已GitLab 14.0删除。

限制返回的项目 GET /groups/:id/

为了提高性能,将从GET /groups/:id/API 调用返回的项目数量限制为 100。仍然可以通过GET /groups/:id/projectsAPI 调用检索完整的项目列表。

pwsh为新注册的Windows运动员默认的shell

在 GitLab Runner 13.2 中,Shell 执行器中添加了 PowerShell Core 支持。在 14.0 中,PowerShell Core pwsh现在是新注册的 Windows 运行程序的默认 shell。Windows CMD仍可用作Windows 运行程序的shell选项。

迁移SAST_DEFAULT_ANALYZERS至SAST_EXCLUDED_ANALYZERS

从13.9 开始,迁移到SAST_EXCLUDED_ANALYZERS SAST.gitlab-ci.yml文件中。鼓励在其项目 CI 文件中使用自定义 SAST 配置的任何人迁移到这个新变量。如果您没有覆盖SAST_DEFAULT_ANALYZERS,则不需要任何操作。CI/CD 变量SAST_DEFAULT_ANALYZERS已经被删除

新的Terraform 模板版本

随着不断开发 GitLab 的 Terraform 集成,为了最大限度地减少客户中断, Terraform 维护了两个 GitLab CI/CD 模板:

在“最新版本”的模板,这是GitLab的小版本之间的频繁更新(如13.10,13.11,等等)。

该“主要版本”模板,其中仅在主要版本更新(如13.0,14.0,等等)。

在 GitLab 的每个主要版本中,“最新版本”模板都会成为“主要版本”模板,继承了“最新模板”设置。由于我们为 Terraform 集成添加了许多新功能,因此“主版本”模板的新设置可以被视为重大更改。

最新的模板支持Terraform 合并请求小部件,并且不需要额外的设置来使用GitLab 管理的 Terraform 状态。

OpenSUSE Leap 15.1

对OpenSUSE Leap 15.1 的支持正在被放弃。14.0 将取消对 15.1 的支持。现在仅提供对openSUSE Leap 15.2软件包的支持。

PostgreSQL 11 支持

PostgreSQL 12 将是 GitLab 14.0 中所需的最低版本。它对索引、分区和一般性能优势进行了重大改进。

从 GitLab 13.7 开始,所有新安装默认为版本 12。从 GitLab 13.8 开始,单节点实例也会自动升级。

trace从jobs API 端点中删除不推荐使用的参数

GitLab Runner 在 GitLab 13.4 中进行了更新,以在内部停止将trace参数传递到/api/jobs/:id端点。GitLab 14.0trace完全弃用了此接口的所有其他请求的参数。

从DAST报告中删除旧字段

作为向 GitLab 中所有安全扫描程序迁移到通用报告格式的一部分,DAST 正在对 DAST JSON 报告进行更改。某些遗留字段在 13.8 中已放弃,并已在 14.0 中完全删除。这些字段是@generated,@version,site,和spider。这不应影响任何正常的 DAST 操作,但会影响以自动方式使用 JSON 报告并使用这些字段的用户。鼓励任何受这些更改影响并出于业务原因需要这些字段的人打开一个新的 GitLab 问题并解释需求。

删除 GitLab 页面的旧存储

为了使 GitLab Pages 与云原生兼容,从 GitLab 14.0 开始,将 GitLab Pages 使用的底层存储架构更改为最近推出的 ZIP 存储。

迁移到新的 ZIP 档案架构是自动设计的,但是,如果在迁移后看到404 Not Found某些页面,则自动迁移可能已失败。为了简化向 ZIP 存储的过渡,新提供了一个从 GitLab 14.0 到 14.2的临时use_legacy_storage标志,但将在 GitLab 14.3 中将其删除。此标志将允许 GitLab 和 GitLab Pages 使用非 ZIP 部署来提供内容。

删除标签 API 中的发布说明

GitLab 14.0 删除了对标签 API 中发布描述的支持。

移除许可证合规性

在 13.0 中,删除了 License-Management CI 模板并将其重命名为 License-Scanning。一直通过警告旧模板的用户切换来提供向后兼容性。在14.0 中,将完全删除 License-Management CI 模板。

删除 DAST 默认模板阶段

在 GitLab 14.0 中,删除了当前DAST.gitlab-ci.yml模板中定义的阶段,以避免出现模板覆盖 DAST 用户手动更改的情况。此更改是为了响应客户问题,其中模板中的阶段在与自定义 DAST 配置一起使用时会导致问题。由于此删除,gitlab-ci.yml未指定dast阶段的配置必须更新以包含此阶段。

删除 SAST 分析器SAST_GOSEC_CONFIG变量以支持自定义规则集

随着GitLab 13.5中SAST 自定义规则集的发布,为 Go 分析器 (GoSec) 的配置选项提供了更大的灵活性。因此,我再计划支持不太灵活的SAST_GOSEC_CONFIG分析仪设置。此变量在 GitLab 13.10 中已放弃。GitLab 14.0 删除了旧的SAST_GOSEC_CONFIG variable. 如果SAST_GOSEC_CONFIG在 CI 文件中使用或覆盖,请更新您的 SAST CI 配置或固定到旧版本的 GoSec 分析器。

删除 Ubuntu 19.10 (Eoan Ermine) 包

Ubuntu 19.10 (Eoan Ermine) 已于2020年7月17日星期五终止。在 GitLab Runner 14.0 中,软件包分发中不再提供 Ubuntu 19.10 (Eoan Ermine)。

/usr/lib/gitlab-runner从包中删除符号链接

在GitLab转轮13.3,一个符号链接从加入/user/lib/gitlab-runner/gitlab-runner到/usr/bin/gitlab-runner。在 14.0 中,符号链接已被删除。

删除?w=1URL 参数以忽略空格更改

为了根据用户的喜好为用户创造一致的体验,GitLab 14.0 中删除了通过 URL 参数切换空白更改的支持。

删除FF_RESET_HELPER_IMAGE_ENTRYPOINT功能标志

删除FF_SHELL_EXECUTOR_USE_LEGACY_PROCESS_KILL功能标志

删除FF_USE_GO_CLOUD_WITH_CACHE_ARCHIVER功能标志

在 14.0 中,删除了以上三个功能标志。

删除secret_detection_default_branch作业

为确保秘密检测同时扫描默认分支和功能分支,在托管模板中引入了两个单独的秘密检测 CI 作业(secret_detection_default_branch和secret_detection)Secret-Detection.gitlab-ci.yml。这两个 CI 作业在 CI 规则逻辑中造成了混乱和复杂性。这种弃用将rule逻辑移到script部分中,然后确定secret_detection作业的运行方式(历史、分支、提交等)。如果重写或维护的自定义版本SAST.gitlab-ci.yml或者Secret-Detection.gitlab-ci.yml,您必须更新您的CI模板。

删除 GitLab 页面的磁盘源配置

从 GitLab 13.0 开始,基于GitLab PagesAPI 的配置已经可用。它替换了diskGitLab 14.0 中删除的不受支持的源配置,无法再选择。应该停止使用disk源配置,转而使用gitlab基于 API 的配置。要从“磁盘”源配置迁移,请gitlab_pages['domain_config_source'] = "gitlab"在/etc/gitlab/gitlab.rb文件中进行设置。建议您在更新到 GitLab 14.0 之前进行迁移,以在升级之前识别和解决任何潜在问题。

删除旧版 DAST 域验证

用于 CI/CD 扫描的 DAST 域验证的旧方法在 GitLab 13.8 中已弃用,并在 GitLab 14.0 中删除。如果DAST_FULL_SCAN_DOMAIN_VALIDATION_REQUIRED环境变量true在gitlab-ci.yml文件中设置为,并且Gitlab-DAST-Permission站点上的标头未设置为,则此域验证方法仅禁止扫描allow。这种两步法要求用户在选择退出使用标头之前选择使用该变量。

删除 Docker Machine 自动缩放的非高峰时间模式配置

在 GitLab Runner 14.0 中,删除了旧的配置选项off peak time mode。

从 DORA 指标 API删除冗余时间戳字段

该部署频率项目级别的API接口被放弃,取而代之的是DORA 4 API,它整合了所有的指标下一个API与具体指标为必填字段。因此,不允许添加未来扩展并导致性能问题的时间戳字段将被删除。使用旧 API,示例响应为{ "2021-03-01": 3, "date": "2021-03-01", "value": 3 }.第一个键/值 ( "2021-03-01": 3) 将被删除并替换为最后两个 ( "date": "2021-03-01", "value": 3)。

删除已完成构建指标转换的成功和失败

在 GitLab Runner 13.5 中,引入failed并success声明了一项工作。为了支持普罗米修斯规则,我们选择了转换success/failure到finished度量标准。在 14.0 中,转换现在已被删除。

删除对 Windows Server 1903 镜像的支持

在 14.0 中,我们删除了 Windows Server 1903。Microsoft 于 2020 年 8 月 12 日终止了对该版本的支持。

删除对 Windows Server 1909 镜像的支持

在 14.0 中,我们删除了 Windows Server 1909。Microsoft 于 2021 年 5 月 11 日终止了对该版本的支持。

SAST_ANALYZER_IMAGE_TAG在 SAST CI 模板中删除

随着 GitLab Secure 扫描工具的成熟,需要为发布过程添加更多的粒度。以前,GitLab 为所有分析器和工具共享一个主要版本号。这需要所有工具共享一个主要版本,并防止使用语义版本编号。在 GitLab 14.0 中,SAST 删除了SAST_ANALYZER_IMAGE_TAG 托管SAST.gitlab-ci.ymlCI 模板中的全局变量,支持分析器作业变量major.minor在 SAST 供应商模板中设置标签。

每个分析器作业现在都有一个作用域SAST_ANALYZER_IMAGE_TAG变量,它将由 GitLab 主动管理并设置major为相应分析器的标签。要固定到特定版本,请将变量值更改为特定版本标记。如果您覆盖或维护 的自定义版本SAST.gitlab-ci.yml,请更新您的 CI 模板以停止引用全局SAST_ANALYZER_IMAGE_TAG,并将其移动到范围分析器作业标签。我们强烈鼓励继承和覆盖我们的托管 CI 模板,以确保您的 CI 模板面向未来。此更改允许您使用固定major.minor版本更精细地控制未来的分析器更新。

Ruby 版本更改为Ruby.gitlab-ci.yml

默认情况下,该Ruby.gitlab-ci.yml文件包含 Ruby 2.5。

为了更好地支持最新版本的 Ruby,模板更改为 use ruby:latest,目前为 3.0。

相关问题:将ruby 版本 2.5 更新到 3.0

从 DevOps采纳 API 中删除的细分

DevOps使用报告的第一个版本有一个Segments的概念。段很快从报告中删除,因为它们在组和项目之上引入了额外的复杂层。DevOps使用报告的后续迭代侧重于比较跨组而不是细分市场的采用情况。GitLab 14.0从 GraphQL API 中删除了对Segments 的所有引用,并将它们替换为Enabled groups。

删除了服务模板

GitLab 14.0中删除了服务模板。它们用于将相同的设置应用于大量项目,但仅在项目创建时才这样做。

虽然他们解决了部分问题,但后来证明更新这些值是一个主要的痛点。项目集成管理通过使您能够在组或实例级别创建设置以及该命名空间中继承这些设置的项目来解决此问题。

Sidekiq 队列选择器选项不再接受“实验性”前缀

GitLab 支持队列选择器为给定进程仅运行后台作业的子集。引入时,此选项具有“实验性”前缀(experimental_queue_selector在 Omnibus 中,experimentalQueueSelector在 Helm 图表中)。

不再支持“experimental”前缀。相反,应使用queue_selector Omnibus 和queueSelectorHelm 图表。

Ubuntu 16.04 支持

Ubuntu 16.04已于2021年4月停产,不再接收维护更新。强烈建议用户升级到更新的版本,例如 20.04。

GitLab 13.12 将是最后一个支持 Ubuntu 16.04 的版本。

Unicoren移除以支持 Puma 进行 GitLab 自我管理

GitLab 14.0 中删除了对 Unicorn 的支持,取而代之的是 Puma。Puma 具有多线程架构,比 Unicorn 等多进程应用服务器使用更少的内存。在 GitLab SaaS上,使用 Puma 后内存消耗减少了40%。

更新 Auto Deploy 模板版本

在 GitLab 14.0 中,将Auto Deploy CI 模板更新到最新版本。这包括依赖 v2 auto-deploy-image 的新功能、错误修复和性能改进。Auto Deploy CI 模板 v1 将被放弃。

由于v1 和v2 版本不向后兼容,对已经部署了应用程序的用户,项目可能会遇到意外失败。

更新CI/CD模板以停止使用硬编码master

CI/CD 模板已更新,不再使用对master分支的硬编码引用。在 14.0 中,它们都使用指向项目配置的默认分支的变量。如果您的 CI/CD 管道依赖于我们的内置模板,请验证此更改是否适用于您当前的配置。例如,如果有一个master分支和一个不同的默认分支,对模板的更新可能会导致管道行为发

WIP 合并请求重命名为“合并请求草案”

合并请求的 WIP(进行中)状态向审阅者发出信号,表明相关合并请求尚未准备好合并。WIP 功能重命名为Draft,这是一个更具包容性和不言自明的术语。Draft清楚地传达了有问题的合并请求尚未准备好进行审查,并且不对正在取得的进展做出任何假设。Draft还减少了新用户、非英语使用者和任何不熟悉 WIP 首字母缩略词的人的认知负担。

Web应用程序防火墙 (WAF)

Web应用程序防火墙 (WAF) 在 GitLab 13.6 中已放弃,并从 GitLab 14.0 中删除。WAF 在架构设计中具有固有的局限性,这使得 WAF 难以满足传统上对 WAF 的预期要求。通过删除 WAF,GitLab 能够专注于改进产品中可以为用户提供更多价值的其他领域。

删除CI_PROJECT_CONFIG_PATH和CI_PROJECT_CONFIG_PATH

GitLab 14.0删除了CI_PROJECT_CONFIG_PATH预定义的项目变量,取而代之的是CI_CONFIG_PATH,它在功能上是相同的。如果CI_PROJECT_CONFIG_PATH在管

更新升级Omnibus版

通过Omnibus安装的自建实例可直接使用Linux包管理器可以升级。例如对CentOS:

yum updata/install gitlab-ce

就能自动完成升级:

gitlab是什么表,gitlab简介和使用(23)

可以通过gitlab实例的帮助查看版本信息以及是否升级到最新版本:

gitlab是什么表,gitlab简介和使用(24)

上一页23456下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.