标签: gitlab-ci

“ChromeHeadless 在 60000 ms 内没有捕获,杀死。” 仅发生在 Gitlab 托管的 CI/CD 管道中

在 Gitlab 上运行 CI/CD 管道时,我的 Karma 测试超时并出现错误:

? ?wdm?: Compiled successfully.
05 08 2019 22:25:31.483:INFO [karma-server]: Karma v4.2.0 server started at http://0.0.0.0:9222/
05 08 2019 22:25:31.485:INFO [launcher]: Launching browsers ChromeHeadlessNoSandbox with concurrency 1
05 08 2019 22:25:31.488:INFO [launcher]: Starting browser ChromeHeadless
05 08 2019 22:26:31.506:WARN [launcher]: ChromeHeadless have not captured in 60000 ms, killing.
05 08 2019 22:26:31.529:INFO [launcher]: Trying to start ChromeHeadless again (1/2).
05 08 2019 22:27:31.580:WARN [launcher]: ChromeHeadless have not captured in 60000 ms, killing.
05 08 …
Run Code Online (Sandbox Code Playgroud)

selenium docker karma-jasmine gitlab-ci gitlab-ci-runner

14
推荐指数
1
解决办法
1万
查看次数

当构建成功不起作用时,Gitlab自动合并

我有一个非常简单的问题.我们已经设置了Gitlab CI,并希望一旦我们的一些分支机构的构建成功,就允许自动合并.

事实是,我们看到构建通过,但合并实际上并没有发生,状态保持"一旦构建成功就自动合并".

你知道为什么吗?

我附上了虚假行为的截图.

合并成功但MR未合并

编辑:请求的一些其他信息:

  • 看起来没有后台作业被放入队列中,当我在构建成功时激活"自动合并"
  • 当构建完成运行时,就我所见,没有触发后台作业.没有任何新的计划,死亡或正在进行中.
  • 我也没有在日志中看到任何疯狂或错误.
  • 我的仪表板的两个屏幕截图作为具有自动构建的MR运行:

MR期间的仪表板自动合并1 MR期间的仪表板与自动合并2

谢谢,朱利安

git-merge gitlab gitlab-ci

13
推荐指数
1
解决办法
1143
查看次数

gitlab runner请求的URL返回错误:403

我目前正在使用gitlab.com(非本地安装)和他们的多用户进行CI集成.这对我的一个项目非常有效,但对另一个项目失败了.

我在MSBuild版本14.0.23107.0上使用2012R2作为主机.我知道下面的错误显示403这是一个拒绝访问的消息.我的问题是找到要更改的权限设置.

错误信息:

使用gitlab-ci-multi-runner 1.5.3运行(fb49c47)使用Shell执行程序...在WIN-E0ORPCQUFHS上运行...

获取更改......

HEAD现在位于6a70d96更新转轮文件远程:访问被拒绝致命:无法访问' https:// gitlab-ci-token:xxxxxxxxxxxxxxxxxxxx@gitlab.com/##REDACTED##/ADInactiveObjectCleanup.git/ ':请求的网址已返回错误:403将60ea1410签出为生产...

致命:引用不是树:60ea1410dd7586f6ed9535d058f07c5bea2ba9c7错误:构建失败:退出状态128

gitlab-ci.yml文件:

variables:
  Solution: ADInactiveObjectCleanup.sln

before_script:
  #- "echo off"
  #- 'call "%VS120COMNTOOLS%\vsvars32.bat"'
  ## output environment variables (usefull for debugging, propably not what you want to do if your ci server is public)
  #- echo.
  #- set
  #- echo.

stages:
  - build
  #- test
  #- deploy

build:
  stage: build
  script:
  - echo building...
  - '"%ProgramFiles(x86)%\MSBuild\14.0\Bin\msbuild.exe" "%Solution%" /p:Configuration=Release'
  except:
  #- tags
Run Code Online (Sandbox Code Playgroud)

git msbuild gitlab gitlab-ci gitlab-ci-runner

