龙空技术网

GitLab 11.11发布,增强协作性和DevOps生命周期可见性等功能

虫虫安全 926

前言:

此时各位老铁们对“centosruby升级19”可能比较注重,大家都需要了解一些“centosruby升级19”的相关内容。那么小编在网络上搜集了一些有关“centosruby升级19””的相关资讯,希望你们能喜欢,各位老铁们一起来学习一下吧!

日前GitLab官方按照既定的版本计划表发布了Gitlab 11大版本的最后一个小版本11.11,按照计划下月Gitlab将会发布大版本12,本次作为一个承前启后的版本11.11给大家带来了什么惊喜呢?请追随虫虫的文章,咱们一起来学习这些新功能。

概述增加协作和可见性

GitLab一直在探索协作方法的创新,立足于提高整个DevOps生命周期中高效协作性。新版本实现了多个受理人进行版本合并请求的功能,不过该功能还是收费功能在GitLab Starter中可用。

通过支持Slack和Mattermost的自动部署事件的通知,提高了DevOps团队的可见性,通过配置添加推送事件列表到这两个工具,可以实现实时消息的推送。

Windows Docker容器和配置实例级Kubernetes集群

GitLab 11.11中支持GitLab Runners的Windows Container Executor,它可以在Windows上使用Docker容器,允许更高级的流水线编排和管理。GitLab Premium现在支持Docker镜像的缓存依赖关系代理,通过为常用的Docker镜像提供缓存代理,可以大大加速交付时间。Gitlab自建实例新支持实例级别Kubernetes群集,实现实例中的所有组和项目都的部署。GitLab Kubernetes集成将自动创建特定于项目的资源,以增强安全性。

GitLab 11.11版本主要功能GitLab Runner支持Windows容器

GitLab 11.11中, GitLab Runner新添加一个执行程序,可以在Windows上使用Docker容器。此前,主要使用shell执行程序来编排Docker命令,新版本中,可以直接在Windows上使用Docker容器。此更新改进的实现了对整个GitLab CI/CD的PowerShell支持,以及各种版本Windows容器的新帮助程序映像。

缓存容器注册表的依赖代理(PREMIUM及以上)

使用容器作为构建管道的是业界常见的做法,对经常使用的上游映像/包的进行缓存代理是加速管道的好方法。通过使用新的高速缓存代理在本地保留所需层的副本,可以提高环境中常用图像的执行性能。新版本推出了容器代理,但是仅适用于使用Puma(实验性)Web服务器。

多受理人合并请求(STARTER及以上)

在GitLab 11.11中,合并请求允许多个受理人,以便可以将所有负责更改的人员分配给具体合并请求任务。与问题,列表,过滤和通知以及API的多个受理人一样,所有人都可以做此操作。

实例级Kubernetes集群配置

在GitLab 11.11,自建Gitlab实例在可以在实例级别配置集群,实例中的所有组和项目都可以通过该集群进行部署。 GitLab Kubernetes集成将自动创建特定于项目的资源,以增强安全性。

Slack和Mattermost实时部署通知

新版本中可以通过Slack和Mattermost及时通讯工具团队群中自动发布部署事件,可以让团队成员实时获得这些重要活动的信息。

访客访问发布页

新版本推出一个版本发布页,可供访客用户查看公开项目"版本"页面的发布的版本信息。可以浏览和下载发布的组件,但不能clone源代码,也不允许查看仓库的信息,比如tag和push信息。

注意目前发布页信息只能通过API创建。

增加序列化提交图以提高性能

许多常见的Git操作需要遍历提交图结构,计算库合并,或列出包含特定提交的分支。随着提交次数的增加,这些操作会变的越来越慢,因为每次遍历都要从磁盘加载每个Git对象读取其指针。

GitLab 11.11中,启用了Git序列化提交图,该功能是Git最新版本版本中引进的,可以通过预先计算和存储这些信息,可以显著提高大型存储库的遍历速度。每次在存储库上运行垃圾收集,都会自动生成提交图。

该功能是有微软工程师,根据其测试,在Git源码库为例子情况下,使用该功能可以减少80%的耗时。

按目录下载

根据项目类型及其大小,下载整个项目的会很慢或也没有必要。新版支持下载当前目录内容的压缩包,包括子目录,实现下载特定文件目标。

在面板视图的侧边栏中进行时间跟踪

GitLab新版本在问题板侧边栏,增加时间跟踪信息。导航到问题板,单击问题弹出侧栏栏,就可以轻松查看时间跟踪信息。

