首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模板文件在Gitlab CI/CD中不是有效位置

模板文件在Gitlab CI/CD中不是有效位置
EN

Stack Overflow用户
提问于 2021-12-31 17:56:55
回答 1查看 576关注 0票数 1

我已经修改了我的Gitlab CI/CD当前过程,使用codeclimate添加了一个关于代码质量的阶段。我已经尽可能地遵循了Gitlab文档,但是我发现了一个关于配置模板的错误。

代码语言:javascript
复制
 .codeclimate.yml is not a valid location!

以下是我的.gitlabci.yml文件的内容

代码语言:javascript
复制
include:
 - template: .codeclimate.yml

stages:
  - slack-start-prod
  - slack-start-staging
  - docker
  - test
  - code-quality
  - deploy-staging
  - deploy-prod
  - slack-end-prod
  - slack-end-staging
  - slack-failure

//////////////////////////////////////////////////////////

#------------------------------------------
# run tests on builded docker image
#------------------------------------------
test:
  stage: test
  image:
    name: $CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA
  services:
    - name: mysql:5.7
      alias: mysql
    - name: redis:6
      alias: redis
  variables:
    MYSQL_DATABASE: xx
    MYSQL_ROOT_PASSWORD: xx
    MYSQL_USERNAME: xx
    MYSQL_HOST: xx
  artifacts:
    reports:
      junit: phpunit-report.xml
    expire_in: 10 minutes
    when: always
  before_script:
    - until $(nc -z -v -w1 mysql 3306);do echo Waiting for mysql to be ready... && sleep 5s;done
  script:
    - cp .env.test.example /var/www/html/.env
    - echo 'ok' | mysql --user="$MYSQL_USERNAME" --password="$MYSQL_ROOT_PASSWORD" --host="$MYSQL_HOST" --execute="CREATE DATABASE xx"
    - cd /var/www/html
    - php artisan migrate --force
    - php -dxdebug.mode=coverage vendor/bin/phpunit --configuration phpunit.xml --log-junit phpunit-report.xml --coverage-text --colors=never
    - cp phpunit-report.xml $CI_PROJECT_DIR/
  tags:
    - kubernetes
#------------------------------------------
# run code quality
#------------------------------------------
code-quality:
  stage: test
  services:
    - name: codeclimate/codeclimate-phpcodesniffer
      alias: codeclimate-phpcodesniffer
    - name: codeclimate/codeclimate-duplication
      alias: codeclimate-duplication
  image:
    name: $CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA
  artifacts:
    paths: [gl-code-quality-report.json]
    reports:
      codequality: gl-code-quality-report.json
  script:
    - codeclimate analyze
    - cp gl-code-quality-report.json $CI_PROJECT_DIR/
  variables:
    REPORT_FORMAT: html
  tags:
    - kubernetes

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
EN

回答 1

Stack Overflow用户

发布于 2021-12-31 20:29:06

.codeclimate.yml模板是项目中的本地文件吗?如果是这样,请使用局部关键字指定本地yaml文件。

代码语言:javascript
复制
include:
  - local: .codeclimate.yml

代码语言:javascript
复制
include:
  - local: '.codeclimate.yml'

编辑:在阅读了Gitlab博士之后,这就不应该那么复杂了,因为编译码插件已经集成到所有层中了。

代码语言:javascript
复制
include:
  - template: Code-Quality.gitlab-ci.yml

code_quality:
  artifacts:
    paths: [gl-code-quality-report.json]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70544625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档