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 帐户并转到您的项目 −

CI 的 GitLab 使用

步骤 2 − 单击 Settings 选项卡下的 CI/CD 选项并展开 Pipeline triggers 选项 −

CI 的 GitLab 使用

输入触发器的描述并点击Add Trigger添加触发器按钮。

步骤 3 − 接下来,它会在创建触发器后显示成功消息 −

CI 的 GitLab 使用

步骤 4 − 现在转到 Settings 选项卡下的 CI/CD 选项并展开 Pipeline triggers 选项。 您将看到新创建的触发器以及令牌,如下图所示 −

CI 的 GitLab 使用

管道计划

您可以使用流水线计划以特定的时间间隔运行流水线。 要创建管道计划,请使用以下步骤 −

步骤 1 − 登录到您的 GitLab 帐户并转到您的项目 −

CI 的 GitLab 使用

步骤 2 − 单击 CI/CD 选项卡下的 Schedules 选项,然后单击 New schedule 按钮 −

CI 的 GitLab 使用

步骤 3 − 接下来,它将打开调度新管道屏幕,填写字段并单击Save pipeline schedule保存管道调度按钮 −

CI 的 GitLab 使用

步骤 4 − 现在,您将看到计划运行的管道 −

CI 的 GitLab 使用

将 GitLab 与 Kubernetes 集群连接

Kubernetes 集群可用于以简单的方式审查和部署应用程序、运行管道等。 您可以通过将 GitLab 帐户与 Google Kubernetes Engine (GKE) 关联来为您的项目创建一个新集群。

可以按照以下步骤创建新的 Kubernetes 集群 −

步骤 1 − 登录到您的 GitLab 帐户并转到您的项目 −

CI 的 GitLab 使用

步骤 2 − 单击 CI/CD 选项卡下的 Kubernetes 选项 −

CI 的 GitLab 使用

步骤 3 − 接下来,单击 Add Kubernetes cluster 按钮 −

CI 的 GitLab 使用

步骤 4 − 点击 Create on GKE 按钮在 Google Kubernetes Engine 上创建一个新的 Kubernetes 集群 −

CI 的 GitLab 使用

步骤 5 − 如果您有 Google 帐户,请使用该帐户登录以输入 Kubernetes 集群的详细信息,或者创建一个新的 Google 帐户 −

CI 的 GitLab 使用

步骤 6 − 现在在 Kubernetes 集群的字段中输入值 −

CI 的 GitLab 使用

步骤 7 − 在字段中添加值之前,您需要在 Google Cloud Platform 控制台中创建的项目的 ID 以托管 Kubernetes 集群。 要创建 ID,请单击上图中突出显示的 See your projects 链接。 它将打开下面的屏幕,然后单击 My Project 菜单并单击加号 (+) 图标以创建一个新项目 −

CI 的 GitLab 使用

步骤 8 − 现在输入项目名称并点击Create按钮 −

CI 的 GitLab 使用

步骤 9 − 您将获得将托管 Kubernetes 集群的项目的 ID −

CI 的 GitLab 使用

步骤 10 − 在字段中输入您的 Kubernetes 集群的值以及 Google Cloud Platform 项目 ID,然后单击 Create Kubernetes cluster 按钮 −

CI 的 GitLab 使用