diff --git a/.gitlab-industrial-ci-kinetic-no-rosinstall.yml b/.gitlab-industrial-ci-kinetic-no-rosinstall.yml index f8ed382ca877eca5d547399ac062bb02417df3f9..75393edbd7b547da05db2eefaf179d5983893313 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 4a367e36706b4eee8e485b0aeeaa21e70495b486..366ea7a1dcc9e721f5a374c46941e914b5462d1c 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 99ab2071723525e2c554211b1449fc38024b14a1..0000000000000000000000000000000000000000 --- 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 cd3db8afab445e1ff415ff1dc7a7b9f3de16a7fc..0000000000000000000000000000000000000000 --- 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 a893c926acdd5a9182cbab45e40f856f9f74257d..0000000000000000000000000000000000000000 --- 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 342021af32664712d371bf27c4068c7e7d3e8c59..0000000000000000000000000000000000000000 --- 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 6c4cc86b931dc1e00c0600539333ca79e698a3b6..0000000000000000000000000000000000000000 --- 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 a3fa1300f42d07a012e9619a01ab80d7830adb0b..0000000000000000000000000000000000000000 --- 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 0000000000000000000000000000000000000000..0c04cd5b092c3cfaef92b395068496c635408868 --- /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 0000000000000000000000000000000000000000..023a8ea82ea6364ad40db1cdf29ce36311d7a293 --- /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 0000000000000000000000000000000000000000..85581fb2da065bdc4bcf9cc8584f7abc0ea06b8c --- /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 0000000000000000000000000000000000000000..8239a7164315518a8f4deddedf2e70037825eff1 --- /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 0000000000000000000000000000000000000000..20f6e8a380d9d67373fe6849c15e628244800bcc --- /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 0000000000000000000000000000000000000000..69519f9197c8828582ff2c066fb19141a7c74b3e --- /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 0000000000000000000000000000000000000000..cdc30c9b29e8e4ecde583816758e718e72cf919f --- /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 0000000000000000000000000000000000000000..bf3d10cb520455f5a166c5d4d0f37849b039bc7b --- /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 0000000000000000000000000000000000000000..6f71cf5aeb7a5ad160a9ad17574bbed16195db33 --- /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 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 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