GitLab CI - CI 的高级用法
环境和部署
环境用于测试、构建和部署 CI(持续集成)作业,并使用 GitLab 控制软件的持续部署。 GitLab CI 能够跟踪您的项目部署,并且您将了解服务器上正在部署的内容。
环境的名称可以使用 environment:name 字符串定义,并包含以下内容 −
- letters
- digits
- spaces
- -
- _
- /
- $
- {
- }
在 GitLab CI/CD 中使用 SSH 密钥
您可以设置 SSH(安全外壳或安全套接字外壳)密钥以在计算机和 GitLab 之间提供可靠的连接。 SSH 密钥可以与 GitLab CI/CD 一起使用 −
- 您需要签出内部子模块。
- 您需要使用包管理器下载私有包。
- 您需要在自己的服务器上安装应用程序。
- 您从构建环境执行 SSH 命令到远程服务器。
- 您需要将文件从构建环境同步到远程服务器。
GitLab SSH 密钥设置一章解释了 SSH 密钥设置。
Artifacts
Artifacts 用于在成功后将文件和目录列表附加到作业。 Artifacts 包含以下类型 −
- artifacts:name − 该指令用于指定创建的Artifacts存档的名称。 它为创建的Artifacts存档提供唯一名称,这在您从 GitLab 下载存档时很有帮助。
- artifacts:when − 该指令用于在作业失败时上传 Artifacts。 它包含以下值:
- on_success − 用于在作业成功时上传Artifacts。
- on_failure − 它用于在作业失败时上传Artifacts。
- always − 无论作业状态如何,它都用于上传Artifacts。
- artifacts:expire_in − 它定义了Artifacts在过期并因此被删除之前应该存在多长时间,因为它们被上传并存储在 GitLab 上
触发管道
触发器可以通过 API 调用强制重建特定的分支或标签,并且带有 legacy 标签的触发器将可以访问当前项目。
可以按照以下步骤添加新触发器 −
步骤 1 − 登录到您的 GitLab 帐户并转到您的项目 −
步骤 2 − 单击 Settings 选项卡下的 CI/CD 选项并展开 Pipeline triggers 选项 −
输入触发器的描述并点击Add Trigger添加触发器按钮。
步骤 3 − 接下来,它会在创建触发器后显示成功消息 −
步骤 4 − 现在转到 Settings 选项卡下的 CI/CD 选项并展开 Pipeline triggers 选项。 您将看到新创建的触发器以及令牌,如下图所示 −
管道计划
您可以使用流水线计划以特定的时间间隔运行流水线。 要创建管道计划,请使用以下步骤 −
步骤 1 − 登录到您的 GitLab 帐户并转到您的项目 −步骤 2 − 单击 CI/CD 选项卡下的 Schedules 选项,然后单击 New schedule 按钮 −
步骤 3 − 接下来,它将打开调度新管道屏幕,填写字段并单击Save pipeline schedule保存管道调度按钮 −
步骤 4 − 现在,您将看到计划运行的管道 −
将 GitLab 与 Kubernetes 集群连接
Kubernetes 集群可用于以简单的方式审查和部署应用程序、运行管道等。 您可以通过将 GitLab 帐户与 Google Kubernetes Engine (GKE) 关联来为您的项目创建一个新集群。
可以按照以下步骤创建新的 Kubernetes 集群 −
步骤 1 − 登录到您的 GitLab 帐户并转到您的项目 −
步骤 2 − 单击 CI/CD 选项卡下的 Kubernetes 选项 −
步骤 3 − 接下来,单击 Add Kubernetes cluster 按钮 −
步骤 4 − 点击 Create on GKE 按钮在 Google Kubernetes Engine 上创建一个新的 Kubernetes 集群 −
步骤 5 − 如果您有 Google 帐户,请使用该帐户登录以输入 Kubernetes 集群的详细信息,或者创建一个新的 Google 帐户 −
步骤 6 − 现在在 Kubernetes 集群的字段中输入值 −
步骤 7 − 在字段中添加值之前,您需要在 Google Cloud Platform 控制台中创建的项目的 ID 以托管 Kubernetes 集群。 要创建 ID,请单击上图中突出显示的 See your projects 链接。 它将打开下面的屏幕,然后单击 My Project 菜单并单击加号 (+) 图标以创建一个新项目 −
步骤 8 − 现在输入项目名称并点击Create按钮 −
步骤 9 − 您将获得将托管 Kubernetes 集群的项目的 ID −
步骤 10 − 在字段中输入您的 Kubernetes 集群的值以及 Google Cloud Platform 项目 ID,然后单击 Create Kubernetes cluster 按钮 −