标签: gitlab

外部URL必须包含FQDN

我设置了一个全新的CentOS 6.6安装,并将Omniubus安装程序用于Gitlab的CE.

运行gitlab-ctl reconfigure时出现以下错误:

================================================================================
Recipe Compile Error in /opt/gitlab/embedded/cookbooks/gitlab/recipes/default.rb
================================================================================


RuntimeError
------------
External URL must include a FQDN


Cookbook Trace:
---------------
  /opt/gitlab/embedded/cookbooks/gitlab/libraries/gitlab.rb:95:in `parse_external_url'
  /opt/gitlab/embedded/cookbooks/gitlab/libraries/gitlab.rb:191:in `generate_config'
  /opt/gitlab/embedded/cookbooks/gitlab/recipes/default.rb:34:in `from_file'


Relevant File Content:
----------------------
/opt/gitlab/embedded/cookbooks/gitlab/libraries/gitlab.rb:

 88:  
 89:      def parse_external_url
 90:        return unless external_url
 91:  
 92:        uri = URI(external_url.to_s)
 93:  
 94:        unless uri.host
 95>>         raise "External URL must include a FQDN"
 96:        end
 97:        Gitlab['user']['git_user_email'] ||= "gitlab@#{uri.host}"
 98:        Gitlab['gitlab_rails']['gitlab_host'] = uri.host
 99:        Gitlab['gitlab_rails']['gitlab_email_from'] ||= "gitlab@#{uri.host}"
100:  
101:        case uri.scheme
102:        when …
Run Code Online (Sandbox Code Playgroud)

gitlab

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

我们如何在gitlab-ci.yml中使用'variables'关键字?

我想variables:在这里使用Gitlab CI文档中记录的关键字:

来自:https://docs.gitlab.com/ce/ci/yaml/README.html

变量

此功能需要gitlab-runner版本等于或大于0.5.0.

GitLab CI允许您添加在构建环境中设置的.gitlab-ci.yml变量.变量存储在存储库中,用于存储非敏感项目配置,即.RAILS_ENV或DATABASE_URL.

variables:   
  DATABASE_URL: "postgres://postgres@postgres/my_database"
Run Code Online (Sandbox Code Playgroud)

这些变量稍后可用于所有已执行的命令和脚本.

YAML定义的变量也设置为所有创建的服务容器,从而允许对它们进行微调.

当我尝试使用它时,我的版本不会运行任何阶段,并且无论如何都标记为成功,这是一个糟糕的YAML的好兆头.我将gitlab-ci.yml内容粘贴到设置区域的LINT工具中,输出错误为:

状态:语法不正确

错误:变量作业:未知参数PACKAGE_NAME

我使用的YAML语法与文档相同,但是它不起作用.我无法找到任何与此相关的漏洞.以下是我当前的版本和我的gitlab-ci.yml的清理版本.

Gitlab版本:7.13.2 Omnibus

Gitlab Runner版本:0.5.2

gitlab-ci.yml(Sanitized)

types:
  - test
  - build

variables:
  PACKAGE_NAME: "awesome-django-app"
  PACKAGE_SUMMARY: "Awesome webapp backend."
  MAJOR_RELEASE: "1"
  MINOR_RELEASE: "0"
  PATCH_LEVEL: "0dev"
  DEV_DB_URL: "db"
  DEV_SERVER: "pydev.example.com"
  PROD_SERVER: "pyprod.example.com"
  TEST_SERVER: "pytest.example.com"

envtest:
  type: test
  script:
  - ". ./testbuild.sh"
  tags:
  - python2.7
  - postgres
  - linux
  except:
  - tags

buildrpm:
  type: build
  script:
  - mkdir -p …
Run Code Online (Sandbox Code Playgroud)

variables gitlab gitlab-ci

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

GitLab CI:即使脚本失败,如何继续工作

我的管道中有一份工作,其中有一个包含两个非常重要步骤的脚本:

  • mvn test 对我的代码运行 JUnit 测试
  • junit2html 将测试的 XML 结果转换为 HTML 格式(查看结果的唯一可能方法,因为我的管道不是通过 MR 完成的)作为工件上传到 GitLab
  • docker rm 销毁之前在管道中创建的容器

我的问题是,当我的测试失败时,脚本会立即停止在mvn test,因此junit2html永远不会到达该步骤,这意味着在失败的情况下永远不会上传测试结果,也永远docker rm不会执行,因此容器仍然存在并弄乱了后续管道其结果。

我想要的是即使脚本在某些时候失败,也能够将工作持续到最后。基本上,该作业在 GitLab CI / CD 中仍应算作失败,但应执行其整个脚本。我该如何配置?

gitlab gitlab-ci

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

Docker 登录:访问被拒绝,您必须使用个人访问令牌

尝试使用以下命令从 docker 登录 gitlab:

sudo docker login registry.gitlab.com?private_token=XXX
Run Code Online (Sandbox Code Playgroud)

但我仍然有以下错误消息:

Error response from daemon: Get https://registry.gitlab.com/v2/: unauthorized: HTTP Basic: Access denied\nYou must use a personal access token with 'api' scope for Git over HTTP.\nYou can generate one at https://gitlab.com/-/profile/personal_access_tokens
Run Code Online (Sandbox Code Playgroud)

该令牌具有正确的访问权限,我仔细检查了...我对 docker 相当陌生,有任何提示/帮助吗?谢谢!

gitlab docker

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

SSL 证书问题:无法获取本地颁发者证书 AZURE DEVOPS

我有一个问题...我的代码在 Gitlab 中,管道在 Azure DevOps 中。我使用经典编辑器。当我启动管道时,出现错误“致命:无法访问‘致命:无法访问’https://my.repos.example:***.git/’:SSL 证书问题:无法获取本地颁发者证书”请帮我!

ssl azure gitlab azure-devops

24
推荐指数
3
解决办法
4万
查看次数

使用Google帐户登录时,请使用gitlab的https链接

我已经使用他们与Google帐户的连接注册了Gitlab.一旦完成并且我有权从git存储库克隆,我尝试使用https://链接克隆(而不是git:SSH一个)

现在要完成此过程,我被问到我的用户名和密码,但在这种情况下是什么?请不要建议使用SSH链接,因为在Windows操作系统上ssh并不简单.

git https gitlab

23
推荐指数
2
解决办法
8727
查看次数

如何将GitLab迁移到新服务器?

我正在尝试将GitLab设置从7.8.2迁移到7.12.2.我真的不确定如何解决这个问题.我在Ubuntu 14.04.2上安装了一个新盒子.现在我真的想导出旧的用户/组数据库并将其导入新服务器,然后将所有存储库从旧服务器复制到新服务器.并告诉用户开始使用新的用户.

我不知道我的新gitlab安装使用哪个数据库,也不知道旧数据库.

我一直在gitlab文档上下,但找不到有关如何从一台服务器迁移到另一台服务器的足够信息.

我按照https://about.gitlab.com/downloads/上的说明进行了ubuntu,一切似乎都运行正常.我正在寻找一种方法从旧的gitlab框导出用户/组,并将其导入新的gitlab框.然后只需将所有存储库从旧框复制到新框.

任何帮助?我对gitlab几乎一无所知:(

gitlab

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

Gitlab CI Build失败了gitlab-runner-prebuilt.tar.xz:没有这样的文件或目录

我刚刚在我的开发机器(Ubuntu 17.10)上安装了Gitlab Runner进行测试.当我跑步时,我得到了:

$: sudo gitlab-runner exec docker test       
   Running with gitlab-ci-multi-runner dev (1.4.2)
   Using Docker executor with image php:5.6 ...
   ERROR: Build failed (system failure): open /var/lib/gitlab-runner/gitlab-runner-prebuilt.tar.xz: no such file or directory
   FATAL: open /var/lib/gitlab-runner/gitlab-runner-prebuilt.tar.xz: no such file or directory 
Run Code Online (Sandbox Code Playgroud)

.gitlab-ci.yml文件:

image: php:5.6

before_script:
  - php -v

stages:
  - test

test:
  script:
  - php -v
Run Code Online (Sandbox Code Playgroud)

目前的安装过程:

sudo apt-get install gitlab-runner
Run Code Online (Sandbox Code Playgroud)

输出:

...
Configuring gitlab-ci-multi-runner (1.4.2+dfsg-1) ...
I: generating GitLab Runner Docker image. This may take a while...
E: No …
Run Code Online (Sandbox Code Playgroud)

gitlab gitlab-ci gitlab-ci-runner

23
推荐指数
2
解决办法
6473
查看次数

什么是 GitLab 实例 URL,如何获取?

我试过到处寻找它,但我找不到任何东西。

如果有人可以开箱即用地定义它,那就太棒了。

我不知道 GitLab URL 的实例是什么。我在问是否有人可以澄清它是什么,我在哪里可以得到它。我目前正在尝试将它添加到Visual Studio Code扩展GitLab Workflow 中。该扩展程序要求提供我的 GitLab 实例 URL,但我不知道从哪里获取。

gitlab

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

如何为所有开发人员配置 git hooks

我想在全球范围内应用一致的提交消息规则,以便所有开发人员在提交消息中遇到 jira 问题。

使用企业github。

经发现,可以使用.git/hooks/commit-msg相应更新的文件来实现。

问题:如何应用此更新的 git hooks 以供所有开发人员使用。我没有看到 上出现任何变化git status。不确定是否必须配置不同的方式,因此,commit-msg constrain将适用于所有开发人员而不是本地开发人员。你能指导一下吗?

git github githooks git-commit gitlab

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