管道规则的否定匹配

在检查环境变量的值时,新版本支持.gitlab-ci.yml中使用否定操作符号。不等于:!=和不匹配:!~,使得语法更加灵活。

通过环境变量创建配置文件

通过将变量值值设置为文件内容,在作业中创建包含该值的文件来完成操作。在配置文件设置类型环境变量,可一键可以引入完成此操作,无需通过修改.gitlab-ci.yml。

全动态扫描加入DAST选项(ULTIMATE版本)

使用GitLab,可以执行动态应用程序安全测试(DAST)作为CI管道的一部分。从新版本开始,可以指定使用完整动态扫描而不是标准的被动扫描。使用完整动态扫描可以防止更多漏洞。

Git LFS镜像支持(STARTER及以上)

存储库提取镜像允许将Git存储库从一个位置复制到另一个位置。实现在GitLab服务器上保存其他位置托管的存储库的副本。 新版本支持使用Git LFS的镜像pull存储库,可以对大文件存储库提供镜像。

组GraphQL查询的支持

GraphQL API允许用户查询所需的数据,实现在有限数量的请求中获得所有必需的数据。在新版本中,支持GraphQL API中基础组信息的查询。

基于UltraAuth的生物识别身份验证

UltraAuth是一家专注于无密码生物识别身份验证的公司。GitLab新版本支持他其身份验证策略。

建议被采纳会自动介绍讨论

建议的更改使合并请求更容易协作,不再需要复制/粘贴来接受建议的更改。在新版本中,通过在采纳建议时会自动将讨论标记为已解决,流程变得更加简单。

MR更详细的信息

查看问题时,查看相关问题,在Epics和合并请求可能会有所帮助,以获得尽可能多的上下文知识。在新版本中,在相关的合并请求表中引入了更多信息,包括状态,路径,ID,标题,管道状态和受理人。

通过环境API获得部署详细信息

环境API请求可以获得部署详细信息,通过GitLab环境功能的更便捷实现自动化和报告。

单击运行一次即可运行多步骤下所有手动作业

在GitLab 11.11,依赖具有许多手动作业的阶段的用户现在可以通过使用管道视图中阶段名称右侧的"全部运行"按钮轻松运行给定阶段中的所有手动作业。

漏洞信息的API端点(ULTIMATE版本)

新版本可以通过GitLab API查询项目中已标识的所有漏洞。使用此API,可以生成按类型,置信度和严重性筛选的机器可读漏洞列表。

在组级集群上使用Prometheus

在新版本中,GitLab提供了将Kubernetes群集连接到整个组的功能。我们还添加了将单个Prometheus实例安装到该集群的功能,从而可以更轻松地监控集群中的所有项目。

个人访问令牌的存储库读写范围

许多个人访问令牌依赖于api级别范围来进行程序化更改,但完全API访问可能对某些用户或组织来说过太宽松,不太安全。

由于社区贡献,个人访问令牌现在可限制为只读取和写入项目存储库,保证系统安全。

使用Salesforce用户凭据登录

新版中可以将GitLab配置为连接Salesforce的应用程序,并使用Salesforce认证来登录GitLab。

Chart改进

在GitLab 11.11中对Helm Charts进行了以下改进:

GitLab 11.11新的功能,tmp/目录可以附加存储卷

管理员使用其他配置选项,包括memoryKiller,maxRss,graceTime和shutdownWait。

Helm图表现在在亚马逊的Kubernetes弹性容器服务(EKS)上不断进行测试

GitLab Runner 11.11

GitLab Runner 11.11也一并同期发布,主要功能如下:

修复git lfs获得不子模块对象的bug。

优化大trace的跟踪处理。

允许使用config.toml配置功能标志。

允许使用FF配置/build目录。

Docker Executor添加对PowerShell支持。

支持Windows docker卷配置。

Omnibus改进

在GitLab 11.11中对Omnibus进行了以下改进:

引入Mattermost 5.10,一个开源的Slack替代品,其最新版本包括交互式短消息,安全更新得等。建议对早期版本升级。

Grafana已经被升级到1.1.0以获得最新的Omnibus仪表板。

PostreSQL 10和Omnibus捆绑。

Sentry客户端DSN将传递给gitlab.yml。

RubyGems更新为2.7.9。

liblzma从5.2.2更新为5.2.4。

libtool更新为2.4.6。

确保在pg-upgrade命令后启动postresql。

将Prometheus组件更新到最新版本。

git更新为2.21.0。

性能改进

