diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index 627f3b9b95270ab30ffe592886da3bf3494338e7..0000000000000000000000000000000000000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,126 +0,0 @@ -include: - # - local: git/gitlab-ci/resources.yml - # @TCN-submodule: git/gitlab-ci - - project: 'smartdatalab/libraries/gitlab-ci/common' - ref: 24f179f99bac2cf6a23ada0896317f453fb0cec6 - file: 'resources.yml' - rules: - - if: '$GITLAB_CI == "true"' - - local: git/gitlab-ci/resources.yml - rules: - - if: '$GITLAB_CI == "false"' - - # - local: git/gitlab-ci/resources-shell.yml - # @TCN-submodule: git/gitlab-ci - - project: 'smartdatalab/libraries/gitlab-ci/common' - ref: 24f179f99bac2cf6a23ada0896317f453fb0cec6 - file: 'resources-shell.yml' - rules: - - if: '$GITLAB_CI == "true"' - - local: git/gitlab-ci/resources-shell.yml - rules: - - if: '$GITLAB_CI == "false"' - -variables: - SERVER_HOST: resources.piacere.digital.tecnalia.dev - ENV_FILE: .env - -stages: - - validate - - upload - - release - -.common: - # only: - # - master - tags: - - resources - - shell - -validate-gitlab-ci: - stage: validate - extends: - - .common - -upload: - variables: - GIT_STRATEGY: normal - REPO_USEHTTPPATH: "false" - REPO_URL: https://artifact.tecnalia.com/artifactory/api/lfs/piacere-gitlfs-dev-local/ - REPO_USER: $ARTIFACTORY_USER - REPO_PASSWORD: $ARTIFACTORY_PASSWORD - FILEBROWSER_URL: https://filebrowser.resources.piacere.digital.tecnalia.dev/ - NGINX_URL: https://nginx.resources.piacere.digital.tecnalia.dev/ - TRAEFIK_USER: $TRAEFIK_FILEBROWSER_USER - TRAEFIK_PASSWORD: $TRAEFIK_FILEBROWSER_PASSWORD - stage: upload - extends: - - .common - script: - - echo REPO_USER=$REPO_USER - - bash $CI_PROJECT_DIR/git/gitlab-ci/add_repo_credentials.sh - - echo "Deploying $CI_COMMIT_TAG" - - export BASE_FOLDER="ECLIPSE_BASED_IDE/DOML ${CI_COMMIT_TAG:1}" - - export NGINX_URL=${NGINX_URL%/} - - cd "$BASE_FOLDER" - - | - export ASSETS_LINKS="[]" # Empty array - shopt -s globstar - for i in **/*.zip; do # Whitespace-safe and recursive - git lfs pull --exclude= --include "$BASE_FOLDER/$i" - export FILEBROWSER_FILE="$i" - export FILEBROWSER_TARGET_FILE="nginx/ide/${CI_COMMIT_TAG}/$i" - echo "FILEBROWSER_TARGET_FILE=$FILEBROWSER_TARGET_FILE" - bash $CI_PROJECT_DIR/git/gitlab-ci/upload_file_to_filebrowser_with_traefikauth.sh - # URL excape except / and . - export FILEBROWSER_TARGET_FILE_URL_ESCAPED=$( jq -rn --arg x "$FILEBROWSER_TARGET_FILE" '$x|@uri' ) - # convert %2F to / , %2E to . and remove nginx/ - export FILEBROWSER_TARGET_FILE_URL_ESCAPED=$(echo $FILEBROWSER_TARGET_FILE_URL_ESCAPED | sed 's/%2F/\//g' | sed 's/%2E/\./g' | sed 's/^nginx\///g') - export ASSETS_LINKS=$(echo $ASSETS_LINKS | jq --arg name "$(echo $i | cut -d'/' -f1)" --arg url "$NGINX_URL/$FILEBROWSER_TARGET_FILE_URL_ESCAPED" '. + [{"name": $name, "url": $url}]') - done - - cd "$CI_PROJECT_DIR" - # convert to single line json - - export ASSETS_LINKS=$(echo $ASSETS_LINKS | jq -c '.') - - echo "ASSETS_LINKS=$ASSETS_LINKS" - - echo "ASSETS_LINKS=$ASSETS_LINKS" >> upload.env # Add the value to a dotenv file. - rules: - - if: '$CI_COMMIT_TAG && $CI_COMMIT_TAG =~ /^v[0-9]+(\.[0-9]+)+$/' - when: always - artifacts: - reports: - dotenv: upload.env - when: on_success - expire_in: "1 days" - -# # https://gitlab.com/gitlab-org/release-cli/-/tree/master/docs -# # --assets-link value JSON string representation of an asset link (or an array of asset links); (e.g. --assets-link='{"name": "Asset1", "url":"https://example.com/some/location/1", "link_type": "other", "filepath": "xzy" } or --assets-link='[{"name": "Asset1", "url":"https://example.com/some/location/1"}, {"name": "Asset2", "url":"https://example.com/some/location/2"}]') - -remove-release: - # remove release if exists - stage: release - rules: - - if: '$CI_COMMIT_TAG && $CI_COMMIT_TAG =~ /^v[0-9]+(\.[0-9]+)+$/' - when: always - extends: - - .common - script: - # - 'echo curl --request DELETE --header "JOB-TOKEN: $CI_JOB_TOKEN" "$CI_API_V4_URL/projects/$CI_PROJECT_ID/releases/$CI_COMMIT_TAG" || true' - - 'curl --request DELETE --header "JOB-TOKEN: $CI_JOB_TOKEN" "$CI_API_V4_URL/projects/$CI_PROJECT_ID/releases/$CI_COMMIT_TAG" || true' - dependencies: - - upload - -release: - # Caution, as of 2021-02-02 these assets links require a login, see: - # https://gitlab.com/gitlab-org/gitlab/-/issues/299384 - stage: release - image: registry.gitlab.com/gitlab-org/release-cli:latest - tags: - - docker - rules: - - if: '$CI_COMMIT_TAG && $CI_COMMIT_TAG =~ /^v[0-9]+(\.[0-9]+)+$/' - when: always - script: - - release-cli create --name "Release $CI_COMMIT_TAG" --tag-name $CI_COMMIT_TAG --assets-link "$ASSETS_LINKS" - dependencies: - - upload - - remove-release