13
推荐指数
2
解决办法
2万
查看次数

在GitLab CI中设置PostgreSQL

我正在尝试在GitLab.com上设置一个CI运行器,我想用它来运行需要PostgreSQL数据库连接的测试.CI + PostgreSQL的文档似乎过于简单,似乎告诉我们一旦提供了连接信息,就完成了数据库设置.因为我无法创建数据库,所以我可能会误解文档.我gitlab-ci.yml看起来像这样

image: node:latest

services:
  - postgres:latest

variables:
  POSTGRES_DB: rx_reactive_test
  POSTGRES_USER: rx_reactive_tester
  POSTGRES_PASSWORD: "1esdf3143"

cache:
  paths:
  - node_modules/

postgresql:
  script:
   - yarn install
   - npm test
Run Code Online (Sandbox Code Playgroud)

通过运行命令npm test`,它将运行一些将与数据库建立连接的测试.但是这些测试失败并显示错误消息

pg-reactive
  ? should build connection with the test database.
  1) should run a query returning one row.


1 passing (23ms)
1 failing

1) pg-reactive should run a query returning one row.:
   Uncaught Error: connect ECONNREFUSED 127.0.0.1:5432
    at Object.exports._errnoException (util.js:1033:11)
    at exports._exceptionWithHostPort (util.js:1056:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1099:14)
Run Code Online (Sandbox Code Playgroud)

这些测试与我的本地测试数据库运行良好,因此我的CI设置一定存在问题.我会感谢任何有关我的问题的帮助:-)

postgresql gitlab-ci

13
推荐指数
1
解决办法
4800
查看次数

Gitlab-runner语法错误

我最近使用docker image gitlab/gitlab-runner:9.1.0与gitlab容器一起使用了一些CI.发生错误并使用不同的版本推荐类似的支持请求,所以我尝试了:latest一些:1.11也是.不幸的是它一直告诉我这个错误:

Running with gitlab-ci-multi-runner 1.11.4 (5e7ba4a)
  on foo (02cdacdc)
Using Docker executor with image pretzlaw/php:7.1-apache ...
Starting service mariadb:latest ...
Pulling docker image mariadb:latest ...
Waiting for services to be up and running...
Pulling docker image pretzlaw/php:7.1-apache ...
Running on runner-02cdacdc-project-7-concurrent-0 via 9d1d33dc9212...
Fetching changes...
HEAD is now at 7580815 QA: CI Lint
From http://idgaf.example.org/foo/bar
   7580815..affeede  develop    -> origin/develop
Checking out affeede as develop...
Skipping Git submodules setup
[: 1: [: Syntax …
Run Code Online (Sandbox Code Playgroud)

gitlab docker gitlab-ci gitlab-ci-runner

13
推荐指数
1
解决办法
835
查看次数

Gitlab CI - SSH权限被拒绝(publickey,密码)

我一直在尝试为我的项目设置CD.我的Gitlab CI跑步者和我的项目将在同一台服务器上.我已经关注https://docs.gitlab.com/ee/ci/examples/deployment/composer-npm-deploy.html但我一直收到SSH Permission denied (publickey,password).错误.我在项目设置中正确设置了所有变量,私钥和其他变量.

我用ssh-keygen -t rsa -C "my.email@example.com" -b 4096命令创建了我的ssh密钥,没有密码短语,并PRODUCTION_PRIVATE_KEY~/.ssh/id_rsa文件内容设置我的变量.

这是我的gitlab-ci.yml:

stages:
  - deploy

deploy_production:
  stage: deploy
  image: tetraweb/php
  before_script:
    - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
    - eval $(ssh-agent -s)
    - ssh-add <(echo "$PRODUCTION_PRIVATE_KEY")
    - mkdir -p ~/.ssh
    - echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
    - apt-get install rsync
  script:
    - ssh $PRODUCTION_SERVER_USER@$PRODUCTION_SERVER
    - hostname
  only:
    - …
Run Code Online (Sandbox Code Playgroud)

ssh gitlab-ci

13
推荐指数
1
解决办法
7895
查看次数

带有 github/gitlab 页面的 vuejs 历史模式

有没有人设法弄清楚如何让 Vue.jshistory mode与 GitHub 或 GitLab Pages一起工作?

它适用于hash mode,但我不想hash mode用于 SEO 相关的原因。

路由器模式参考:https : //router.vuejs.org/en/essentials/history-mode.html

gitlab gitlab-ci vue.js vue-router vuejs2

13
推荐指数
6
解决办法
4981
查看次数

如何在Docker中使用GitLab Runner查看自定义CA根证书

我已安装并配置:

  1. 在HTTPS 上运行的ServerA上的本地GitLab Omnibus
  2. ServerB中作为Docker Service安装的本地GitLab-Runner

ServerA证书由自定义CA Root生成

配置

我已将CA根证书放在ServerB上:

/srv/gitlab-runner/config/certs/ca.crt
Run Code Online (Sandbox Code Playgroud)

按照容器中的Run GitLab Runner中的描述在ServerB上安装Runner - Docker镜像安装和配置:

docker run -d --name gitlab-runner --restart always \
           -v /srv/gitlab-runner/config:/etc/gitlab-runner \
           -v /var/run/docker.sock:/var/run/docker.sock \
           gitlab/gitlab-runner:latest
Run Code Online (Sandbox Code Playgroud)

注册跑步者 - 单行注册命令中所述注册跑步者:

docker run --rm -t -i 
            -v /srv/gitlab-runner/config:/etc/gitlab-runner 
           --name gitlab-docker-runner gitlab/gitlab-runner register \
           --non-interactive \
           --executor "docker" \
           --docker-image alpine:latest \
           --url "https://MY_PRIVATE_REPO_URL_HERE/" \
           --registration-token "MY_PRIVATE_TOKEN_HERE" \
           --description "MyDockerServer-Runner" \
           --tag-list …
Run Code Online (Sandbox Code Playgroud)

gitlab root-certificate docker gitlab-ci gitlab-ci-runner

13
推荐指数
3
解决办法
3122
查看次数

使用 GitLab CI 如何禁用一项作业的存储库克隆?

我需要加快工作“部署”。它不需要项目源,但只需要工件。

如何为唯一的工作禁用项目克隆?

典型.gitlab-ci.yml(伪)看起来像:

image: gcc

build:
  stage: build
  script:
  - ./configure
  - mkdir build && cd $_
  - cmake ..
  - make -sj8
artifacts:
  paths:
  - "build/*.elf"

deploy:
  image: artifactory
  variables:
  - DO_NOT_CLONE: 1  ## WANT THIS OPTION
  stage: deploy
  script:
  - push_artifacts build/*.elf
Run Code Online (Sandbox Code Playgroud)

yaml gitlab-ci

13
推荐指数
1
解决办法
3165
查看次数

如何将 GitLab CI 文件变量传递给 Dockerfile 和 docker 容器?

GitLab CI 允许向项目添加自定义变量。

它允许使用类型的秘密变量,file其中我指定了一个作为变量名称的密钥和作为文件内容的值(例如证书的内容)

然后在管道执行期间,内容将保存为临时文件,调用变量名称将返回创建文件的路径。

最终,我需要将此文件复制到构建项目时创建的 Docker 容器中。(docker build ...在yml中)

当如果变量作品测试,我想echo $VARIABLE.gitlab-ci.yml和它的作品,临时文件的路径返回。但是在RUN echo $VARIABLEin 中执行时Dockerfile,它是空的。因此我也不能使用ADD $VARIABLE /tmp/这是我的目标。

有没有办法解决这个问题并使这个文件可供Dockerfile? 我是 Docker 和 GitLab 的新手,不知道还能去哪里找。

gitlab docker gitlab-ci dockerfile devops

13
推荐指数
2
解决办法
8610
查看次数