From 904d259e75e0b42b18fd5a0d89b54929f629d00a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Fri, 3 Sep 2021 12:00:05 +0200 Subject: [PATCH 01/25] Move post-check to separate yml --- ...ab-industrial-ci-kinetic-no-rosinstall.yml | 93 +----------------- ...-industrial-ci-kinetic-with-rosinstall.yml | 92 +----------------- gitlab-ci/post-check.yml | 95 +++++++++++++++++++ 3 files changed, 97 insertions(+), 183 deletions(-) create mode 100644 gitlab-ci/post-check.yml diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index d5cc20d..5d006a8 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 643b46b..a9531b1 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 0000000..3124256 --- /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 -- GitLab From a5b15dd5d1c9872e176ae09085075548c3fe7537 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Fri, 3 Sep 2021 12:21:39 +0200 Subject: [PATCH 02/25] Make nested includes point to remote --- .gitlab-industrial-ci-kinetic-no-rosinstall.yml | 2 +- .gitlab-industrial-ci-kinetic-with-rosinstall.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index 5d006a8..5946ecc 100644 --- a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml @@ -94,4 +94,4 @@ industrial_ci_kinetic_deploy: rules: - if: $CI_COMMIT_TAG -include : '/gitlab_ci/post-check.yml' \ No newline at end of file +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/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 a9531b1..650d5d5 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -97,4 +97,4 @@ industrial_ci_kinetic_deploy: rules: - if: $CI_COMMIT_TAG -include : '/gitlab_ci/post-check.yml' \ No newline at end of file +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/gitlab-ci/post-check.yml' \ No newline at end of file -- GitLab From 91d7fee50bdbf31ffe5bc1a5225ec919b3ef5dd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Fri, 3 Sep 2021 12:23:19 +0200 Subject: [PATCH 03/25] Remove unused postcheck --- .gitlab-industrial-ci-kinetic-with-rosinstall.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml index 650d5d5..c195c36 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -10,7 +10,6 @@ services: stages: - build - - postcheck workflow: rules: -- GitLab From 6077b2dbeb15dd5009744fdaeb0825e3305424bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Fri, 3 Sep 2021 14:10:52 +0200 Subject: [PATCH 04/25] Test vars --- .gitlab-industrial-ci.yml | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .gitlab-industrial-ci.yml diff --git a/.gitlab-industrial-ci.yml b/.gitlab-industrial-ci.yml new file mode 100644 index 0000000..b3f813e --- /dev/null +++ b/.gitlab-industrial-ci.yml @@ -0,0 +1,38 @@ +variables: + DEFAULT_DISTRO: "kinetic" + +workflow: + rules: + - if: + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ + variables: + DEFAULT_DISTRO: "melodic" + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ + variables: + DEFAULT_DISTRO: "noetic" + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ + variables: + DEFAULT_DISTRO: "kinetic" + - exists: + - .rosinstall + +export: + script: export + +noetic: + script: echo noetic + rules: + - if: '$DEFAULT_DISTRO == "noetic"' + - if: $BUILD_NOETIC + +melodic: + script: echo melodic + rules: + - if: '$DEFAULT_DISTRO == "melodic"' + - if: $BUILD_MELODIC + +kinetic: + script: echo kinetic + rules: + - if: '$DEFAULT_DISTRO == "kinetic"' + - if: $BUILD_KINETIC \ No newline at end of file -- GitLab From 6f776a62bb9814604c8c1142c8c374c56484bcdc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 6 Sep 2021 09:27:08 +0200 Subject: [PATCH 05/25] With rosinstall now just includes no rosinstall --- ...-industrial-ci-kinetic-with-rosinstall.yml | 84 +------------------ 1 file changed, 2 insertions(+), 82 deletions(-) diff --git a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml index c195c36..a3fa130 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -1,24 +1,4 @@ -image: tecnalia-docker-dev.artifact.tecnalia.com/docker:git - -variables: - TMPDIR: /builds/${CI_PROJECT_NAMESPACE} - GIT_LFS_SKIP_SMUDGE: 1 # Avoid fetching the files from LFS when doing git fetch - -services: - - name: tecnalia-docker-dev.artifact.tecnalia.com/docker:dind - alias: docker - -stages: - - build - -workflow: - rules: - - if: $CI_COMMIT_TAG - - if: $CI_COMMIT_BRANCH - -before_script: - - apk add --update bash coreutils tar wget - - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-kinetic-no-rosinstall.yml' .industrial_ci: stage: build @@ -36,64 +16,4 @@ before_script: AFTER_SETUP_TARGET_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" CMAKE_ARGS: '-DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context' tags: - - docker - -industrial_ci_kinetic: - extends: .industrial_ci - variables: - ROS_DISTRO: kinetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: - - if: $CI_COMMIT_TAG - when: never - - if: $CI_COMMIT_REF_NAME =~ /^melodic-.*/ - when: never - - if: $CI_COMMIT_REF_NAME =~ /^noetic-.*/ - when: never - - when: always - -industrial_ci_melodic: - extends: .industrial_ci - variables: - ROS_DISTRO: melodic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: - - if: $CI_COMMIT_TAG - when: never - - if: $CI_COMMIT_REF_NAME =~ /^melodic-.*/ - -industrial_ci_noetic: - extends: .industrial_ci - variables: - ROS_DISTRO: noetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: - - if: $CI_COMMIT_TAG - when: never - - if: $CI_COMMIT_REF_NAME =~ /^noetic-.*/ - -industrial_ci_kinetic_deploy: - extends: .industrial_ci - variables: - ROS_DISTRO: kinetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - AFTER_SCRIPT: "wget -q -O - https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/pre-deploy-cleanup.bash | bash" - DOCKER_COMMIT: industrial_ci_image - script: - - .ci_config/gitlab.sh - - cd $(mktemp -d) - - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/archive/master/gitlab_templates-master.zip - - unzip gitlab_templates-master.zip && cd gitlab_templates-master/deploy - - cd base - - chmod a+x ros_entrypoint.bash - - docker build -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} . - - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} - - cd .. - - cd dev - - docker build --build-arg APPLICATION_IMAGE=${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev . - - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev - - cd .. - rules: - - if: $CI_COMMIT_TAG - -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/gitlab-ci/post-check.yml' \ No newline at end of file + - docker \ No newline at end of file -- GitLab From c6f626aaaa9981051138097aee008e1321b0038c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 6 Sep 2021 09:42:41 +0200 Subject: [PATCH 06/25] Update rules --- ...ab-industrial-ci-kinetic-no-rosinstall.yml | 47 ++++++++++++++----- 1 file changed, 36 insertions(+), 11 deletions(-) diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index 5946ecc..b3be1cc 100644 --- a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml @@ -3,6 +3,7 @@ image: tecnalia-docker-dev.artifact.tecnalia.com/docker:git variables: TMPDIR: /builds/${CI_PROJECT_NAMESPACE} GIT_LFS_SKIP_SMUDGE: 1 # Avoid fetching the files from LFS when doing git fetch + DEFAULT_DISTRO: "kinetic" services: - name: tecnalia-docker-dev.artifact.tecnalia.com/docker:dind @@ -13,7 +14,30 @@ stages: workflow: rules: + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ + variables: + DEFAULT_DISTRO: "kinetic" + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ + variables: + DEFAULT_DISTRO: "melodic" + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ + variables: + DEFAULT_DISTRO: "noetic" + - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ + variables: + DEFAULT_DISTRO: "kinetic" + DEPLOY: "true" + - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ + variables: + DEFAULT_DISTRO: "melodic" + DEPLOY: "true" + - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ + variables: + DEFAULT_DISTRO: "noetic" + DEPLOY: "true" - if: $CI_COMMIT_TAG + variables: + DEPLOY: "true" - if: $CI_COMMIT_BRANCH before_script: @@ -42,13 +66,10 @@ industrial_ci_kinetic: ROS_DISTRO: kinetic DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" rules: - - if: $CI_COMMIT_TAG - when: never - - if: $CI_COMMIT_REF_NAME =~ /^melodic-.*/ + - if: $DEPLOY when: never - - if: $CI_COMMIT_REF_NAME =~ /^noetic-.*/ - when: never - - when: always + - if: $DEFAULT_DISTRO == "kinetic" + - if: $BUILD_KINETIC industrial_ci_melodic: extends: .industrial_ci @@ -56,9 +77,11 @@ industrial_ci_melodic: ROS_DISTRO: melodic DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" rules: - - if: $CI_COMMIT_TAG + rules: + - if: $DEPLOY when: never - - if: $CI_COMMIT_REF_NAME =~ /^melodic-.*/ + - if: $DEFAULT_DISTRO == "melodic" + - if: $BUILD_MELODIC industrial_ci_noetic: extends: .industrial_ci @@ -66,9 +89,11 @@ industrial_ci_noetic: ROS_DISTRO: noetic DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" rules: - - if: $CI_COMMIT_TAG + rules: + - if: $DEPLOY when: never - - if: $CI_COMMIT_REF_NAME =~ /^noetic-.*/ + - if: $DEFAULT_DISTRO == "noetic" + - if: $BUILD_NOETIC industrial_ci_kinetic_deploy: extends: .industrial_ci @@ -92,6 +117,6 @@ industrial_ci_kinetic_deploy: - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev - cd .. rules: - - if: $CI_COMMIT_TAG + - if: $DEPLOY include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/gitlab-ci/post-check.yml' \ No newline at end of file -- GitLab From 3c6ca5d2027f11dcc7b70bf4ddb5f5c77289bcc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 6 Sep 2021 10:00:55 +0200 Subject: [PATCH 07/25] Update deploy rules --- ...ab-industrial-ci-kinetic-no-rosinstall.yml | 29 +++++++++++++++++-- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index b3be1cc..f5be763 100644 --- a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml @@ -95,11 +95,9 @@ industrial_ci_noetic: - if: $DEFAULT_DISTRO == "noetic" - if: $BUILD_NOETIC -industrial_ci_kinetic_deploy: +.industrial_ci_deploy: extends: .industrial_ci variables: - ROS_DISTRO: kinetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" AFTER_SCRIPT: "wget -q -O - https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/pre-deploy-cleanup.bash | bash" DOCKER_COMMIT: industrial_ci_image script: @@ -119,4 +117,29 @@ industrial_ci_kinetic_deploy: rules: - if: $DEPLOY + +industrial_kinetic_deploy: + extends: + - industrial_ci_kinetic + - .industrial_ci_deploy + rules: + - if: $DEPLOY && $DEFAULT_DISTRO == "kinetic" + - if: $DEPLOY && $BUILD_KINETIC + +industrial_melodic_deploy: + extends: + - industrial_ci_melodic + - .industrial_ci_deploy + rules: + - if: $DEPLOY && $DEFAULT_DISTRO == "melodic" + - if: $DEPLOY && $BUILD_MELODIC + +industrial_noetic_deploy: + extends: + - industrial_ci_noetic + - .industrial_ci_deploy + rules: + - if: $DEPLOY && $DEFAULT_DISTRO == "noetic" + - if: $DEPLOY && $BUILD_NOETIC + include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/gitlab-ci/post-check.yml' \ No newline at end of file -- GitLab From 74f619d348907f2af3cbf5a44820a4d3f469e4cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 6 Sep 2021 10:15:48 +0200 Subject: [PATCH 08/25] Update file structure --- ...ab-industrial-ci-kinetic-no-rosinstall.yml | 145 +----------------- ...-industrial-ci-kinetic-with-rosinstall.yml | 21 +-- .gitlab-industrial-ci-no-rosinstall.yml | 144 +++++++++++++++++ .gitlab-industrial-ci-with-rosinstall.yml | 19 +++ .gitlab-industrial-ci.yml | 38 ----- 5 files changed, 168 insertions(+), 199 deletions(-) create mode 100644 .gitlab-industrial-ci-no-rosinstall.yml create mode 100644 .gitlab-industrial-ci-with-rosinstall.yml delete mode 100644 .gitlab-industrial-ci.yml diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index f5be763..be59599 100644 --- a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml @@ -1,145 +1,4 @@ -image: tecnalia-docker-dev.artifact.tecnalia.com/docker:git +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-no-rosinstall.yml' variables: - TMPDIR: /builds/${CI_PROJECT_NAMESPACE} - GIT_LFS_SKIP_SMUDGE: 1 # Avoid fetching the files from LFS when doing git fetch - DEFAULT_DISTRO: "kinetic" - -services: - - name: tecnalia-docker-dev.artifact.tecnalia.com/docker:dind - alias: docker - -stages: - - build - -workflow: - rules: - - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ - variables: - DEFAULT_DISTRO: "kinetic" - - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ - variables: - DEFAULT_DISTRO: "melodic" - - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ - variables: - DEFAULT_DISTRO: "noetic" - - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ - variables: - DEFAULT_DISTRO: "kinetic" - DEPLOY: "true" - - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ - variables: - DEFAULT_DISTRO: "melodic" - DEPLOY: "true" - - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ - variables: - DEFAULT_DISTRO: "noetic" - DEPLOY: "true" - - if: $CI_COMMIT_TAG - variables: - DEPLOY: "true" - - if: $CI_COMMIT_BRANCH - -before_script: - - apk add --update bash coreutils tar wget - - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - -.industrial_ci: - stage: build - before_script: - - apk add --update bash coreutils tar - - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config - - docker login ${ARTIFACT_DOCKER_URL} -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - script: .ci_config/gitlab.sh - variables: - ADDITIONAL_DEBS: curl - PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM - AFTER_SETUP_TARGET_WORKSPACE: rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws - CMAKE_ARGS: -DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context - tags: - - docker - -industrial_ci_kinetic: - extends: .industrial_ci - variables: - ROS_DISTRO: kinetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: - - if: $DEPLOY - when: never - - if: $DEFAULT_DISTRO == "kinetic" - - if: $BUILD_KINETIC - -industrial_ci_melodic: - extends: .industrial_ci - variables: - ROS_DISTRO: melodic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: - rules: - - if: $DEPLOY - when: never - - if: $DEFAULT_DISTRO == "melodic" - - if: $BUILD_MELODIC - -industrial_ci_noetic: - extends: .industrial_ci - variables: - ROS_DISTRO: noetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: - rules: - - if: $DEPLOY - when: never - - if: $DEFAULT_DISTRO == "noetic" - - if: $BUILD_NOETIC - -.industrial_ci_deploy: - extends: .industrial_ci - variables: - AFTER_SCRIPT: "wget -q -O - https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/pre-deploy-cleanup.bash | bash" - DOCKER_COMMIT: industrial_ci_image - script: - - .ci_config/gitlab.sh - - cd $(mktemp -d) - - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/archive/master/gitlab_templates-master.zip - - unzip gitlab_templates-master.zip && cd gitlab_templates-master/deploy - - cd base - - chmod a+x ros_entrypoint.bash - - docker build -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} . - - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} - - cd .. - - cd dev - - docker build --build-arg APPLICATION_IMAGE=${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev . - - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev - - cd .. - rules: - - if: $DEPLOY - - -industrial_kinetic_deploy: - extends: - - industrial_ci_kinetic - - .industrial_ci_deploy - rules: - - if: $DEPLOY && $DEFAULT_DISTRO == "kinetic" - - if: $DEPLOY && $BUILD_KINETIC - -industrial_melodic_deploy: - extends: - - industrial_ci_melodic - - .industrial_ci_deploy - rules: - - if: $DEPLOY && $DEFAULT_DISTRO == "melodic" - - if: $DEPLOY && $BUILD_MELODIC - -industrial_noetic_deploy: - extends: - - industrial_ci_noetic - - .industrial_ci_deploy - rules: - - if: $DEPLOY && $DEFAULT_DISTRO == "noetic" - - if: $DEPLOY && $BUILD_NOETIC - -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/gitlab-ci/post-check.yml' \ No newline at end of file + - DEFAULT_DISTRO: kinetic \ 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 a3fa130..c33bfce 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -1,19 +1,4 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-kinetic-no-rosinstall.yml' +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-with-rosinstall.yml' -.industrial_ci: - stage: build - before_script: - - apk add --update bash coreutils tar - - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config - - docker login ${ARTIFACT_DOCKER_URL} -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - script: .ci_config/gitlab.sh - variables: - ADDITIONAL_DEBS: curl - PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM - UPSTREAM_WORKSPACE: .rosinstall - AFTER_SETUP_UPSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" - AFTER_SETUP_TARGET_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" - CMAKE_ARGS: '-DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context' - tags: - - docker \ No newline at end of file +variables: + - DEFAULT_DISTRO: kinetic \ No newline at end of file diff --git a/.gitlab-industrial-ci-no-rosinstall.yml b/.gitlab-industrial-ci-no-rosinstall.yml new file mode 100644 index 0000000..4b1afc9 --- /dev/null +++ b/.gitlab-industrial-ci-no-rosinstall.yml @@ -0,0 +1,144 @@ +image: tecnalia-docker-dev.artifact.tecnalia.com/docker:git + +variables: + TMPDIR: /builds/${CI_PROJECT_NAMESPACE} + GIT_LFS_SKIP_SMUDGE: 1 # Avoid fetching the files from LFS when doing git fetch + +services: + - name: tecnalia-docker-dev.artifact.tecnalia.com/docker:dind + alias: docker + +stages: + - build + +workflow: + rules: + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ + variables: + DEFAULT_DISTRO: "kinetic" + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ + variables: + DEFAULT_DISTRO: "melodic" + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ + variables: + DEFAULT_DISTRO: "noetic" + - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ + variables: + DEFAULT_DISTRO: "kinetic" + DEPLOY: "true" + - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ + variables: + DEFAULT_DISTRO: "melodic" + DEPLOY: "true" + - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ + variables: + DEFAULT_DISTRO: "noetic" + DEPLOY: "true" + - if: $CI_COMMIT_TAG + variables: + DEPLOY: "true" + - if: $CI_COMMIT_BRANCH + +before_script: + - apk add --update bash coreutils tar wget + - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} + +.industrial_ci: + stage: build + before_script: + - apk add --update bash coreutils tar + - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config + - docker login ${ARTIFACT_DOCKER_URL} -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} + - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} + script: .ci_config/gitlab.sh + variables: + ADDITIONAL_DEBS: curl + PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM + AFTER_SETUP_TARGET_WORKSPACE: rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws + CMAKE_ARGS: -DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context + tags: + - docker + +industrial_ci_kinetic: + extends: .industrial_ci + variables: + ROS_DISTRO: kinetic + DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" + rules: + - if: $DEPLOY + when: never + - if: $DEFAULT_DISTRO == "kinetic" + - if: $BUILD_KINETIC + +industrial_ci_melodic: + extends: .industrial_ci + variables: + ROS_DISTRO: melodic + DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" + rules: + rules: + - if: $DEPLOY + when: never + - if: $DEFAULT_DISTRO == "melodic" + - if: $BUILD_MELODIC + +industrial_ci_noetic: + extends: .industrial_ci + variables: + ROS_DISTRO: noetic + DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" + rules: + rules: + - if: $DEPLOY + when: never + - if: $DEFAULT_DISTRO == "noetic" + - if: $BUILD_NOETIC + +.industrial_ci_deploy: + extends: .industrial_ci + variables: + AFTER_SCRIPT: "wget -q -O - https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/pre-deploy-cleanup.bash | bash" + DOCKER_COMMIT: industrial_ci_image + script: + - .ci_config/gitlab.sh + - cd $(mktemp -d) + - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/archive/master/gitlab_templates-master.zip + - unzip gitlab_templates-master.zip && cd gitlab_templates-master/deploy + - cd base + - chmod a+x ros_entrypoint.bash + - docker build -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} . + - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} + - cd .. + - cd dev + - docker build --build-arg APPLICATION_IMAGE=${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev . + - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev + - cd .. + rules: + - if: $DEPLOY + + +industrial_kinetic_deploy: + extends: + - industrial_ci_kinetic + - .industrial_ci_deploy + rules: + - if: $DEPLOY && $DEFAULT_DISTRO == "kinetic" + - if: $DEPLOY && $BUILD_KINETIC + +industrial_melodic_deploy: + extends: + - industrial_ci_melodic + - .industrial_ci_deploy + rules: + - if: $DEPLOY && $DEFAULT_DISTRO == "melodic" + - if: $DEPLOY && $BUILD_MELODIC + +industrial_noetic_deploy: + extends: + - industrial_ci_noetic + - .industrial_ci_deploy + rules: + - if: $DEPLOY && $DEFAULT_DISTRO == "noetic" + - if: $DEPLOY && $BUILD_NOETIC + +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/gitlab-ci/post-check.yml' \ No newline at end of file diff --git a/.gitlab-industrial-ci-with-rosinstall.yml b/.gitlab-industrial-ci-with-rosinstall.yml new file mode 100644 index 0000000..a3fa130 --- /dev/null +++ b/.gitlab-industrial-ci-with-rosinstall.yml @@ -0,0 +1,19 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-kinetic-no-rosinstall.yml' + +.industrial_ci: + stage: build + before_script: + - apk add --update bash coreutils tar + - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config + - docker login ${ARTIFACT_DOCKER_URL} -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} + - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} + script: .ci_config/gitlab.sh + variables: + ADDITIONAL_DEBS: curl + PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM + UPSTREAM_WORKSPACE: .rosinstall + AFTER_SETUP_UPSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" + AFTER_SETUP_TARGET_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" + CMAKE_ARGS: '-DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context' + tags: + - docker \ No newline at end of file diff --git a/.gitlab-industrial-ci.yml b/.gitlab-industrial-ci.yml deleted file mode 100644 index b3f813e..0000000 --- a/.gitlab-industrial-ci.yml +++ /dev/null @@ -1,38 +0,0 @@ -variables: - DEFAULT_DISTRO: "kinetic" - -workflow: - rules: - - if: - - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ - variables: - DEFAULT_DISTRO: "melodic" - - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ - variables: - DEFAULT_DISTRO: "noetic" - - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ - variables: - DEFAULT_DISTRO: "kinetic" - - exists: - - .rosinstall - -export: - script: export - -noetic: - script: echo noetic - rules: - - if: '$DEFAULT_DISTRO == "noetic"' - - if: $BUILD_NOETIC - -melodic: - script: echo melodic - rules: - - if: '$DEFAULT_DISTRO == "melodic"' - - if: $BUILD_MELODIC - -kinetic: - script: echo kinetic - rules: - - if: '$DEFAULT_DISTRO == "kinetic"' - - if: $BUILD_KINETIC \ No newline at end of file -- GitLab From 50518fd155f18163ff9807c2009c7485a350d588 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 6 Sep 2021 10:35:08 +0200 Subject: [PATCH 09/25] Fix error in variables --- .gitlab-industrial-ci-kinetic-no-rosinstall.yml | 2 +- .gitlab-industrial-ci-kinetic-with-rosinstall.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index be59599..f8ed382 100644 --- a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml @@ -1,4 +1,4 @@ include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-no-rosinstall.yml' variables: - - DEFAULT_DISTRO: kinetic \ No newline at end of file + DEFAULT_DISTRO: kinetic \ 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 c33bfce..4a367e3 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -1,4 +1,4 @@ include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-with-rosinstall.yml' variables: - - DEFAULT_DISTRO: kinetic \ No newline at end of file + DEFAULT_DISTRO: kinetic \ No newline at end of file -- GitLab From 76e19c407e997a648717521cff3e06e404438a9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 6 Sep 2021 12:42:36 +0200 Subject: [PATCH 10/25] Remove rules repetitions --- .gitlab-industrial-ci-no-rosinstall.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.gitlab-industrial-ci-no-rosinstall.yml b/.gitlab-industrial-ci-no-rosinstall.yml index 4b1afc9..a893c92 100644 --- a/.gitlab-industrial-ci-no-rosinstall.yml +++ b/.gitlab-industrial-ci-no-rosinstall.yml @@ -75,7 +75,6 @@ industrial_ci_melodic: variables: ROS_DISTRO: melodic DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: rules: - if: $DEPLOY when: never @@ -87,7 +86,6 @@ industrial_ci_noetic: variables: ROS_DISTRO: noetic DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: rules: - if: $DEPLOY when: never -- GitLab From 957981a639c2af6a386ebc1a4ba85e33b72ce6be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 6 Sep 2021 13:55:43 +0200 Subject: [PATCH 11/25] Added templates for melodic and noetic --- .gitlab-industrial-ci-melodic-no-rosinstall.yml | 4 ++++ .gitlab-industrial-ci-melodic-with-rosinstall.yml | 4 ++++ .gitlab-industrial-ci-noetic-no-rosinstall.yml | 4 ++++ .gitlab-industrial-ci-noetic-with-rosinstall.yml | 4 ++++ 4 files changed, 16 insertions(+) create mode 100644 .gitlab-industrial-ci-melodic-no-rosinstall.yml create mode 100644 .gitlab-industrial-ci-melodic-with-rosinstall.yml create mode 100644 .gitlab-industrial-ci-noetic-no-rosinstall.yml create mode 100644 .gitlab-industrial-ci-noetic-with-rosinstall.yml diff --git a/.gitlab-industrial-ci-melodic-no-rosinstall.yml b/.gitlab-industrial-ci-melodic-no-rosinstall.yml new file mode 100644 index 0000000..99ab207 --- /dev/null +++ b/.gitlab-industrial-ci-melodic-no-rosinstall.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-no-rosinstall.yml' + +variables: + DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/.gitlab-industrial-ci-melodic-with-rosinstall.yml b/.gitlab-industrial-ci-melodic-with-rosinstall.yml new file mode 100644 index 0000000..cd3db8a --- /dev/null +++ b/.gitlab-industrial-ci-melodic-with-rosinstall.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-with-rosinstall.yml' + +variables: + DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/.gitlab-industrial-ci-noetic-no-rosinstall.yml b/.gitlab-industrial-ci-noetic-no-rosinstall.yml new file mode 100644 index 0000000..342021a --- /dev/null +++ b/.gitlab-industrial-ci-noetic-no-rosinstall.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-no-rosinstall.yml' + +variables: + DEFAULT_DISTRO: noetic \ No newline at end of file diff --git a/.gitlab-industrial-ci-noetic-with-rosinstall.yml b/.gitlab-industrial-ci-noetic-with-rosinstall.yml new file mode 100644 index 0000000..6c4cc86 --- /dev/null +++ b/.gitlab-industrial-ci-noetic-with-rosinstall.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-with-rosinstall.yml' + +variables: + DEFAULT_DISTRO: noetic \ No newline at end of file -- GitLab From 91bf0ad4ec3a55aa906aa6a8b2cc5c59c1639c35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 6 Sep 2021 15:06:44 +0200 Subject: [PATCH 12/25] Update README --- README.adoc | 33 ++++++++++++++++++++++++++++----- 1 file changed, 28 insertions(+), 5 deletions(-) diff --git a/README.adoc b/README.adoc index f50fb4d..c599378 100644 --- a/README.adoc +++ b/README.adoc @@ -6,22 +6,45 @@ This repository contains miscellaneous resources that need to be accessible with Two templates with default CI pipeline configurations are provided, for any repo to make use of: +- `.gitlab-industrial-ci-no-rosinstall.yml` +- `.gitlab-industrial-ci-with-rosinstall.yml` + +=== ROS distribution selection +These pipelines will try to detect the ROS distro from the branch name. For example, if the branch starts with `noetic-` it will build for noetic. If the branch doesn't start with any ROS distro, it will build the default distro, which can be specified with the variable `DEFAULT_DISTRO`. For convenience and backwards compatibility, some templates are provided that already set this variable: + - `.gitlab-industrial-ci-kinetic-no-rosinstall.yml` -- `.gitlab-industrial-ci-kinetic-with-rosinstall.yml` +- `.gitlab-industrial-ci-melodic-no-rosinstall.yml` +- `.gitlab-industrial-ci-noetic-no-rosinstall.yml` +- And the same with the `with-rosinstall` files. -Both define basically the same pipeline, consisting of the following stages and jobs: +=== Multiple ROS distributions + +If a repo wants to compile using multiple distributions, one can specify them by setting the `BUILD` variables: + +```yml +include: 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/.gitlab-industrial-ci-with-rosinstall.yml' + +variables: + BUILD_KINETIC: 1 + BUILD_MELODIC: 1 + BUILD_NOETIC: 1 +``` + +=== Pipeline + +All files follow the same pipeline, consisting of the following stages and jobs: -- Stage: `precheck` - * Check python syntax - Stage: `build` + * Check python syntax * Run `industrial_ci` + ** Uses the ros distro defined above ** Uses `flexbotics-base-devel` as a starting image ** Runs link:scripts/ci_run_entry_points.sh[] in the `BEFORE_SCRIPT` stage, which in turn finds and runs every `ci_entry_script.bash` script found in the source tree (target repo + repos from `.rosinstall`) * Only when tags are pushed: ** Run some cleanup in the `industrial_ci` context (e.g. delete sources) ** Commit image used by `industrial_ci` ** Build deployment image on top of it and push it to our registry -- Stage: `postcheck` (jobs in this stage are allowed to fail) +- Stage: `.post` (jobs in this stage are allowed to fail) * Check `bash`/`sh` script syntax * Check Markdown syntax * Check files have no trailing whitespace and are UTF-8 encoded -- GitLab From 6e1494fd5747be4d9bff42d3ded28b8ad372d3d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Fri, 10 Sep 2021 13:37:31 +0200 Subject: [PATCH 13/25] Re-reorganize --- ...ab-industrial-ci-kinetic-no-rosinstall.yml | 5 +- ...-industrial-ci-kinetic-with-rosinstall.yml | 5 +- ...ab-industrial-ci-melodic-no-rosinstall.yml | 4 - ...-industrial-ci-melodic-with-rosinstall.yml | 4 - .gitlab-industrial-ci-no-rosinstall.yml | 142 ------------------ ...lab-industrial-ci-noetic-no-rosinstall.yml | 4 - ...b-industrial-ci-noetic-with-rosinstall.yml | 4 - .gitlab-industrial-ci-with-rosinstall.yml | 19 --- auto-rules/kinetic-default.yml | 4 + auto-rules/melodic-default.yml | 4 + auto-rules/no-default.yml | 89 +++++++++++ auto-rules/noetic-default.yml | 4 + .../with-rosinstall/kinetic-default.yml | 4 + .../with-rosinstall/melodic-default.yml | 4 + auto-rules/with-rosinstall/no-default.yml | 6 + auto-rules/with-rosinstall/noetic-default.yml | 4 + core.yml | 31 ++++ industrial-ci-templates.yml | 0 gitlab-ci/post-check.yml => post-check.yml | 0 19 files changed, 152 insertions(+), 185 deletions(-) delete mode 100644 .gitlab-industrial-ci-melodic-no-rosinstall.yml delete mode 100644 .gitlab-industrial-ci-melodic-with-rosinstall.yml delete mode 100644 .gitlab-industrial-ci-no-rosinstall.yml delete mode 100644 .gitlab-industrial-ci-noetic-no-rosinstall.yml delete mode 100644 .gitlab-industrial-ci-noetic-with-rosinstall.yml delete mode 100644 .gitlab-industrial-ci-with-rosinstall.yml create mode 100644 auto-rules/kinetic-default.yml create mode 100644 auto-rules/melodic-default.yml create mode 100644 auto-rules/no-default.yml create mode 100644 auto-rules/noetic-default.yml create mode 100644 auto-rules/with-rosinstall/kinetic-default.yml create mode 100644 auto-rules/with-rosinstall/melodic-default.yml create mode 100644 auto-rules/with-rosinstall/no-default.yml create mode 100644 auto-rules/with-rosinstall/noetic-default.yml create mode 100644 core.yml create mode 100644 industrial-ci-templates.yml rename gitlab-ci/post-check.yml => post-check.yml (100%) diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index f8ed382..75393ed 100644 --- a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml @@ -1,4 +1 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-no-rosinstall.yml' - -variables: - DEFAULT_DISTRO: kinetic \ No newline at end of file +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/kinetic-default.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 4a367e3..366ea7a 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -1,4 +1 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-with-rosinstall.yml' - -variables: - DEFAULT_DISTRO: kinetic \ No newline at end of file +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with_rosinstall/kinetic-default.yml' \ No newline at end of file diff --git a/.gitlab-industrial-ci-melodic-no-rosinstall.yml b/.gitlab-industrial-ci-melodic-no-rosinstall.yml deleted file mode 100644 index 99ab207..0000000 --- a/.gitlab-industrial-ci-melodic-no-rosinstall.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-no-rosinstall.yml' - -variables: - DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/.gitlab-industrial-ci-melodic-with-rosinstall.yml b/.gitlab-industrial-ci-melodic-with-rosinstall.yml deleted file mode 100644 index cd3db8a..0000000 --- a/.gitlab-industrial-ci-melodic-with-rosinstall.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-with-rosinstall.yml' - -variables: - DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/.gitlab-industrial-ci-no-rosinstall.yml b/.gitlab-industrial-ci-no-rosinstall.yml deleted file mode 100644 index a893c92..0000000 --- a/.gitlab-industrial-ci-no-rosinstall.yml +++ /dev/null @@ -1,142 +0,0 @@ -image: tecnalia-docker-dev.artifact.tecnalia.com/docker:git - -variables: - TMPDIR: /builds/${CI_PROJECT_NAMESPACE} - GIT_LFS_SKIP_SMUDGE: 1 # Avoid fetching the files from LFS when doing git fetch - -services: - - name: tecnalia-docker-dev.artifact.tecnalia.com/docker:dind - alias: docker - -stages: - - build - -workflow: - rules: - - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ - variables: - DEFAULT_DISTRO: "kinetic" - - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ - variables: - DEFAULT_DISTRO: "melodic" - - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ - variables: - DEFAULT_DISTRO: "noetic" - - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ - variables: - DEFAULT_DISTRO: "kinetic" - DEPLOY: "true" - - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ - variables: - DEFAULT_DISTRO: "melodic" - DEPLOY: "true" - - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ - variables: - DEFAULT_DISTRO: "noetic" - DEPLOY: "true" - - if: $CI_COMMIT_TAG - variables: - DEPLOY: "true" - - if: $CI_COMMIT_BRANCH - -before_script: - - apk add --update bash coreutils tar wget - - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - -.industrial_ci: - stage: build - before_script: - - apk add --update bash coreutils tar - - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config - - docker login ${ARTIFACT_DOCKER_URL} -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - script: .ci_config/gitlab.sh - variables: - ADDITIONAL_DEBS: curl - PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM - AFTER_SETUP_TARGET_WORKSPACE: rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws - CMAKE_ARGS: -DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context - tags: - - docker - -industrial_ci_kinetic: - extends: .industrial_ci - variables: - ROS_DISTRO: kinetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: - - if: $DEPLOY - when: never - - if: $DEFAULT_DISTRO == "kinetic" - - if: $BUILD_KINETIC - -industrial_ci_melodic: - extends: .industrial_ci - variables: - ROS_DISTRO: melodic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: - - if: $DEPLOY - when: never - - if: $DEFAULT_DISTRO == "melodic" - - if: $BUILD_MELODIC - -industrial_ci_noetic: - extends: .industrial_ci - variables: - ROS_DISTRO: noetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" - rules: - - if: $DEPLOY - when: never - - if: $DEFAULT_DISTRO == "noetic" - - if: $BUILD_NOETIC - -.industrial_ci_deploy: - extends: .industrial_ci - variables: - AFTER_SCRIPT: "wget -q -O - https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/pre-deploy-cleanup.bash | bash" - DOCKER_COMMIT: industrial_ci_image - script: - - .ci_config/gitlab.sh - - cd $(mktemp -d) - - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/archive/master/gitlab_templates-master.zip - - unzip gitlab_templates-master.zip && cd gitlab_templates-master/deploy - - cd base - - chmod a+x ros_entrypoint.bash - - docker build -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} . - - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} - - cd .. - - cd dev - - docker build --build-arg APPLICATION_IMAGE=${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev . - - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev - - cd .. - rules: - - if: $DEPLOY - - -industrial_kinetic_deploy: - extends: - - industrial_ci_kinetic - - .industrial_ci_deploy - rules: - - if: $DEPLOY && $DEFAULT_DISTRO == "kinetic" - - if: $DEPLOY && $BUILD_KINETIC - -industrial_melodic_deploy: - extends: - - industrial_ci_melodic - - .industrial_ci_deploy - rules: - - if: $DEPLOY && $DEFAULT_DISTRO == "melodic" - - if: $DEPLOY && $BUILD_MELODIC - -industrial_noetic_deploy: - extends: - - industrial_ci_noetic - - .industrial_ci_deploy - rules: - - if: $DEPLOY && $DEFAULT_DISTRO == "noetic" - - if: $DEPLOY && $BUILD_NOETIC - -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/gitlab-ci/post-check.yml' \ No newline at end of file diff --git a/.gitlab-industrial-ci-noetic-no-rosinstall.yml b/.gitlab-industrial-ci-noetic-no-rosinstall.yml deleted file mode 100644 index 342021a..0000000 --- a/.gitlab-industrial-ci-noetic-no-rosinstall.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-no-rosinstall.yml' - -variables: - DEFAULT_DISTRO: noetic \ No newline at end of file diff --git a/.gitlab-industrial-ci-noetic-with-rosinstall.yml b/.gitlab-industrial-ci-noetic-with-rosinstall.yml deleted file mode 100644 index 6c4cc86..0000000 --- a/.gitlab-industrial-ci-noetic-with-rosinstall.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-with-rosinstall.yml' - -variables: - DEFAULT_DISTRO: noetic \ No newline at end of file diff --git a/.gitlab-industrial-ci-with-rosinstall.yml b/.gitlab-industrial-ci-with-rosinstall.yml deleted file mode 100644 index a3fa130..0000000 --- a/.gitlab-industrial-ci-with-rosinstall.yml +++ /dev/null @@ -1,19 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/.gitlab-industrial-ci-kinetic-no-rosinstall.yml' - -.industrial_ci: - stage: build - before_script: - - apk add --update bash coreutils tar - - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config - - docker login ${ARTIFACT_DOCKER_URL} -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} - script: .ci_config/gitlab.sh - variables: - ADDITIONAL_DEBS: curl - PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM - UPSTREAM_WORKSPACE: .rosinstall - AFTER_SETUP_UPSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" - AFTER_SETUP_TARGET_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" - CMAKE_ARGS: '-DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context' - tags: - - docker \ No newline at end of file diff --git a/auto-rules/kinetic-default.yml b/auto-rules/kinetic-default.yml new file mode 100644 index 0000000..0c04cd5 --- /dev/null +++ b/auto-rules/kinetic-default.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default.yml' + +variables: + DEFAULT_DISTRO: kinetic \ No newline at end of file diff --git a/auto-rules/melodic-default.yml b/auto-rules/melodic-default.yml new file mode 100644 index 0000000..023a8ea --- /dev/null +++ b/auto-rules/melodic-default.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default.yml' + +variables: + DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/auto-rules/no-default.yml b/auto-rules/no-default.yml new file mode 100644 index 0000000..85581fb --- /dev/null +++ b/auto-rules/no-default.yml @@ -0,0 +1,89 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/core.yml' + +workflow: + rules: + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ + variables: + DEFAULT_DISTRO: "kinetic" + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ + variables: + DEFAULT_DISTRO: "melodic" + - if: $CI_COMMIT_BRANCH && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ + variables: + DEFAULT_DISTRO: "noetic" + - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^kinetic-.*/ + variables: + DEFAULT_DISTRO: "kinetic" + DEPLOY: "true" + - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^melodic-.*/ + variables: + DEFAULT_DISTRO: "melodic" + DEPLOY: "true" + - if: $CI_COMMIT_TAG && $CI_COMMIT_REF_NAME =~ /^noetic-.*/ + variables: + DEFAULT_DISTRO: "noetic" + DEPLOY: "true" + - if: $CI_COMMIT_TAG + variables: + DEPLOY: "true" + - if: $CI_COMMIT_BRANCH + + +industrial_ci_kinetic: + extends: .industrial_ci + variables: + ROS_DISTRO: kinetic + DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" + rules: + - if: $DEPLOY + when: never + - if: $DEFAULT_DISTRO == "kinetic" + - if: $BUILD_KINETIC + +industrial_ci_melodic: + extends: .industrial_ci + variables: + ROS_DISTRO: melodic + DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" + rules: + - if: $DEPLOY + when: never + - if: $DEFAULT_DISTRO == "melodic" + - if: $BUILD_MELODIC + +industrial_ci_noetic: + extends: .industrial_ci + variables: + ROS_DISTRO: noetic + DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" + rules: + - if: $DEPLOY + when: never + - if: $DEFAULT_DISTRO == "noetic" + - if: $BUILD_NOETIC + + + +industrial_kinetic_deploy: + extends: + - industrial_ci_kinetic + - .industrial_ci_deploy + rules: + - if: $DEPLOY && $DEFAULT_DISTRO == "kinetic" + - if: $DEPLOY && $BUILD_KINETIC + +industrial_melodic_deploy: + extends: + - industrial_ci_melodic + - .industrial_ci_deploy + rules: + - if: $DEPLOY && $DEFAULT_DISTRO == "melodic" + - if: $DEPLOY && $BUILD_MELODIC + +industrial_noetic_deploy: + extends: + - industrial_ci_noetic + - .industrial_ci_deploy + rules: + - if: $DEPLOY && $DEFAULT_DISTRO == "noetic" + - if: $DEPLOY && $BUILD_NOETIC diff --git a/auto-rules/noetic-default.yml b/auto-rules/noetic-default.yml new file mode 100644 index 0000000..8239a71 --- /dev/null +++ b/auto-rules/noetic-default.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default.yml' + +variables: + DEFAULT_DISTRO: noetic \ No newline at end of file diff --git a/auto-rules/with-rosinstall/kinetic-default.yml b/auto-rules/with-rosinstall/kinetic-default.yml new file mode 100644 index 0000000..20f6e8a --- /dev/null +++ b/auto-rules/with-rosinstall/kinetic-default.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with-rosinstall/no-default.yml' + +variables: + DEFAULT_DISTRO: kinetic \ No newline at end of file diff --git a/auto-rules/with-rosinstall/melodic-default.yml b/auto-rules/with-rosinstall/melodic-default.yml new file mode 100644 index 0000000..69519f9 --- /dev/null +++ b/auto-rules/with-rosinstall/melodic-default.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with-rosinstall/no-default.yml' + +variables: + DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/auto-rules/with-rosinstall/no-default.yml b/auto-rules/with-rosinstall/no-default.yml new file mode 100644 index 0000000..cdc30c9 --- /dev/null +++ b/auto-rules/with-rosinstall/no-default.yml @@ -0,0 +1,6 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default' + + +.industrial_ci: + variables: + UPSTREAM_WORKSPACE: .rosinstall \ No newline at end of file diff --git a/auto-rules/with-rosinstall/noetic-default.yml b/auto-rules/with-rosinstall/noetic-default.yml new file mode 100644 index 0000000..bf3d10c --- /dev/null +++ b/auto-rules/with-rosinstall/noetic-default.yml @@ -0,0 +1,4 @@ +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with-rosinstall/no-default.yml' + +variables: + DEFAULT_DISTRO: noetic \ No newline at end of file diff --git a/core.yml b/core.yml new file mode 100644 index 0000000..6f71cf5 --- /dev/null +++ b/core.yml @@ -0,0 +1,31 @@ + +image: tecnalia-docker-dev.artifact.tecnalia.com/docker:git + + +workflow: + rules: + - if: $CI_COMMIT_TAG + - if: $CI_COMMIT_BRANCH + +variables: + TMPDIR: /builds/${CI_PROJECT_NAMESPACE} + GIT_LFS_SKIP_SMUDGE: 1 # Avoid fetching the files from LFS when doing git fetch + +services: + - name: tecnalia-docker-dev.artifact.tecnalia.com/docker:dind + alias: docker + +stages: + - build + +before_script: + - apk add --update bash coreutils tar wget + - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} + +include : + - project: tecnalia_robotics-public/gitlab_templates + ref: 35-improve-ci-template-organization + file: + - post-check.yml + - industrial-ci-templates.yml + diff --git a/industrial-ci-templates.yml b/industrial-ci-templates.yml new file mode 100644 index 0000000..e69de29 diff --git a/gitlab-ci/post-check.yml b/post-check.yml similarity index 100% rename from gitlab-ci/post-check.yml rename to post-check.yml -- GitLab From 458e101fd1fff1d9e3a679df8acd733c786d9477 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Fri, 10 Sep 2021 13:40:49 +0200 Subject: [PATCH 14/25] Add missing code --- industrial-ci-templates.yml | 40 +++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/industrial-ci-templates.yml b/industrial-ci-templates.yml index e69de29..177f3fb 100644 --- a/industrial-ci-templates.yml +++ b/industrial-ci-templates.yml @@ -0,0 +1,40 @@ + +.industrial_ci: + stage: build + before_script: + - apk add --update bash coreutils tar + - git clone --quiet --depth 1 https://github.com/ros-industrial/industrial_ci.git .ci_config + - docker login ${ARTIFACT_DOCKER_URL} -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} + - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} + script: .ci_config/gitlab.sh + variables: + ADDITIONAL_DEBS: curl + PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM + AFTER_SETUP_TARGET_WORKSPACE: rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws + AFTER_SETUP_UPSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" + CMAKE_ARGS: -DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context + tags: + - docker + + +.industrial_ci_deploy: + extends: .industrial_ci + variables: + AFTER_SCRIPT: "wget -q -O - https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/pre-deploy-cleanup.bash | bash" + DOCKER_COMMIT: industrial_ci_image + script: + - .ci_config/gitlab.sh + - cd $(mktemp -d) + - wget https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/archive/master/gitlab_templates-master.zip + - unzip gitlab_templates-master.zip && cd gitlab_templates-master/deploy + - cd base + - chmod a+x ros_entrypoint.bash + - docker build -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} . + - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} + - cd .. + - cd dev + - docker build --build-arg APPLICATION_IMAGE=${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME} -t ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev . + - docker push ${ARTIFACT_DOCKER_URL}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_NAME}-dev + - cd .. + rules: + - if: $DEPLOY -- GitLab From 26f3d835c89503df3e79e297f49527c42b2cbf1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Fri, 10 Sep 2021 13:43:57 +0200 Subject: [PATCH 15/25] Fix typo --- .gitlab-industrial-ci-kinetic-with-rosinstall.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml index 366ea7a..bddac0a 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -1 +1 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with_rosinstall/kinetic-default.yml' \ No newline at end of file +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with-rosinstall/kinetic-default.yml' \ No newline at end of file -- GitLab From 3f40512b00629300695edd6961d4244d088787cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Fri, 10 Sep 2021 13:45:39 +0200 Subject: [PATCH 16/25] Fix missing yml extension --- auto-rules/with-rosinstall/no-default.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/auto-rules/with-rosinstall/no-default.yml b/auto-rules/with-rosinstall/no-default.yml index cdc30c9..ab36dd9 100644 --- a/auto-rules/with-rosinstall/no-default.yml +++ b/auto-rules/with-rosinstall/no-default.yml @@ -1,4 +1,4 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default' +include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default.yml' .industrial_ci: -- GitLab From a3266e1b4e609875e5097c61d375ce4502901d6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 13 Sep 2021 11:21:41 +0200 Subject: [PATCH 17/25] Add AFTER_SETUP_DOWNSTREAM_WORKSPACE --- industrial-ci-templates.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/industrial-ci-templates.yml b/industrial-ci-templates.yml index 177f3fb..839f4ee 100644 --- a/industrial-ci-templates.yml +++ b/industrial-ci-templates.yml @@ -10,7 +10,8 @@ variables: ADDITIONAL_DEBS: curl PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM - AFTER_SETUP_TARGET_WORKSPACE: rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws + AFTER_SETUP_DOWNSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" + AFTER_SETUP_TARGET_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" AFTER_SETUP_UPSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" CMAKE_ARGS: -DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context tags: -- GitLab From c1a3adca1b495a1a4d83cd4412e4a443090c6a39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 13 Sep 2021 14:35:23 +0200 Subject: [PATCH 18/25] Change includes to include:local --- .gitlab-industrial-ci-kinetic-no-rosinstall.yml | 5 ++++- .gitlab-industrial-ci-kinetic-with-rosinstall.yml | 5 ++++- auto-rules/kinetic-default.yml | 4 ---- auto-rules/melodic-default.yml | 4 ---- auto-rules/noetic-default.yml | 4 ---- auto-rules/with-rosinstall/kinetic-default.yml | 4 ---- auto-rules/with-rosinstall/melodic-default.yml | 4 ---- auto-rules/with-rosinstall/no-default.yml | 6 ------ auto-rules/with-rosinstall/noetic-default.yml | 4 ---- ci-templates/auto-rules/kinetic-default.yml | 4 ++++ ci-templates/auto-rules/melodic-default.yml | 4 ++++ {auto-rules => ci-templates/auto-rules}/no-default.yml | 2 +- ci-templates/auto-rules/noetic-default.yml | 4 ++++ .../auto-rules/with-rosinstall/kinetic-default.yml | 4 ++++ .../auto-rules/with-rosinstall/melodic-default.yml | 4 ++++ ci-templates/auto-rules/with-rosinstall/no-default.yml | 6 ++++++ ci-templates/auto-rules/with-rosinstall/noetic-default.yml | 4 ++++ core.yml => ci-templates/core.yml | 7 ++----- .../industrial-ci-templates.yml | 0 post-check.yml => ci-templates/post-check.yml | 0 20 files changed, 41 insertions(+), 38 deletions(-) delete mode 100644 auto-rules/kinetic-default.yml delete mode 100644 auto-rules/melodic-default.yml delete mode 100644 auto-rules/noetic-default.yml delete mode 100644 auto-rules/with-rosinstall/kinetic-default.yml delete mode 100644 auto-rules/with-rosinstall/melodic-default.yml delete mode 100644 auto-rules/with-rosinstall/no-default.yml delete mode 100644 auto-rules/with-rosinstall/noetic-default.yml create mode 100644 ci-templates/auto-rules/kinetic-default.yml create mode 100644 ci-templates/auto-rules/melodic-default.yml rename {auto-rules => ci-templates/auto-rules}/no-default.yml (94%) create mode 100644 ci-templates/auto-rules/noetic-default.yml create mode 100644 ci-templates/auto-rules/with-rosinstall/kinetic-default.yml create mode 100644 ci-templates/auto-rules/with-rosinstall/melodic-default.yml create mode 100644 ci-templates/auto-rules/with-rosinstall/no-default.yml create mode 100644 ci-templates/auto-rules/with-rosinstall/noetic-default.yml rename core.yml => ci-templates/core.yml (76%) rename industrial-ci-templates.yml => ci-templates/industrial-ci-templates.yml (100%) rename post-check.yml => ci-templates/post-check.yml (100%) diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index 75393ed..26a2a73 100644 --- a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml @@ -1 +1,4 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/kinetic-default.yml' \ No newline at end of file +include: + - project: tecnalia_robotics-public/gitlab_templates + ref: 35-improve-ci-template-organization + file: ci-templates/auto-rules/kinetic-default.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 bddac0a..57165c5 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -1 +1,4 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with-rosinstall/kinetic-default.yml' \ No newline at end of file +include: + - project: tecnalia_robotics-public/gitlab_templates + ref: 35-improve-ci-template-organization + file: ci-templates/auto-rules/with-rosinstall/kinetic-default.yml \ No newline at end of file diff --git a/auto-rules/kinetic-default.yml b/auto-rules/kinetic-default.yml deleted file mode 100644 index 0c04cd5..0000000 --- a/auto-rules/kinetic-default.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default.yml' - -variables: - DEFAULT_DISTRO: kinetic \ No newline at end of file diff --git a/auto-rules/melodic-default.yml b/auto-rules/melodic-default.yml deleted file mode 100644 index 023a8ea..0000000 --- a/auto-rules/melodic-default.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default.yml' - -variables: - DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/auto-rules/noetic-default.yml b/auto-rules/noetic-default.yml deleted file mode 100644 index 8239a71..0000000 --- a/auto-rules/noetic-default.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default.yml' - -variables: - DEFAULT_DISTRO: noetic \ No newline at end of file diff --git a/auto-rules/with-rosinstall/kinetic-default.yml b/auto-rules/with-rosinstall/kinetic-default.yml deleted file mode 100644 index 20f6e8a..0000000 --- a/auto-rules/with-rosinstall/kinetic-default.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with-rosinstall/no-default.yml' - -variables: - DEFAULT_DISTRO: kinetic \ No newline at end of file diff --git a/auto-rules/with-rosinstall/melodic-default.yml b/auto-rules/with-rosinstall/melodic-default.yml deleted file mode 100644 index 69519f9..0000000 --- a/auto-rules/with-rosinstall/melodic-default.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with-rosinstall/no-default.yml' - -variables: - DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/auto-rules/with-rosinstall/no-default.yml b/auto-rules/with-rosinstall/no-default.yml deleted file mode 100644 index ab36dd9..0000000 --- a/auto-rules/with-rosinstall/no-default.yml +++ /dev/null @@ -1,6 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/no-default.yml' - - -.industrial_ci: - variables: - UPSTREAM_WORKSPACE: .rosinstall \ No newline at end of file diff --git a/auto-rules/with-rosinstall/noetic-default.yml b/auto-rules/with-rosinstall/noetic-default.yml deleted file mode 100644 index bf3d10c..0000000 --- a/auto-rules/with-rosinstall/noetic-default.yml +++ /dev/null @@ -1,4 +0,0 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/auto-rules/with-rosinstall/no-default.yml' - -variables: - DEFAULT_DISTRO: noetic \ No newline at end of file diff --git a/ci-templates/auto-rules/kinetic-default.yml b/ci-templates/auto-rules/kinetic-default.yml new file mode 100644 index 0000000..7bc72b9 --- /dev/null +++ b/ci-templates/auto-rules/kinetic-default.yml @@ -0,0 +1,4 @@ +include : ci-templates/auto-rules/no-default.yml + +variables: + DEFAULT_DISTRO: kinetic \ No newline at end of file diff --git a/ci-templates/auto-rules/melodic-default.yml b/ci-templates/auto-rules/melodic-default.yml new file mode 100644 index 0000000..62379b9 --- /dev/null +++ b/ci-templates/auto-rules/melodic-default.yml @@ -0,0 +1,4 @@ +include : ci-templates/auto-rules/no-default.yml + +variables: + DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/auto-rules/no-default.yml b/ci-templates/auto-rules/no-default.yml similarity index 94% rename from auto-rules/no-default.yml rename to ci-templates/auto-rules/no-default.yml index 85581fb..8596c1b 100644 --- a/auto-rules/no-default.yml +++ b/ci-templates/auto-rules/no-default.yml @@ -1,4 +1,4 @@ -include : 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/-/raw/35-improve-ci-template-organization/core.yml' +include : ci-templates/core.yml workflow: rules: diff --git a/ci-templates/auto-rules/noetic-default.yml b/ci-templates/auto-rules/noetic-default.yml new file mode 100644 index 0000000..f35658b --- /dev/null +++ b/ci-templates/auto-rules/noetic-default.yml @@ -0,0 +1,4 @@ +include : ci-templates/auto-rules/no-default.yml + +variables: + DEFAULT_DISTRO: noetic \ No newline at end of file diff --git a/ci-templates/auto-rules/with-rosinstall/kinetic-default.yml b/ci-templates/auto-rules/with-rosinstall/kinetic-default.yml new file mode 100644 index 0000000..fe99b53 --- /dev/null +++ b/ci-templates/auto-rules/with-rosinstall/kinetic-default.yml @@ -0,0 +1,4 @@ +include : ci-templates/auto-rules/with-rosinstall/no-default.yml + +variables: + DEFAULT_DISTRO: kinetic \ No newline at end of file diff --git a/ci-templates/auto-rules/with-rosinstall/melodic-default.yml b/ci-templates/auto-rules/with-rosinstall/melodic-default.yml new file mode 100644 index 0000000..47e501b --- /dev/null +++ b/ci-templates/auto-rules/with-rosinstall/melodic-default.yml @@ -0,0 +1,4 @@ +include : ci-templates/auto-rules/with-rosinstall/no-default.yml + +variables: + DEFAULT_DISTRO: melodic \ No newline at end of file diff --git a/ci-templates/auto-rules/with-rosinstall/no-default.yml b/ci-templates/auto-rules/with-rosinstall/no-default.yml new file mode 100644 index 0000000..f4735f5 --- /dev/null +++ b/ci-templates/auto-rules/with-rosinstall/no-default.yml @@ -0,0 +1,6 @@ +include : ci-templates/auto-rules/no-default.yml + + +.industrial_ci: + variables: + UPSTREAM_WORKSPACE: .rosinstall \ No newline at end of file diff --git a/ci-templates/auto-rules/with-rosinstall/noetic-default.yml b/ci-templates/auto-rules/with-rosinstall/noetic-default.yml new file mode 100644 index 0000000..0d83acd --- /dev/null +++ b/ci-templates/auto-rules/with-rosinstall/noetic-default.yml @@ -0,0 +1,4 @@ +include : ci-templates/auto-rules/with-rosinstall/no-default.yml + +variables: + DEFAULT_DISTRO: noetic \ No newline at end of file diff --git a/core.yml b/ci-templates/core.yml similarity index 76% rename from core.yml rename to ci-templates/core.yml index 6f71cf5..b333e00 100644 --- a/core.yml +++ b/ci-templates/core.yml @@ -23,9 +23,6 @@ before_script: - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} include : - - project: tecnalia_robotics-public/gitlab_templates - ref: 35-improve-ci-template-organization - file: - - post-check.yml - - industrial-ci-templates.yml + - ci-templates/post-check.yml + - ci-templates/industrial-ci-templates.yml diff --git a/industrial-ci-templates.yml b/ci-templates/industrial-ci-templates.yml similarity index 100% rename from industrial-ci-templates.yml rename to ci-templates/industrial-ci-templates.yml diff --git a/post-check.yml b/ci-templates/post-check.yml similarity index 100% rename from post-check.yml rename to ci-templates/post-check.yml -- GitLab From ce63c287d659d10c7b328a737972a53e503fd64c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Mon, 13 Sep 2021 15:19:40 +0200 Subject: [PATCH 19/25] Test default tags --- ci-templates/core.yml | 3 +++ ci-templates/industrial-ci-templates.yml | 2 -- ci-templates/post-check.yml | 12 ------------ 3 files changed, 3 insertions(+), 14 deletions(-) diff --git a/ci-templates/core.yml b/ci-templates/core.yml index b333e00..42589fe 100644 --- a/ci-templates/core.yml +++ b/ci-templates/core.yml @@ -26,3 +26,6 @@ include : - ci-templates/post-check.yml - ci-templates/industrial-ci-templates.yml +default: + tags: + - docker \ No newline at end of file diff --git a/ci-templates/industrial-ci-templates.yml b/ci-templates/industrial-ci-templates.yml index 839f4ee..2758faf 100644 --- a/ci-templates/industrial-ci-templates.yml +++ b/ci-templates/industrial-ci-templates.yml @@ -14,8 +14,6 @@ AFTER_SETUP_TARGET_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" AFTER_SETUP_UPSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" CMAKE_ARGS: -DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context - tags: - - docker .industrial_ci_deploy: diff --git a/ci-templates/post-check.yml b/ci-templates/post-check.yml index 3124256..ccf1df2 100644 --- a/ci-templates/post-check.yml +++ b/ci-templates/post-check.yml @@ -14,8 +14,6 @@ clang_format: 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 @@ -27,8 +25,6 @@ python_syntax: stage: build script: python -m compileall -q . when: always - tags: - - docker ########################################################## ## Check for errors in bash/sh scripts @@ -44,8 +40,6 @@ bash_syntax: - find . -type f -name '*.bash' -exec shellcheck -s bash {} + || RET=1 - exit $RET when: always - tags: - - docker ########################################################## ## Check for errors in markdown files @@ -58,8 +52,6 @@ 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 @@ -75,8 +67,6 @@ file_syntax: - 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 @@ -90,6 +80,4 @@ adoc_syntax: - 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 -- GitLab From b401fb2fc5a2c26a32a1e76035ca672c6224fc04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Tue, 21 Sep 2021 09:45:49 +0200 Subject: [PATCH 20/25] Rename post-check.yml --- ci-templates/{post-check.yml => syntax-check.yml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename ci-templates/{post-check.yml => syntax-check.yml} (100%) diff --git a/ci-templates/post-check.yml b/ci-templates/syntax-check.yml similarity index 100% rename from ci-templates/post-check.yml rename to ci-templates/syntax-check.yml -- GitLab From fbb78f07e2ea6430acb6f6f7ee0977a50e138bfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Tue, 21 Sep 2021 09:51:35 +0200 Subject: [PATCH 21/25] Entry script only on target workspace --- ci-templates/industrial-ci-templates.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/ci-templates/industrial-ci-templates.yml b/ci-templates/industrial-ci-templates.yml index 2758faf..c22f9cb 100644 --- a/ci-templates/industrial-ci-templates.yml +++ b/ci-templates/industrial-ci-templates.yml @@ -10,9 +10,7 @@ variables: ADDITIONAL_DEBS: curl PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM - AFTER_SETUP_DOWNSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" AFTER_SETUP_TARGET_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" - AFTER_SETUP_UPSTREAM_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" CMAKE_ARGS: -DCMAKE_CXX_FLAGS=-Wno-ignored-attributes -Wno-int-in-bool-context -- GitLab From 6dad3be528bbce8e0026465122523072deae706f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Tue, 21 Sep 2021 10:07:49 +0200 Subject: [PATCH 22/25] Fix include --- ci-templates/core.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci-templates/core.yml b/ci-templates/core.yml index 42589fe..859514f 100644 --- a/ci-templates/core.yml +++ b/ci-templates/core.yml @@ -23,7 +23,7 @@ before_script: - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} include : - - ci-templates/post-check.yml + - ci-templates/syntax-check.yml - ci-templates/industrial-ci-templates.yml default: -- GitLab From c6efb51d9082d67b0f897c4c3676c66820c7c945 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Tue, 21 Sep 2021 11:23:27 +0200 Subject: [PATCH 23/25] Move DOCKER_IMAGE to template --- ci-templates/auto-rules/no-default.yml | 3 --- ci-templates/industrial-ci-templates.yml | 1 + 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/ci-templates/auto-rules/no-default.yml b/ci-templates/auto-rules/no-default.yml index 8596c1b..a2f6a98 100644 --- a/ci-templates/auto-rules/no-default.yml +++ b/ci-templates/auto-rules/no-default.yml @@ -33,7 +33,6 @@ industrial_ci_kinetic: extends: .industrial_ci variables: ROS_DISTRO: kinetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" rules: - if: $DEPLOY when: never @@ -44,7 +43,6 @@ industrial_ci_melodic: extends: .industrial_ci variables: ROS_DISTRO: melodic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" rules: - if: $DEPLOY when: never @@ -55,7 +53,6 @@ industrial_ci_noetic: extends: .industrial_ci variables: ROS_DISTRO: noetic - DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" rules: - if: $DEPLOY when: never diff --git a/ci-templates/industrial-ci-templates.yml b/ci-templates/industrial-ci-templates.yml index c22f9cb..9f2516f 100644 --- a/ci-templates/industrial-ci-templates.yml +++ b/ci-templates/industrial-ci-templates.yml @@ -8,6 +8,7 @@ - docker login tecnalia-docker-dev.artifact.tecnalia.com -u ${ARTIFACT_CI_USER} -p ${ARTIFACT_CI_TOKEN} script: .ci_config/gitlab.sh variables: + DOCKER_IMAGE: "${ARTIFACT_DOCKER_URL}/flexbotics-base-devel:${ROS_DISTRO}" ADDITIONAL_DEBS: curl PARALLEL_BUILDS: 2 # keep this for now, since there seems to be memory limit issues in the ci VM AFTER_SETUP_TARGET_WORKSPACE: "rosenv && bash <(curl -Ls https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/scripts/ci_run_entry_points.sh) $$current_ws" -- GitLab From d203ac7ca9855fd9e0761eb4f77cc012476f73e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Tue, 21 Sep 2021 13:33:04 +0200 Subject: [PATCH 24/25] Merge branch 'documenting-MR35' --- README.adoc | 51 ++-------------------- ci-templates/README.adoc | 54 ++++++++++++++++++++++++ ci-templates/examples/build_vars.yml | 8 ++++ ci-templates/examples/manual_job.yml | 9 ++++ ci-templates/examples/simple_include.yml | 3 ++ 5 files changed, 77 insertions(+), 48 deletions(-) create mode 100644 ci-templates/README.adoc create mode 100644 ci-templates/examples/build_vars.yml create mode 100644 ci-templates/examples/manual_job.yml create mode 100644 ci-templates/examples/simple_include.yml diff --git a/README.adoc b/README.adoc index c599378..eb4ff72 100644 --- a/README.adoc +++ b/README.adoc @@ -1,55 +1,10 @@ = GitLab Templates +:toc: This repository contains miscellaneous resources that need to be accessible without authentication. -== GitLab CI templates -Two templates with default CI pipeline configurations are provided, for any repo to make use of: - -- `.gitlab-industrial-ci-no-rosinstall.yml` -- `.gitlab-industrial-ci-with-rosinstall.yml` - -=== ROS distribution selection -These pipelines will try to detect the ROS distro from the branch name. For example, if the branch starts with `noetic-` it will build for noetic. If the branch doesn't start with any ROS distro, it will build the default distro, which can be specified with the variable `DEFAULT_DISTRO`. For convenience and backwards compatibility, some templates are provided that already set this variable: - -- `.gitlab-industrial-ci-kinetic-no-rosinstall.yml` -- `.gitlab-industrial-ci-melodic-no-rosinstall.yml` -- `.gitlab-industrial-ci-noetic-no-rosinstall.yml` -- And the same with the `with-rosinstall` files. - -=== Multiple ROS distributions - -If a repo wants to compile using multiple distributions, one can specify them by setting the `BUILD` variables: - -```yml -include: 'https://git.code.tecnalia.com/tecnalia_robotics-public/gitlab_templates/raw/master/.gitlab-industrial-ci-with-rosinstall.yml' - -variables: - BUILD_KINETIC: 1 - BUILD_MELODIC: 1 - BUILD_NOETIC: 1 -``` - -=== Pipeline - -All files follow the same pipeline, consisting of the following stages and jobs: - -- Stage: `build` - * Check python syntax - * Run `industrial_ci` - ** Uses the ros distro defined above - ** Uses `flexbotics-base-devel` as a starting image - ** Runs link:scripts/ci_run_entry_points.sh[] in the `BEFORE_SCRIPT` stage, which in turn finds and runs every `ci_entry_script.bash` script found in the source tree (target repo + repos from `.rosinstall`) - * Only when tags are pushed: - ** Run some cleanup in the `industrial_ci` context (e.g. delete sources) - ** Commit image used by `industrial_ci` - ** Build deployment image on top of it and push it to our registry -- Stage: `.post` (jobs in this stage are allowed to fail) - * Check `bash`/`sh` script syntax - * Check Markdown syntax - * Check files have no trailing whitespace and are UTF-8 encoded - -It is important to note that both images set the variable `GIT_LFS_SKIP_SMUDGE`, which means that when the repositories are cloned/fetched, the files hosted using Git LFS will not be downloaded. An example on how to explicitely fetch the files from LFS can be found in the https://git.code.tecnalia.com/tecnalia_robotics/common_config/blob/e93dbe6379d94e6a895a33c59bf17ccab26eacf9/.gitlab-ci.yml#L132[common_config repository]. +include::ci-templates/README.adoc[leveloffset=+1] == Custom `rosdep` definitions @@ -60,5 +15,5 @@ Custom `rosdep` definitions for the packages hosted in our internal debian repos Resources required for building the deployment docker images are also hosted in this repository. This basically boils down to: -- link:scripts/pre-deploy-cleanup.bash[] is run in the `industrial_ci` container before commiting to an image +- link:scripts/pre-deploy-cleanup.bash[] is run in the `.industrial_ci_deploy` template before commiting to an image - link:deploy/Dockerfile[] is used to perform some additional cleanup and install link:deploy/ros_entrypoint.bash[] as entrypoint script on top of the `industrial_ci` image diff --git a/ci-templates/README.adoc b/ci-templates/README.adoc new file mode 100644 index 0000000..d4f1a0d --- /dev/null +++ b/ci-templates/README.adoc @@ -0,0 +1,54 @@ + += GitLab CI templates + +Templates for GitLab Continuous Integration are provided in the folder link:ci-templates[]. These can be included from any repo by using `include:project`: + +```yml +include::examples/simple_include.yml[] +``` + +== Core Pipeline +The Core pipeline, defined in link:ci-templates/core.yml[], has the following structure: + +- Stage: `build` + * Check python syntax + * `.industrial_ci` template (see https://github.com/ros-industrial/industrial_ci[the industrial_ci repo]), which can be used to define jobs that build `ROS` packages + ** Needs the `ROS_DISTRO` variable to be defined + ** If the package has `.rosinstall` dependencies, they can be installed using the variable `UPSTREAM_WORKSPACE` + ** Uses `flexbotics-base-devel:${ROS_DISTRO}` as a starting image + ** Runs link:scripts/ci_run_entry_points.sh[] in the `AFTER_SETUP_TARGET_WORKSPACE` stage, which in turn finds and runs every `ci_entry_script.bash` script found in the target repo. + * `.industrial_ci_deploy` template, which: + ** Runs `industrial_ci` by extending `.industrial_ci` + ** Runs some cleanup in the `industrial_ci` context (e.g. delete sources) + ** Commits image used by `industrial_ci` + ** Builds deployment image on top of it and push it to our registry +- Stage: `.post` + * Check `bash`/`sh` script syntax + * Check Markdown and AsciiDoc syntax + * Check files have no trailing whitespace and are `UTF-8` encoded + * Check that `C++` files follow this link:clang-format[] + +It is important to note that both templates set the variable `GIT_LFS_SKIP_SMUDGE`, which means that when the repositories are cloned/fetched, the files hosted using Git LFS will not be downloaded. An example on how to explicitely fetch the files from LFS can be found in the https://git.code.tecnalia.com/tecnalia_robotics/common_config/blob/e93dbe6379d94e6a895a33c59bf17ccab26eacf9/.gitlab-ci.yml#L132[common_config repository]. + +== Manual Jobs + +Using the templates defined by the core pipeline, one can easily define jobs to build the packages in the repo. + +```yml +include::examples/manual_job.yml[] +``` + +More examples can be found in link:ci-templates/examples[]. + +== Auto Rules +In the link:ci-templates/auto-rules[] folder, automatic pipelines are defined that will try to detect the ROS distro from the branch name and create jobs. +For example, if the branch starts with `noetic-` it will build for noetic. +If the branch doesn't start with any ROS distro, it will build the default distro, which can be specified with the variable `DEFAULT_DISTRO`. +For convenience, some templates are provided that already set this variable. +If your repo needs to uses `.rosinstall`, you can use the templates in the link:ci-templates/auto-rules/with-rosinstall[] folder. + +The auto rules also allow for using variables to explicitely activate each job: + +```yml +include::examples/build_vars.yml[] +``` diff --git a/ci-templates/examples/build_vars.yml b/ci-templates/examples/build_vars.yml new file mode 100644 index 0000000..276246b --- /dev/null +++ b/ci-templates/examples/build_vars.yml @@ -0,0 +1,8 @@ +include: + - project: tecnalia_robotics-public/gitlab_templates + file: ci-templates/auto-rules/no-default.yml + +variables: + BUILD_KINETIC: 1 + BUILD_MELODIC: 1 + BUILD_NOETIC: 1 diff --git a/ci-templates/examples/manual_job.yml b/ci-templates/examples/manual_job.yml new file mode 100644 index 0000000..8cf4e1d --- /dev/null +++ b/ci-templates/examples/manual_job.yml @@ -0,0 +1,9 @@ +include: + - project: tecnalia_robotics-public/gitlab_templates + file: ci-templates/core.yml + +industrial_ci_kinetic: + extends: .industrial-ci + variables: + ROS_DISTRO: kinetic + UPSTREAM_WORKSPACE: .rosinstall \ No newline at end of file diff --git a/ci-templates/examples/simple_include.yml b/ci-templates/examples/simple_include.yml new file mode 100644 index 0000000..3b1a85d --- /dev/null +++ b/ci-templates/examples/simple_include.yml @@ -0,0 +1,3 @@ +include: + - project: tecnalia_robotics-public/gitlab_templates + file: ci-templates/core.yml \ No newline at end of file -- GitLab From 9e2a6ea2a8b4ef9a25f07609785cea1e2243ecac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?I=C3=B1igo=20Moreno?= Date: Tue, 21 Sep 2021 15:08:38 +0200 Subject: [PATCH 25/25] Remove ref to branch before merging to master --- .gitlab-industrial-ci-kinetic-no-rosinstall.yml | 1 - .gitlab-industrial-ci-kinetic-with-rosinstall.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index 26a2a73..0e7c125 100644 --- a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml @@ -1,4 +1,3 @@ include: - project: tecnalia_robotics-public/gitlab_templates - ref: 35-improve-ci-template-organization file: ci-templates/auto-rules/kinetic-default.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 57165c5..2413c17 100644 --- a/.gitlab-industrial-ci-kinetic-with-rosinstall.yml +++ b/.gitlab-industrial-ci-kinetic-with-rosinstall.yml @@ -1,4 +1,3 @@ include: - project: tecnalia_robotics-public/gitlab_templates - ref: 35-improve-ci-template-organization file: ci-templates/auto-rules/with-rosinstall/kinetic-default.yml \ No newline at end of file -- GitLab