diff --git a/.github/workflows/run-integration-test.yml b/.github/workflows/run-integration-test.yml index dd45af2..28f4d7e 100644 --- a/.github/workflows/run-integration-test.yml +++ b/.github/workflows/run-integration-test.yml @@ -75,15 +75,11 @@ jobs: with: java-version: 11 distribution: 'temurin' - cache: 'maven' - uses: actions/download-artifact@v4 with: name: deps - - name: Download needed rascal-jar - run: mvn -B validate - - name: Typecheck rascal run: | java -jar rascal/rascal.jar Main \ @@ -130,7 +126,7 @@ jobs: name: rascal-tpls path: repos - - run: ls -alh + - run: tree repos/ - name: Typecheck rascal-libs run: | diff --git a/run-all-single-thread.sh b/run-all-single-thread.sh index ebc6cdf..d2ad411 100644 --- a/run-all-single-thread.sh +++ b/run-all-single-thread.sh @@ -6,5 +6,4 @@ BIG_DIR ?= '|tmp:///big/|' # make sure rascal.jar is present mvn validate -# first we have to run rascal -java -jar target/dependencies/rascal.jar Main --repoFolder "$BIG_DIR" --clean \ No newline at end of file +java -jar target/dependencies/rascal.jar Main --repoFolder "$BIG_DIR" --clean diff --git a/run-parallel-jobs.sh b/run-parallel-jobs.sh index 03e0ad8..2489d23 100644 --- a/run-parallel-jobs.sh +++ b/run-parallel-jobs.sh @@ -4,9 +4,10 @@ set -eo pipefail CLEAN="--clean" -BIG_DIR="${BIG_DIR:=|tmp:///big/|}" +BIG_DIR="${BIG_DIR:=|tmp:///repo/|}" +EXTRA_ARGS="" -while getopts ":fd:" opt; do +while getopts ":fd:r:c:t:" opt; do case ${opt} in f) CLEAN="" @@ -14,11 +15,23 @@ while getopts ":fd:" opt; do d) BIG_DIR="${OPTARG}" ;; + r) + EXTRA_ARGS+="--rascalVersion ${OPTARG} " + ;; + c) + EXTRA_ARGS+="--rascalCoreVersion ${OPTARG} " + ;; + t) + EXTRA_ARGS+="--typepalVersion ${OPTARG} " + ;; ?) echo "Invalid option: -${OPTARG}." echo "Available: " echo "\t-f\tDo not remove tpls" echo "\t-d \tOverride location where the repositories are stored and checked" + echo "\t-r \tOverride location of which rascal to use (should be a jar)" + echo "\t-c \tOverride location of which rascal-core to use" + echo "\t-t \tOverride location of which typepal to use" exit 1 ;; esac @@ -34,7 +47,7 @@ function runChecker() { local name=$1 shift echo "Starting $name, trail output $name.log (tail -f $name.log in different shell to check output)" - java -Drascal.monitor.batch -jar target/dependencies/rascal.jar Main --repoFolder "$BIG_DIR" $CLEAN --tests $@ >"$name.log" 2>&1 & + java -Drascal.monitor.batch -jar target/dependencies/rascal.jar Main --repoFolder "$BIG_DIR" $CLEAN $EXTRA_ARGS --tests $@ >"$name.log" 2>&1 & } ## first we have to run rascal diff --git a/src/main/rascal/Main.rsc b/src/main/rascal/Main.rsc index 7311c85..d50f8fd 100644 --- a/src/main/rascal/Main.rsc +++ b/src/main/rascal/Main.rsc @@ -90,8 +90,8 @@ int updateRepos(Projects projs, loc repoFolder, bool full) { } else { println("**** Cloning "); - checkOutput("clone", execWithCode("git", args=["clone", *( full ? [] : ["--depth", "1"]), proj.repo.uri, n], workingDir=repoFolder)); - checkOutput("switch", execWithCode("git", args=["switch", proj.branch], workingDir=targetFolder)); + extraArgs = full ? [] : ["--single-branch", "--branch", proj.branch, "--depth", "1"]; + checkOutput("clone", execWithCode("git", args=["clone", *extraArgs, proj.repo.uri, n], workingDir=repoFolder)); } } return result; @@ -104,7 +104,7 @@ int main( bool printWarnings = false, // print warnings in the final overview bool full=true, // do a full clone bool clean=true, // do a clean of the to build folders - loc repoFolder = |cwd:///|, + loc repoFolder = |tmp:///repo/|, loc rascalVersion=|home:///.m2/repository/org/rascalmpl/rascal/0.40.7/rascal-0.40.7.jar|, loc typepalVersion=|home:///.m2/repository/org/rascalmpl/typepal/0.14.0/typepal-0.14.0.jar|, loc rascalCoreVersion=|home:///.m2/repository/org/rascalmpl/rascal-core/0.12.4/rascal-core-0.12.4.jar|,