before_script: - docker info stages: - prepare - test build: stage: prepare image: docker:19.03.12 script: - scripts/setBasePath.sh https://forge.etsi.org/rep/NGSI-LD/NGSI-LD/raw/master http://localhost:8080 - docker build -t ngsi-local -f docker/Dockerfile . allow_failure: false test: stage: test image: docker:19.03.12 services: - ngsi-local before_script: - 'which ssh-agent || ( apt-get update -qy && apt-get install openssh-client -qqy )' - eval `ssh-agent -s` - echo "${SSH_PRIVATE_KEY}" | tr -d '\r' | ssh-add - > /dev/null # add ssh ke - mkdir -p ~/.ssh - chmod 700 ~/.ssh - echo "$SSH_PUBLIC_KEY" >> ~/.ssh/id_rsa.pub - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config' script: - scripts/setBasePath.sh https://forge.etsi.org/rep/NGSI-LD/NGSI-LD/raw/master http://localhost:9090 - docker run --network host -i -v ${PWD}/:/data wistefan/redocly-openapi-cli bundle /data/spec/updated/ngsi-ld-spec-open-api.json -o /data/spec/updated/generated/full_api.json - docker run --network host --rm -v ${PWD}/:/local openapitools/openapi-generator-cli validate -i /local/spec/updated/generated/full_api.json - git config --global user.email "${CI_EMAIL}" - git config --global user.name "${CI_USERNAME}" - git add -f /spec/updated/generated/full_api.json - git commit -m "Update bundled spec." || echo "No changes, nothing to commit!" - git remote rm origin && git remote add origin git@gitlab.com:$CI_PROJECT_PATH.git - git push origin HEAD:$CI_COMMIT_REF_NAME allow_failure: false