diff --git a/docker-compose.override.yml b/docker-compose.override.yml index b3c399d3a..7dad57d93 100644 --- a/docker-compose.override.yml +++ b/docker-compose.override.yml @@ -32,30 +32,14 @@ services: - SYS_PTRACE volumes: - ./logs:/var/log/grd_login - - ./login_server/src:/code/src - - ./configs/login_server:/etc/grd_login - - login_build:/code/build - conan:/root/.conan - ######################################################### ## COMMUNITY SERVER (cakephp with php-fpm) ############## ######################################################### - community-server: - build: - context: . - dockerfile: ./community_server/Dockerfile - environment: - - DB_PASSWORD='' - - DB_USER='root' - - DB_DATABASE='gradido_community' - depends_on: - - mariadb - networks: - - internal-net - volumes: - - ./community_server/config/php-fpm/php-ini-overrides.ini:/etc/php/7.4/fpm/conf.d/99-overrides.ini - - ./community_server/src:/var/www/cakephp/src + #community-server: + # volumes: + # - ./community_server ######################################################### @@ -100,6 +84,5 @@ services: volumes: frontend_node_modules: - login_build: conan: diff --git a/docker-compose.yml b/docker-compose.yml index 8b5bf33de..3ac176d9d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -65,6 +65,7 @@ services: - 1201:1201 volumes: - ./configs/login_server:/etc/grd_login + - login_build:/code/build_vol ######################################################### ## NGINX ################################################ @@ -130,4 +131,4 @@ networks: volumes: db_vol: - + login_build: diff --git a/docu/login_server.api.md b/docu/login_server.api.md index 27d83c06a..025e04094 100644 --- a/docu/login_server.api.md +++ b/docu/login_server.api.md @@ -96,7 +96,6 @@ with: "first_name":"Max", "last_name":"Musterman" , "emailType": 2, - "group_id": 1, "password":"123abcDE&", "login_after_register":true } @@ -105,7 +104,6 @@ with: - `emailType`: control email-text sended with email verification code - 2: default, if user has registered directly - 5: if user was registered by an admin -- `group_id`: group id of group to which user will join (id from login_server) - `login_after_register`: if set to true auto-login after create user was successfull, means session cookie is set and session_id returned ### Response diff --git a/login_server/Dockerfile.debug b/login_server/Dockerfile.debug index bb65996fb..f1b235e4e 100644 --- a/login_server/Dockerfile.debug +++ b/login_server/Dockerfile.debug @@ -1,32 +1,42 @@ ######################################################################################################### -# debug build preparation +# Build debug ######################################################################################################### -From conanio/gcc9 as build_debug_preparation -USER root +From gradido/login_dependencies:stage2 as debug ENV DOCKER_WORKDIR="/code" - -RUN mkdir -p ${DOCKER_WORKDIR} + +USER root + WORKDIR ${DOCKER_WORKDIR} +COPY . . -COPY . . +RUN chmod +x unix_parse_proto.sh +RUN chmod +x compile_pot.sh + +RUN ./compile_pot.sh +RUN ./unix_parse_proto.sh -RUN cd dependencies/mariadb-connector-c && \ - mkdir build && \ - cd build && \ - cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSL=OFF .. ######################################################################################################### # run debug ######################################################################################################### -FROM build_debug_preparation as login_server_debug +FROM debug as login_server_debug ENV DOCKER_WORKDIR="/code" +#RUN apt-get update && \ +# apt-get install -y --no-install-recommends gdb && \ +# apt-get autoclean && \ +# apt-get autoremove && \ +# apt-get clean && \ +# rm -rf /var/lib/apt/lists/* + +VOLUME /var/log/grd_login +VOLUME /code/src EXPOSE 1200 EXPOSE 1201 WORKDIR ${DOCKER_WORKDIR} RUN chmod +x ./Dockerfiles/build_and_run.sh -CMD ./Dockerfiles/build_and_run.sh; ./build/bin/Gradido_LoginServer +CMD ./Dockerfiles/build_and_run.sh; ./build_vol/bin/Gradido_LoginServer diff --git a/login_server/Dockerfiles/build_and_run.sh b/login_server/Dockerfiles/build_and_run.sh index e18dcd17d..59408daca 100644 --- a/login_server/Dockerfiles/build_and_run.sh +++ b/login_server/Dockerfiles/build_and_run.sh @@ -1,21 +1,7 @@ #!/bin/bash +cp build/conan* build_vol/ +cd build_vol -cd build -conan install .. --build=missing -s build_type=Debug -cmake -DCMAKE_BUILD_TYPE=Debug .. -make -j${CPU_COUNT} protoc grpc_cpp_plugin -cd .. - -if [ ! -d "./src/cpp/proto/hedera" ] ; then -#if [ ! -f "./src/cpp/proto/gradido/TransactionBody.pb.h"] ; then - chmod +x unix_parse_proto.sh - ./unix_parse_proto.sh -fi -chmod +x compile_pot.sh - -./compile_pot.sh - -cd build cmake -DCMAKE_BUILD_TYPE=Debug .. make -j$(nproc) Gradido_LoginServer #echo "building done" diff --git a/login_server/src/cpp/JSONInterface/JsonCreateUser.cpp b/login_server/src/cpp/JSONInterface/JsonCreateUser.cpp index c66d10c8d..f0a6ee7e9 100644 --- a/login_server/src/cpp/JSONInterface/JsonCreateUser.cpp +++ b/login_server/src/cpp/JSONInterface/JsonCreateUser.cpp @@ -17,12 +17,11 @@ Poco::JSON::Object* JsonCreateUser::handle(Poco::Dynamic::Var params) std::string password; bool login_after_register = false; int emailType; - int group_id = 1; - bool group_was_not_set = false; + int group_id; auto em = EmailManager::getInstance(); auto sm = SessionManager::getInstance(); - printf("enter\n"); + // if is json object if (params.type() == typeid(Poco::JSON::Object::Ptr)) { Poco::JSON::Object::Ptr paramJsonObject = params.extract(); @@ -36,11 +35,7 @@ Poco::JSON::Object* JsonCreateUser::handle(Poco::Dynamic::Var params) paramJsonObject->get("first_name").convert(first_name); paramJsonObject->get("last_name").convert(last_name); paramJsonObject->get("emailType").convert(emailType); - auto group_id_obj = paramJsonObject->get("group_id"); - - if(!group_id_obj.isEmpty()) { - group_id_obj.convert(group_id); - } + paramJsonObject->get("group_id").convert(group_id); if ((ServerConfig::g_AllowUnsecureFlags & ServerConfig::UNSECURE_PASSWORD_REQUESTS)) { paramJsonObject->get("password").convert(password); @@ -80,10 +75,6 @@ Poco::JSON::Object* JsonCreateUser::handle(Poco::Dynamic::Var params) } // create user - if(!group_id) { - group_id = 1; - group_was_not_set = true; - } user = controller::User::create(email, first_name, last_name, group_id); auto userModel = user->getModel(); Session* session = nullptr; @@ -102,7 +93,7 @@ Poco::JSON::Object* JsonCreateUser::handle(Poco::Dynamic::Var params) UniLib::controller::TaskPtr create_authenticated_encrypten_key = new AuthenticatedEncryptionCreateKeyTask(user, password); create_authenticated_encrypten_key->scheduleTask(create_authenticated_encrypten_key); } - + auto emailOptIn = controller::EmailVerificationCode::create(userModel->getID(), model::table::EMAIL_OPT_IN_REGISTER); auto emailOptInModel = emailOptIn->getModel(); if (!emailOptInModel->insertIntoDB(false)) { @@ -114,14 +105,10 @@ Poco::JSON::Object* JsonCreateUser::handle(Poco::Dynamic::Var params) if (login_after_register && session) { Poco::JSON::Object* result = stateSuccess(); - if(group_was_not_set) { - Poco::JSON::Array infos; - infos.add("group_id was not set, use 1 as default!"); - result->set("info", infos); - } + result->set("session_id", session->getHandle()); return result; } return stateSuccess(); -} +} \ No newline at end of file