Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
static_analysis.gitlab-ci.yml 1.28 KiB
static_analysis:cpp:
  stage: static_analysis
  tags:
    - static_analysis
  allow_failure: true
  script:
    - mkdir -p $CI_COMMIT_REF_NAME
    - cppcheck -j 4 --enable=all --inconclusive --force --xml --xml-version=2 . 2> cppcheck-result.xml
    - python -m pip install Pygments
    - cppcheck-htmlreport --file=cppcheck-result.xml --report-dir=$CI_COMMIT_REF_NAME --source-dir=.
    - python3 -m pip install -U cppcheck_codequality
    - cppcheck-codequality --input-file=cppcheck-result.xml --output-file=cppcheck.json
    - mkdir -p public/cpp
    - mv $CI_COMMIT_REF_NAME public/cpp/
  artifacts:
    paths: 
      - public
    reports:
      codequality: cppcheck.json

static_analysis:python:
  stage: static_analysis
  tags:
    - static_analysis
  allow_failure: true
  script:
    - pip install pylint
    - pip install pylint-gitlab
    - pylint --rcfile=.pylintrc --exit-zero --output-format=pylint_gitlab.GitlabCodeClimateReporter ${CI_PROJECT_NAME}/ > codeclimate.json
    - pylint --rcfile=.pylintrc --exit-zero --output-format=pylint_gitlab.GitlabPagesHtmlReporter ${CI_PROJECT_NAME}/ > pylint.html
    - mkdir -p public/python/$CI_COMMIT_REF_NAME
    - mv pylint.html public/python/$CI_COMMIT_REF_NAME/
  artifacts:
    paths:
      - public
    reports:
      codequality: codeclimate.json