对于各种规模的GitLab实例,Gitalb一直致力于其性能的提高。 GitLab 11.11性能改进包括:

当响应中有许多头像路径时,自动加速。

删除待办事项时减少Sidekiq有效负载。

根据项目计算GraphQL解析器复杂性。

提高全局搜索可发布项目的性能。

提高扩展完整差异的性能。

确保仅在一批时候才会请求blob。

列表页避免加载Wiki Pages内容。

项目分支比较时候不创建临时参考。

功能弃用:GitLab Geo将在GitLab 12.0中强制执行Hashed Storage

迁移日期:2019年6月22日

GitLab Geo将在GitLab 12.0中强制使用PG FDW

迁移日期:2019年6月22日

错误报告和日志记录的Sentry设置将在GitLab 12.0中的UI中删除

这些设置将从GitLab 12.0中的UI中删除,并在gitlab.yml中提供。此外,还可以定义Sentry环境以区分多个部署。例如,开发,登台和生产。

弃用日期:2019年6月22日

限制单次推送创建的最大管道数

当推送具有许多活动分支的大型存储库时,可能是从另一个位置移动,镜像或Fork,为每个分支创建管道没有意义。从GitLab 11.10开始,我们将在推送操作期间创建最多4个管道。

生效日期:2019年5月22日

在GitLab Runner中弃用遗留代码路径

"metrics_server",S3特定配置等路径配置在GitLab 12.0将会被删除。对运行11.9以上版本,不需要做任何兼容。

弃用日期:2019年6月22日

弃用GitLab Runner的入口点功能标志

功能标志"FF_K8S_USE_ENTRYPOINT_OVER_COMMAND",在GitLab 12.0将会被删除。

弃用日期:2019年6月22日

弃用对GitLab Runner达到EOL的Linux发行版的支持

GitLab Runner的一些Linux发行版已达到End of Life支持。

生效日期:2019年6月22日

删除旧版GitLab Runner Helper引导程序

在GitLab 12.0中,GitLab Runner将开始使用新命令。这仅影响修改过帮助程序镜像的用户。

迁移日期:2019年6月22日

GitLab Runner删除传统的git clean机制

在GitLab Runner 12.0中,GitLab Runner将放弃对旧版清理策略的支持,并删除使用功能标志恢复它的能力。

迁移日期:2019年6月22日

将项目模板修复为Silver/Premium

在2019年8月22日,组项目模板试用期将过期,组项目模板将需要Silver/Premium或更高版本。

迁移日期:2019年8月22日

GitLab 12.3将放弃对Windows批处理的支持

在GitLab 12.3中,计划弃用GitLab Runner中的Windows批处理命令行作业(例如cmd.exe),以支持对Windows PowerShell的扩展和扩展支持。从GitLab 11.11开始不在建议使用批量启动,在GitLab 12.3中的弃用对其支持,并计划在GitLab 13.0中删除Windows批处理。

迁移日期:2019年9月22日

Git版本依赖需要 2.21.0或更高版本

GitLab 11.11开始,运行GitLab需要Git 2.21.0。Omnibus GitLab已经附带Git 2.21.0。使用旧版本Git的源安装用户必须升级。

迁移日期:2019年5月22日

弃用Kubernetes服务模板

在GitLab 12.0中,我们计划弃用实例级Kubernetes服务模板,转而使用GitLab 11.11中引入的实例级集群功能。升级到GitLab 12.0,任何使用服务模板的自建GitLab实例都会迁移到实例级集群。

迁移日期:2019年6月22日

删除使用'app'作为Kubernetes部署板的匹配机制

GitLab 12.0中,计划删除Kubernetes部署选择器的应用程序标签匹配,GitLab将使用新标签进行部署。

迁移日期:2019年6月22日

GitLab 12.0软件包将使用扩展签名进行签名

2019年5月2日,GitLab将Omnibus GitLab软件包的软件包签名密钥的截止日期从2019-08-01扩展到2020-07-01。

迁移日期:2019年6月22日

支持Omnibus GitLab中的Prometheus 1.x.

GitLab 12.0,任何尚未运行Prometheus 2.0的安装都将自动升级。 Prometheus 1.0中的度量标准数据不会迁移,也会丢失。

迁移日期:2019年6月22日

版本升级

版本升级非常简单,基于Omnibus的部署实例可以使用系统包管理软件一键升级。

比如Centos实例,可以使用yum updata gitlab-ce 升级:

升级后帮助菜单可以查看新版本信息:

标签: #centosruby升级19