问题标签 [gitlab-pipelines]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - 构建 docker-compose 镜像并将其推送到容器注册表中
我会使用创建一个 docker 映像docker-compose
并将其推送到gitlab container registry
. 该docker-compose
文件有一些build.args
所以在编译期间我使用--env-file
标志传递 env 文件。Dockerfile
图像是一个两步:base
这是production
内容:
这是docker-compose.yml
:
这个是docker-compose.prod.yml
:
要构建图像,我使用以下命令:docker-compose --env-file ./config/.production.env -f docker-compose.yml -f docker-compose.prod.yml build --no-cache
这是 gitlab 管道步骤,用于构建并存储到容器中,重新注册 docker 映像:
这是管道的输出:
如您所见,有这个警告:[Warning] One or more build-args [PORT] were not consumed
在我的本地测试期间它没有出现,其次我有一个服务标记为aaa-bbb/ccc:1.0.0
但我无法推送它,因为没有该服务。
我该如何解决这个问题?
gitlab - 如何在 Gitlab-CI 中没有工件的作业之间传递变量?
我想在我的 gitlab-ci scrypt 中的作业之间(在其他阶段)传递一些变量。我用的例子:
一切正常,但我从“buildTest”(整个文件夹应用程序,很大)中获得了所有工件。这有点奇怪,但它不包含文件'build.env',这只是我需要的。有没有可能只传递变量,而不传递其他工件。如果我设置 artifacts: false - 不传递任何变量。
gitlab - 有没有办法在 gitlab 中为组添加付款?
我的开发团队在 gitlab 中有一个组,所有存储库都在一个组内,但是为了运行管道 gitlab 要求我的任何团队成员提供付款方式,有没有办法可以为整个组添加付款方式所以我不是要求队友单独做吗?
我所有的队友在运行管道时都收到了这个:
由于未验证用户,管道失败
gitlab - 运行 gitlab 管道时未注入 Gitlab CI CD 变量
我在 gitlab-ci.yml 文件中运行以下代码部分:
下面是键和值。所以我必须通过键作为变量 ENV 将任何值传递给管道:dev
我通过扩展在 GitLab CI CD 变量部分中添加了所有上述三个变量。只是添加了一个值和键
我还发现我们可以在 .yml 文件本身中添加变量,如下所示。我不确定我们如何为一个键添加多个值
当我运行管道时,我收到错误,因为看起来这些变量和值没有正确注入。
更多细节:
我在运行管道时遇到了同样的错误。因此,当我通过管道运行时,我的怀疑是没有正确注入 Category 变量
如果需要,我将在共享屏幕上显示
请找到我的 gitlab-ci.yml 文件的图片片段 - [![在此处输入图片描述][1]][1]
我在运行管道时传递了以下参数 - [![在此处输入图像描述][2]][2]
我观察到的是——与我作为参数或变量传递的键相关的值,这些值不是注入或替换的,而是键。所以理想情况下 ${Category} 应该替换为 value smoke 等
sql-server - 如何在 Docker 中从 Docker 连接到 SQL Server 服务?
我正在尝试构建和运行一个 ASP.NET Core 应用程序并使用 newman 对其进行测试。这是我拥有的管道:
我今天刚开始学习 Docker 以及如何将它与 Gitlab 的管道一起使用,如果您有更好的方法,请告诉我。
为什么应用程序无法访问 mssql 服务?这是我得到的错误:
这是我在appsettings.json
文件中使用的连接字符串:
如果我使用 .net sdk 映像运行以下管道,则应用程序将启动并可以连接到数据库。但是这样我就不能用newman来测试了。或者我可以吗?
更新
我添加了一个别名并更新了服务的连接字符串,但它仍然没有连接。
Password=*****;Persist Security Info=True;User ID=SA;Database=CatalogDb;Server=mssql
我还添加了此处FF_NETWORK_PER_BUILD
指定的变量,但应用程序仍未连接到数据库
linux - sed 命令检查和替换字符串
我正在尝试解码 sed 命令。该命令需要将“nextRelease.version”值设置为版本。这个命令在语法上正确吗?
gitlab - Gitlab CI/CD 如何在管道中捕获 curl 响应
我有pipeline
哪个启动一些maven/java
应用程序,现在我想添加test
阶段,我检查应用程序是否启动成功,例如当构建阶段完成时,我检查,我的意思是如果响应正常则curl
curl ,否则失败。如何创建127.0.0.1:8080
200
Gitlab pipline?
gitlab-ci - GitLab CI:如果只有某些文件已更改,则跳过作业
如果我的唯一更改部分与文件commit/merge request
相关,我需要跳过管道中的 GitLab CI 作业。*.md, eslintrc.json or jsconfig.json
例子:
- 如果这些文件已更改,但 *.js 等其他文件也已更改:作业应该运行。
- 如果这些文件根本没有更改,但其他 *.js 文件已更改:作业应该运行。
- 如果 README.md 和 eslintrc.json 发生了变化,并且没有其他任何变化:作业不应该运行。
我试图做到这一点,但到目前为止我还没有发现except:changes
也没有用。rules:when:never
我该怎么做?
gitlab-ci - Gitlab CI 使用 dockerd gitlab-runner 可视化 gradle 多模块上的问题
卓悦,
大家好,希望一切顺利。
从过去的几天开始,我一直在multi-module gradle
使用 gitlab 实例设置项目的覆盖率可视化,gitlab-CI
并使用jacoco
测试报告和cobertura
转换分析。在为可视化任务设置 gitlab-CI 时需要一点帮助。
我当前的gitlab-ci.yaml
文件如下:
我遇到的问题是,当CI stage
运行时,它会清除所有以前的构建目录,并且也无法从缓存中提取,并且管道失败。并且已经失败了太多次。
我的 Gitlab-runner 在 docker 容器上。
CI 控制台日志:
日志还显示缓存已恢复,但ls
在脚本上写入仅显示src
文件夹。
请协助我设置覆盖工作。
提前致谢。