99# Build and test with ANOD
1010# TODO: add a build and test based on Alire in parallel to this.
1111build_and_test :
12- rules :
13- # Let's do the job only for merge request events: that's
14- # when we know whether the target branch is 'edge'.
15- - if : $CI_PIPELINE_SOURCE == 'merge_request_event'
1612 services :
1713 - image:sandbox
1814 - cpu:8
@@ -26,7 +22,7 @@ build_and_test:
2622 # Check whether we're in an MR targeting 'edge' and setup some
2723 # variables if so.
2824 - TARGET_BRANCH="master"
29- - if [ "$CI_MERGE_REQUEST_TARGET_BRANCH_NAME" = "edge " ]; then
25+ - if [ "x $CI_MERGE_REQUEST_TARGET_BRANCH_NAME" = "xedge " ]; then
3026 echo "Targeting the edge branch." ;
3127 REPO_SUFFIX="-edge" ;
3228 BUILD_SPACE_SUFFIX="_edge" ;
@@ -75,11 +71,24 @@ build_and_test:
7571 --xunit-output $CI_PROJECT_DIR/xunit_output.xml
7672 x86_64-linux/als${BUILD_SPACE_SUFFIX}-test/results/new/ || FAILED=true
7773
74+ - anod install lsif-ada
75+ - ( eval `anod printenv lsif-ada`;
76+ eval `anod printenv stable-gnat`;
77+ eval `anod printenv ada_libfswatch`;
78+ eval `anod printenv stable-templates_parser`;
79+ eval `anod printenv stable-langkit_support`;
80+ eval `anod printenv stable-libgpr2 --qualifier=bare`;
81+ eval `anod printenv stable-libadalang`;
82+ eval `anod printenv stable-libadalang-tools`;
83+ export GPR_PROJECT_PATH=/it/wave/x86_64-linux/als/src/subprojects/gnatdoc/gnat:$GPR_PROJECT_PATH;
84+ export GPR_PROJECT_PATH=/it/wave/x86_64-linux/als/src/subprojects/VSS/gnat:$GPR_PROJECT_PATH;
85+ cd /it/wave/x86_64-linux/als/src;
86+ lsif-ada gnat/lsp_server.gpr > $CI_PROJECT_DIR/dump.lsif )
87+
7888 - if [ ! -z ${FAILED+x} ]; then echo "There was at least one testcase failure" && exit 1; fi
7989
8090 artifacts :
8191 when : always # Upload on errors too
82- paths :
83- - xunit_output.xml
8492 reports :
85- junit : xunit_output.xml
93+ junit : xunit_output.xml
94+ lsif : dump.lsif
0 commit comments