From 7fa4ccdb5f411b23a2bf8ed7aa0c47fe0abe9113 Mon Sep 17 00:00:00 2001 From: einhorn_b Date: Fri, 21 May 2021 17:29:13 +0200 Subject: [PATCH] measure coverage from login-server, speed up login-server test build --- .github/workflows/test.yml | 13 ++++++++- login_server/Dockerfile | 58 +++++++++++++++++++++----------------- 2 files changed, 44 insertions(+), 27 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7584bc2fd..1418d93b8 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -249,12 +249,23 @@ jobs: - name: Load Docker Image run: docker load < /tmp/loginserver.tar ########################################################################## - # UNIT TESTS FRONTEND #################################################### + # UNIT TESTS BACKEND LOGIN-SERVER ####################################### ########################################################################## - name: Login-Server | Unit tests run: | docker run -v ~/coverage:/code/build/coverage -v ./configs/login_server/Gradido_LoginServer_Test.properties:/code/build/Gradido_LoginServer_Test.properties gradido/login_server:test --entrypoint cp -r ~/coverage ./coverage + ########################################################################## + # COVERAGE CHECK BACKEND LOGIN-SERVER #################################### + ########################################################################## + - name: backend | Coverage check + uses: webcraftmedia/coverage-check-action@master + with: + report_name: Coverage Backend + type: lcov + result_path: ./coverage/lcov.info + min_coverage: 8 + token: ${{ github.token }} #test: # runs-on: ubuntu-latest diff --git a/login_server/Dockerfile b/login_server/Dockerfile index e25ed5c3c..834eb6cd0 100644 --- a/login_server/Dockerfile +++ b/login_server/Dockerfile @@ -1,8 +1,8 @@ ######################################################################################################### -# Build debug +# Prepare debug ######################################################################################################### -FROM gradido/login_dependencies:alpine-debug-2 as debug +FROM gradido/login_dependencies:alpine-debug-2 as prepare_debug ENV DOCKER_WORKDIR="/code" WORKDIR ${DOCKER_WORKDIR} @@ -16,6 +16,36 @@ COPY ./dependencies/spirit-po ./dependencies/spirit-po COPY ./dependencies/tinf ./dependencies/tinf COPY ./scripts ./scripts +######################################################################################################### +# Build test +######################################################################################################### +FROM prepare_debug as test + +ENV DOCKER_WORKDIR="/code" +WORKDIR ${DOCKER_WORKDIR} + +RUN apk add --no-cache bash perl + +#RUN git clone https://github.com/linux-test-project/lcov.git --branch=v1.15 && \ + # cd lcov && \ + # make install + +RUN mkdir build && cd build && \ + cmake -DCMAKE_BUILD_TYPE=Debug .. && \ + make -j$(nproc) Gradido_LoginServer_Test + +#RUN chmod +x build/bin/Gradido_LoginServer_Test +#CMD [ "./build/bin/Gradido_LoginServer" ] +#ENTRYPOINT [ "/usr/bin/make", "-C", "/code/build", "coverage" ] +ENTRYPOINT cd build && make coverage; + +######################################################################################################### +# Build debug +######################################################################################################### +FROM prepare_debug as debug + +ENV DOCKER_WORKDIR="/code" +WORKDIR ${DOCKER_WORKDIR} RUN mkdir build && \ cd build && \ @@ -29,30 +59,6 @@ RUN cd scripts && \ RUN chmod +x build/bin/Gradido_LoginServer ENTRYPOINT ["build/bin/Gradido_LoginServer"] -######################################################################################################### -# Build test -######################################################################################################### -FROM debug as test - -ENV DOCKER_WORKDIR="/code" -WORKDIR ${DOCKER_WORKDIR} - -RUN apk add --no-cache bash perl - -RUN git clone https://github.com/linux-test-project/lcov.git --branch=v1.15 && \ - cd lcov && \ - make install - -RUN cd build && \ - cmake -DCMAKE_BUILD_TYPE=Debug .. && \ - make -j$(nproc) Gradido_LoginServer_Test - - -#RUN chmod +x build/bin/Gradido_LoginServer_Test -#CMD [ "./build/bin/Gradido_LoginServer" ] -#ENTRYPOINT [ "/usr/bin/make", "-C", "/code/build", "coverage" ] -ENTRYPOINT cd build && ls -la && make coverage; - ######################################################################################################### # Build release #########################################################################################################