image: docker:stable services: - docker:stable-dind workflow: rules: - if: $CI_MERGE_REQUEST_ID - if: $CI_COMMIT_BRANCH build-and-test: script: - > if [ -n "$CI_MERGE_REQUEST_ID" ]; then REPO_ARGS="--build-arg REPO_URL=$CI_MERGE_REQUEST_SOURCE_PROJECT_URL" ; REPO_ARGS="$REPO_ARGS --build-arg REPO_BRANCH=$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME" ; else REPO_ARGS="--build-arg REPO_URL=$CI_REPOSITORY_URL" ; REPO_ARGS="$REPO_ARGS --build-arg REPO_BRANCH=$CI_COMMIT_BRANCH" ; fi ; export REPO_ARGS ; echo REPO_ARGS=$REPO_ARGS ; - mkdir Dockercontext - > docker build -t retroshare:testing $REPO_ARGS --file $CI_PROJECT_DIR/build_scripts/GitlabCI/gitlabCI.Dockerfile Dockercontext - > docker run --name retroshare --detach --tty retroshare:testing retroshare-service --jsonApiPort 9092 - apk add jq - > docker exec retroshare curl --verbose http://127.0.0.1:9092/rsJsonApi/version | jq - > docker exec retroshare curl --verbose http://127.0.0.1:9092/rsLoginHelper/getLocations | jq - > docker exec retroshare curl --verbose --data '{ "location":{ "mLocationName":"Test 1", "mPgpName":"Test2" }, "password":"Test 3", "caller_data":"Test 5" }' http://127.0.0.1:9092/rsLoginHelper/createLocation | jq - > docker exec retroshare curl --verbose http://127.0.0.1:9092/rsLoginHelper/getLocations | jq - > docker exec retroshare curl --verbose http://127.0.0.1:9092/rsLoginHelper/isLoggedIn | jq - > docker exec retroshare curl --verbose http://127.0.0.1:9092/rsMsgs/getChatLobbyList | jq - docker container stop retroshare