diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index d5cc20df6a56bf2802daeaeb7688402a999995a0..5d006a8c34d4da2986d9dbbadcf2da100a1db158 100644 --- a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml @@ -10,7 +10,6 @@ services: stages: - build - - postcheck workflow: rules: @@ -95,94 +94,4 @@ industrial_ci_kinetic_deploy: rules: - if: $CI_COMMIT_TAG -clang_format: - stage: postcheck - before_script: - - apk add --update bash coreutils tar wget - - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config -b legacy - - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/clang-format -O .clang-format - script: .ci_config/gitlab.sh - variables: - ROS_DISTRO: kinetic - CLANG_FORMAT_CHECK: file - CLANG_FORMAT_VERSION: "3.8" - when: always - tags: - - docker - -########################################################## -## Simple check for basic Python syntax errors; this is much less thorough than -## other options like pylint, but much faster and less strict -########################################################## -python_syntax: - before_script: - - apk add --update python2 - stage: build - script: python -m compileall -q . - when: always - tags: - - docker - -########################################################## -## Check for errors in bash/sh scripts -## Uses https://github.com/koalaman/shellcheck -########################################################## -bash_syntax: - before_script: - - apk add --update shellcheck - stage: postcheck - script: - - RET=0 - - find . -type f -name '*.sh' -exec shellcheck -s sh {} + || RET=1 - - find . -type f -name '*.bash' -exec shellcheck -s bash {} + || RET=1 - - exit $RET - when: always - tags: - - docker - -########################################################## -## Check for errors in markdown files -## Uses https://github.com/cytopia/awesome-ci -## Disables the line length rule with --custom="-r ..." -## See other rules that can be configured in -## https://github.com/markdownlint/markdownlint/blob/master/docs/RULES.md -########################################################## -markdown_syntax: - stage: postcheck - script: docker run -v ${PWD}:/ac tecnalia-docker-dev.artifact.tecnalia.com/cytopia/awesome-ci syntax-markdown --path=/ac --extension=md --ignore=.ci_config --custom="-r ~MD013,~MD014" - when: always - tags: - - docker - -########################################################## -## Check for various syntax issues in files; currently -## trailing white spaces -## utf8 formatting -## Uses https://github.com/cytopia/awesome-ci -########################################################## -file_syntax: - stage: postcheck - script: - - RET=0 - - docker run -v ${PWD}:/ac tecnalia-docker-dev.artifact.tecnalia.com/cytopia/awesome-ci file-trailing-space --path=/ac --extension=py,txt,cpp,h,md,sh,bash,xml,launch --ignore=.ci_config || RET=1 - - docker run -v ${PWD}:/ac tecnalia-docker-dev.artifact.tecnalia.com/cytopia/awesome-ci file-utf8 --path=/ac --extension=py,txt,cpp,h,md,sh,bash,xml,launch --ignore=.ci_config || RET=1 - - exit $RET - when: always - tags: - - docker - -########################################################## -## Check for errors in Asciidoctor files -## Could not find a proper linter for Asciidoctor format, -## so this is a custom-made "dirty" script -########################################################## -adoc_syntax: - stage: postcheck - image: tecnalia-docker-dev.artifact.tecnalia.com/alpine - before_script: - - apk add --update curl asciidoctor bash - script: - - curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/asciidoctor_syntax_check.bash | bash -s -- . - tags: - - docker - when: always +include : '/gitlab_ci/post-check.yml' \ No newline at end of file diff --git a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml index 643b46b90f57fd6dc841bab60ea50fbb85243083..a9531b12d338e17b95bf6e0901fa96f0817da981 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -97,94 +97,4 @@ industrial_ci_kinetic_deploy: rules: - if: $CI_COMMIT_TAG -clang_format: - stage: postcheck - before_script: - - apk add --update bash coreutils tar wget - - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config -b legacy - - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/clang-format -O .clang-format - script: .ci_config/gitlab.sh - variables: - ROS_DISTRO: kinetic - CLANG_FORMAT_CHECK: file - CLANG_FORMAT_VERSION: "3.8" - when: always - tags: - - docker - -########################################################## -## Simple check for basic Python syntax errors; this is much less thorough than -## other options like pylint, but much faster and less strict -########################################################## -python_syntax: - before_script: - - apk add --update python2 - stage: build - script: python -m compileall -q . - when: always - tags: - - docker - -########################################################## -## Check for errors in bash/sh scripts -## Uses https://github.com/koalaman/shellcheck -########################################################## -bash_syntax: - before_script: - - apk add --update shellcheck - stage: postcheck - script: - - RET=0 - - find . -type f -name '*.sh' -exec shellcheck -s sh {} + || RET=1 - - find . -type f -name '*.bash' -exec shellcheck -s bash {} + || RET=1 - - exit $RET - when: always - tags: - - docker - -########################################################## -## Check for errors in markdown files -## Uses https://github.com/cytopia/awesome-ci -## Disables the line length rule with --custom="-r ..." -## See other rules that can be configured in -## https://github.com/markdownlint/markdownlint/blob/master/docs/RULES.md -########################################################## -markdown_syntax: - stage: postcheck - script: docker run -v ${PWD}:/ac tecnalia-docker-dev.artifact.tecnalia.com/cytopia/awesome-ci syntax-markdown --path=/ac --extension=md --ignore=.ci_config --custom="-r ~MD013,~MD014" - when: always - tags: - - docker - -########################################################## -## Check for various syntax issues in files; currently -## trailing white spaces -## utf8 formatting -## Uses https://github.com/cytopia/awesome-ci -########################################################## -file_syntax: - stage: postcheck - script: - - RET=0 - - docker run -v ${PWD}:/ac tecnalia-docker-dev.artifact.tecnalia.com/cytopia/awesome-ci file-trailing-space --path=/ac --extension=py,txt,cpp,h,md,sh,bash,xml,launch --ignore=.ci_config || RET=1 - - docker run -v ${PWD}:/ac tecnalia-docker-dev.artifact.tecnalia.com/cytopia/awesome-ci file-utf8 --path=/ac --extension=py,txt,cpp,h,md,sh,bash,xml,launch --ignore=.ci_config || RET=1 - - exit $RET - when: always - tags: - - docker - -########################################################## -## Check for errors in Asciidoctor files -## Could not find a proper linter for Asciidoctor format, -## so this is a custom-made "dirty" script -########################################################## -adoc_syntax: - stage: postcheck - image: tecnalia-docker-dev.artifact.tecnalia.com/alpine - before_script: - - apk add --update curl asciidoctor bash - script: - - curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/asciidoctor_syntax_check.bash | bash -s -- . - tags: - - docker - when: always +include : '/gitlab_ci/post-check.yml' \ No newline at end of file diff --git a/gitlab-ci/post-check.yml b/gitlab-ci/post-check.yml new file mode 100644 index 0000000000000000000000000000000000000000..3124256d93d7cebed0833be0c58199af864a8c7a --- /dev/null +++ b/gitlab-ci/post-check.yml @@ -0,0 +1,95 @@ +########################################################## +## Check formating of C and C++ files using clang-format +########################################################## + +clang_format: + stage: .post + before_script: + - apk add --update bash coreutils tar wget + - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config -b legacy + - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/clang-format -O .clang-format + script: .ci_config/gitlab.sh + variables: + ROS_DISTRO: kinetic + CLANG_FORMAT_CHECK: file + CLANG_FORMAT_VERSION: "3.8" + when: always + tags: + - docker + +########################################################## +## Simple check for basic Python syntax errors; this is much less thorough than +## other options like pylint, but much faster and less strict +########################################################## +python_syntax: + before_script: + - apk add --update python2 + stage: build + script: python -m compileall -q . + when: always + tags: + - docker + +########################################################## +## Check for errors in bash/sh scripts +## Uses https://github.com/koalaman/shellcheck +########################################################## +bash_syntax: + before_script: + - apk add --update shellcheck + stage: .post + script: + - RET=0 + - find . -type f -name '*.sh' -exec shellcheck -s sh {} + || RET=1 + - find . -type f -name '*.bash' -exec shellcheck -s bash {} + || RET=1 + - exit $RET + when: always + tags: + - docker + +########################################################## +## Check for errors in markdown files +## Uses https://github.com/cytopia/awesome-ci +## Disables the line length rule with --custom="-r ..." +## See other rules that can be configured in +## https://github.com/markdownlint/markdownlint/blob/master/docs/RULES.md +########################################################## +markdown_syntax: + stage: .post + script: docker run -v ${PWD}:/ac tecnalia-docker-dev.artifact.tecnalia.com/cytopia/awesome-ci syntax-markdown --path=/ac --extension=md --ignore=.ci_config --custom="-r ~MD013,~MD014" + when: always + tags: + - docker + +########################################################## +## Check for various syntax issues in files; currently +## trailing white spaces +## utf8 formatting +## Uses https://github.com/cytopia/awesome-ci +########################################################## +file_syntax: + stage: .post + script: + - RET=0 + - docker run -v ${PWD}:/ac tecnalia-docker-dev.artifact.tecnalia.com/cytopia/awesome-ci file-trailing-space --path=/ac --extension=py,txt,cpp,h,md,sh,bash,xml,launch --ignore=.ci_config || RET=1 + - docker run -v ${PWD}:/ac tecnalia-docker-dev.artifact.tecnalia.com/cytopia/awesome-ci file-utf8 --path=/ac --extension=py,txt,cpp,h,md,sh,bash,xml,launch --ignore=.ci_config || RET=1 + - exit $RET + when: always + tags: + - docker + +########################################################## +## Check for errors in Asciidoctor files +## Could not find a proper linter for Asciidoctor format, +## so this is a custom-made "dirty" script +########################################################## +adoc_syntax: + stage: .post + image: tecnalia-docker-dev.artifact.tecnalia.com/alpine + before_script: + - apk add --update curl asciidoctor bash + script: + - curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/asciidoctor_syntax_check.bash | bash -s -- . + tags: + - docker + when: always