gitlab-ci相关内容

手动从配置项中删除项目

我在gitlab.com上有一个使用配置项功能的私有存储库。某些配置项作业创建存储的工件文件。我刚刚通过将以下内容添加到CI配置实现了一天后自动删除工件: expire_in: 1 day 这很有效-但是,旧的工件不会被删除(正如预期的那样)。所以我的问题是: 如何删除旧工件或未过期的工件?(在gitlab.com上,无法直接访问服务器) 推荐答案 如果您没有直接访问服务器 ..
发布时间:2022-03-14 20:43:02 其他开发

如何列出修改后的文件?

每当引发PR时,我使用gitlab-ci运行.gitlab-ci.yml中定义的脚本。 我要获取自上次提交以来已修改文件的列表。 使用情形是在大型代码库中运行特定于文件的集成测试。 推荐答案 如果您不需要知道路径,只需在特定文件发生变化时运行特定作业,则使用only/changes.gitlab-ci.yml配置,例如 docker build: script: ..
发布时间:2022-03-14 20:40:22 其他开发

GitLab Runner不参与特定项目

我注册了GitLab Runner的11个项目。除1个项目外,每个项目的跑步者都工作得很好。我第一次注册这个项目的跑步者,它工作。 但在我提交/推送某些更改后,出现错误并导致作业失败。 我看到了一些解决方案,升级git版本解决了一个问题,但我不这么认为。因为除了这个项目,所有的跑步者都工作得很好。 服务器操作系统:CentOS 7 GIT:1.8.3.1 First time reg ..
发布时间:2022-03-14 20:33:25 其他开发

测试仅在GitLab CI中失败,本地成功

我刚刚开始使用GitLab CI(使用docker执行器)。在面对和解决了一些初学者的问题之后,我现在面临着一个相当奇怪的问题。 我所有的单元测试都在本地成功,但是当我使用CI运行它们时,有些单元测试失败了。 一个示例: [2018-12-09 18:05:57] testing.ERROR: Trying to get property 'email' of non-object ..
发布时间:2022-02-24 23:09:19 其他开发

带有cURL的脚本之前的GitLab配置项变量引发YAML语法错误

我正在定义一个变量JWT,我将在其中存储一个稍后将在代码中使用的令牌。 我将通过cURL调用在before_script步骤中获取它。 问题是,当我尝试运行管道时,它失败并显示错误: 在.gitlab-ci.yml:包含的文件中发现错误.gitlab-ci.yml 没有有效的YAML语法! 我已经阅读了此Stack Overflow answer以便正确插入USER和PASS环境 ..
发布时间:2022-02-23 20:56:49 其他开发

GitLab CI-唯一内部版本号

GitLab配置项中是否有可用作内部版本号的唯一编号,就像我们在Jenkins中使用的一样。我开始了解变量“CI_PIPELINE_IID”,但是这个变量的问题是,它针对所有分支进行更新,并且每个分支都不存在这样的变量。 推荐答案 我们使用变量$CI_PIPELINE_IID解决了同样的问题,该变量定义为 当前管道的项目级IID(内部ID)。此ID仅在当前项目内唯一。 ,与 ..
发布时间:2022-02-23 15:36:29 其他开发

如何在GitLab配置项中快速禁用/启用阶段

当您为一个大项目工作.gitlab-ci.yml时,例如,拥有一个耗时的测试阶段会导致很大的延迟。有没有一种简单的方法来禁用该阶段,因为从stages定义中删除它会使YAML从GitLab的观点来看是无效的(因为有一个已定义但未使用的阶段),在我的例子中会导致: test job: chosen stage does not exist; available stages are .pre, ..
发布时间:2022-02-23 15:33:52 其他开发

GitLab:如何在构建后的后续作业中使用构件

我一直在尝试创建一个GitLab CI/CD管道来部署我的普通应用程序。我有三个阶段: 1.测试 2.建造 3.部署 构建阶段有一个Build_ANGLING作业,它生成一个工件。现在,我想在下一个阶段(即部署)使用此构件。 部署作业告诉我它已经下载了工件(图像已经附加),但是现在我想提取这个工件,但是我不知道从哪里下载工件。 文档中的任何地方都没有提到下载工件的路径。 推荐答案 ..
发布时间:2022-02-23 15:20:46 其他开发

GitLab-ci SSH密钥格式无效

我希望使用GitLab-ci运行部署脚本,但步骤ssh-add$SSH_PRIVATE_KEY返回错误: echo "$SSH_PRIVATE_KEY" | ssh-add - Error loading key "(stdin)": invalid format 您可以看到我的.gitlab-ci.yml: deploy: image: node:9.11.1-alpine ..
发布时间:2022-02-23 15:18:39 其他开发

Gitlab 上的 Kubernetes 执行程序 - 错误:作业失败(系统故障):发布 *api/v1/namespaces/gitlab/pods: x509: 证书由未知机构签名

我正在尝试为 Gitlab 设置 Kubernetes 执行程序,但出现以下错误:错误:作业失败(系统故障):发布https://api.kubernetes.de/api/v1/namespaces/gitlab/豆荚:x509:由未知机构签署的证书 这是我的 configmap.yml: api版本:v1种类:ConfigMap元数据:名称:gitlab-runner命名空间:gitl ..

Gitlab CI:仅为受保护分支上存在的标记提交运行管道作业

我想创建一个仅在满足两个以下条件时运行的管道: 标签引用给定的提交 提交存在于任何受保护的分支(即主分支)上 可选:只要将标记的未受保护的分支合并(通过合并请求)到受保护的分支或将标记添加到受保护的分支,就应该运行该作业. 我试过了: 发布:阶段:发布脚本:- 回声“发布!"规则:# 仅在给定标签且提交存在于受保护分支上时发布- 如果:'$CI_COMMIT_TAG &&$CI_ ..
发布时间:2022-01-18 21:24:44 其他开发

从 gitlab docker runner 启动 Sonar Scanner

我有一个集成了 linting 作业和代码质量作业的 CI 工作流程.我的 Linting 工作是 docker runner 从应用程序代码启动我的 eslint 脚本.然后我的代码质量工作应该启动声纳扫描器 docker 实例,检查我的代码并将报告发送回我的 sonarqube 实例. 问题主要在于我无法使用以下两种解决方案正确启动声纳扫描仪: 声纳扫描仪 Dockerhttps: ..
发布时间:2022-01-17 22:16:33 服务器开发