diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 10e1fff1943945e800bc2a3c6460535e70a26144..b1deda6b42124a827b883eeef2d65254deb813b3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -56,7 +56,7 @@ sso_testapp: only: changes: - test/sso_testapp/**/* - - .gitlab-ci.yml +# - .gitlab-ci.yml # Webbrowser tests behave: @@ -68,7 +68,7 @@ behave: only: changes: - test/behave/**/* - - .gitlab-ci.yml +# - .gitlab-ci.yml #pylint: # stage: build-test-images @@ -155,13 +155,15 @@ behave-integration: - http://oidc:5000/login - name: ${CI_REGISTRY_IMAGE}/login:${CI_COMMIT_REF_NAME} alias: oidc - - name: ${CI_REGISTRY_IMAGE}/test/sso_testapp:${CI_COMMIT_REF_NAME} + - name: ${CI_REGISTRY_IMAGE}/sso_testapp:${CI_COMMIT_REF_NAME} alias: ssoapp variables: # Feature Flag FF_NETWORK_PER_BUILD Enables creation of a docker network per build # with the docker executor of the gitlab-runner. This is required for service # interconnection. Requires gitlab-runner v12.9.0 FF_NETWORK_PER_BUILD: 1 + GIT_SUBMODULE_STRATEGY: "recursive" + OAUTHLIB_INSECURE_TRANSPORT: "true" # For login panel FLASK_RUN_HOST: "0.0.0.0" FLASK_RUN_PORT: "5000" @@ -188,55 +190,26 @@ behave-integration: ACCESS_TOKEN_URL: "http://hydra:4444/oauth2/token" AUTHORIZE_URL: "http://hydra:4444/oauth2/auth" USERINFO_URL: "http://hydra:4444/userinfo" - GRAPHQL_URL: "http://backend:5000/graphql" - GIT_SUBMODULE_STRATEGY: "recursive" - TESTUSER_USERNAME: "testuser" - TESTUSER_USERNAME2: "testuser2" - TESTUSER_PASSWORD: "password" - TESTUSER_EMAIL: "testuser@example.net" - TESTUSER_EMAIL2: "testuser2@example.net" - ROLE: "admin" SECRETS_SYSTEM: "youReallyNeedToChangeThis" - DATABASE_HOST: "postgres" - DATABASE_USER: postgres - DATABASE_PASSWORD: postgres - DATABASE_NAME: postgres # General - OAUTHLIB_INSECURE_TRANSPORT: "true" KEY: "testapp" SECRET: "secret" - image: ${CI_REGISTRY_IMAGE}/test/behave:${CI_COMMIT_REF_NAME} + image: ${CI_REGISTRY_IMAGE}/behave:${CI_COMMIT_REF_NAME} script: - curl http://kratos:4433/health/alive - curl http://oidc:5000/whoami - # Create user and application objects - #- /bin/bash user-panel/backend/utils/create-user.bash ${TESTUSER_USERNAME} ${TESTUSER_PASSWORD} ${TESTUSER_EMAIL} backend:5000 - #- /bin/bash user-panel/backend/utils/create-user.bash ${TESTUSER_USERNAME2} ${TESTUSER_PASSWORD} ${TESTUSER_EMAIL2} backend:5000 - #- /bin/bash user-panel/backend/utils/create-application.bash ${KEY} "Application used for testing" backend:5000 - #- /bin/bash user-panel/backend/utils/create-role.bash ${ROLE} backend:5000 - #- /bin/bash user-panel/backend/utils/grant-access.bash ${TESTUSER_USERNAME} ${KEY} backend:5000 - #- /bin/bash user-panel/backend/utils/assign-role.bash ${TESTUSER_USERNAME} ${ROLE} backend:5000 - # Wait for 60s for hydra to become available. Then create the oauth2 client object - #- while [[ $HYDRAADMINSTATUS -ne "200" && 60 -ge $TIMER ]]; do HYDRAADMINSTATUS=`curl http://hydra:4445/health/ready -o /dev/null -w "%{http_code}"` || TIMER=$TIMER+5 && sleep 5 ; done - #- /bin/bash test/create-hydra-client.bash ${KEY} ${SECRET} http://hydra:4445 http://oidc:5000/callback http://oidc:5000/ http://oidc:5000/logout - #- cd test/integration_tests/test/behave/ - #- TIMER=0 - #- while [[ $HYDRASTATUS -ne "200" && 60 -ge $TIMER ]]; do HYDRASTATUS=`curl http://hydra:4444/health/ready -o /dev/null -w "%{http_code}"` || TIMER=$TIMER+5 && sleep 5 ; done - #- > - # python3 -m behave - # -D headless=True - # -D url=http://oidc:5000 - # -D username=${TESTUSER_USERNAME} - # -D username2=${TESTUSER_USERNAME2} - # -D password=${TESTUSER_PASSWORD} - # -D email=${TESTUSER_EMAIL} - # -D role=${ROLE} + # Steps to do: + # - create user & access roles & grant access + # - add client applition ID + key for testing + # - test login etc + artifacts: paths: - test/integration_tests/test/behave/screenshots/ expire_in: 1 month when: on_failure + # TODO: Fix https://open.greenhost.net/stackspin/single-sign-on/-/issues/82 # # pylint-lint: