diff --git a/.Rbuildignore b/.Rbuildignore index afbc8f5c..5fa08928 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -17,8 +17,8 @@ ^R/secure.global.ranking.md$ ^_pkgdown\.yml$ ^docs$ -^dsBase_7.0-dev-feat_performance\.tar\.gz$ -^dsBase_7.0-dev-feat_performance-permissive\.tar\.gz$ +^dsBase_7.0.0\.tar\.gz$ +^dsBase_7.0.0-permissive\.tar\.gz$ ^dsDanger_6.3.4.tar.gz$ ^\.circleci$ ^\.circleci/config\.yml$ diff --git a/.github/workflows/dsBaseClient_test_suite.yaml b/.github/workflows/dsBaseClient_test_suite.yaml index fb4ed989..b8a6f3cc 100644 --- a/.github/workflows/dsBaseClient_test_suite.yaml +++ b/.github/workflows/dsBaseClient_test_suite.yaml @@ -23,7 +23,7 @@ jobs: timeout-minutes: 120 permissions: contents: read - + # These should all be constant, except TEST_FILTER. This can be used to test # subsets of test files in the testthat directory. Options are like: # '*' <- Run all tests. @@ -34,7 +34,7 @@ jobs: _r_check_system_clock_: 0 WORKFLOW_ID: ${{ github.run_id }}-${{ github.run_attempt }} PROJECT_NAME: dsBaseClient - BRANCH_NAME: ${{ github.head_ref || github.ref_name }} + BRANCH_NAME: ${{ github.head_ref || github.ref_name }} REPO_OWNER: ${{ github.repository_owner }} R_KEEP_PKG_SOURCE: yes GITHUB_TOKEN: ${{ github.token || 'placeholder-token' }} @@ -54,7 +54,7 @@ jobs: path: testStatus persist-credentials: false token: ${{ env.GITHUB_TOKEN }} - + - name: Uninstall default MySQL run: | curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add - @@ -64,7 +64,7 @@ jobs: sudo apt-get autoremove -y sudo apt-get autoclean -y sudo rm -rf /var/lib/mysql/ - + - uses: r-lib/actions/setup-pandoc@v2 - uses: r-lib/actions/setup-r@v2 @@ -84,29 +84,29 @@ jobs: sudo apt-get install -qq libharfbuzz-dev libfribidi-dev libmagick++-dev xml-twig-tools -y sudo R -q -e "install.packages(c('devtools','covr','fields','meta','metafor','ggplot2','gridExtra','data.table','DSI','DSOpal','DSLite','MolgenisAuth','MolgenisArmadillo','DSMolgenisArmadillo','DescTools','e1071'), repos='https://cloud.r-project.org')" sudo R -q -e "devtools::install_github(repo='datashield/dsDangerClient', ref=Sys.getenv('BRANCH_NAME'))" - + - uses: r-lib/actions/setup-r-dependencies@v2 with: dependencies: 'c("Imports")' - extra-packages: | - any::rcmdcheck - cran::devtools - cran::git2r - cran::RCurl - cran::readr - cran::magrittr - cran::xml2 - cran::purrr - cran::dplyr - cran::stringr - cran::tidyr - cran::quarto - cran::knitr - cran::kableExtra - cran::rmarkdown - cran::downlit + extra-packages: | + any::rcmdcheck + cran::devtools + cran::git2r + cran::RCurl + cran::readr + cran::magrittr + cran::xml2 + cran::purrr + cran::dplyr + cran::stringr + cran::tidyr + cran::quarto + cran::knitr + cran::kableExtra + cran::rmarkdown + cran::downlit needs: check - + - name: Check manual updated run: | orig_sum=$(find man -type f | sort -u | xargs cat | md5sum) @@ -125,7 +125,7 @@ jobs: grep --quiet "^0 errors" azure-pipelines_check.Rout && grep --quiet " 0 warnings" azure-pipelines_check.Rout && grep --quiet " 0 notes" azure-pipelines_check.Rout working-directory: dsBaseClient continue-on-error: true - + - name: Start Armadillo docker-compose run: docker compose -f docker-compose_armadillo.yml up -d --build working-directory: dsBaseClient @@ -139,13 +139,13 @@ jobs: - name: Install dsBase to Armadillo run: | curl -u admin:admin -X GET http://localhost:8080/packages - curl -u admin:admin -H 'Content-Type: multipart/form-data' -F "file=@dsBase_6.3.4-permissive.tar.gz" -X POST http://localhost:8080/install-package + curl -u admin:admin -H 'Content-Type: multipart/form-data' -F "file=@dsBase_7.0.0-permissive.tar.gz" -X POST http://localhost:8080/install-package sleep 60 docker restart dsbaseclient-armadillo-1 sleep 30 curl -u admin:admin -X POST http://localhost:8080/whitelist/dsBase working-directory: dsBaseClient - + - name: Run tests with coverage & JUnit report run: | mkdir -p logs @@ -169,11 +169,11 @@ jobs: ), "coveragelist.csv" )' - + mv coveragelist.csv logs/ mv test_* logs/ working-directory: dsBaseClient - + - name: Check for JUnit errors run: | issue_count=$(sed 's/failures="0" errors="0"//' test_results.xml | grep -c errors= || true) @@ -190,33 +190,33 @@ jobs: echo "os:$(lsb_release -ds)" >> ${{ env.WORKFLOW_ID }}.txt echo "R:$(R --version | head -n1)" >> ${{ env.WORKFLOW_ID }}.txt working-directory: dsBaseClient/logs - + - name: Parse results from testthat and covr run: | Rscript --verbose --vanilla ../testStatus/source/parse_test_report.R logs/ working-directory: dsBaseClient - + - name: Render report run: | cd testStatus - + mkdir -p new/logs/${{ env.PROJECT_NAME }}/${{ env.BRANCH_NAME }}/${{ env.WORKFLOW_ID }}/ mkdir -p new/docs/${{ env.PROJECT_NAME }}/${{ env.BRANCH_NAME }}/${{ env.WORKFLOW_ID }}/ mkdir -p new/docs/${{ env.PROJECT_NAME }}/${{ env.BRANCH_NAME }}/latest/ - + # Copy logs to new logs directory location cp -rv ../dsBaseClient/logs/* new/logs/${{ env.PROJECT_NAME }}/${{ env.BRANCH_NAME }}/${{ env.WORKFLOW_ID }}/ cp -rv ../dsBaseClient/logs/${{ env.WORKFLOW_ID }}.txt new/logs/${{ env.PROJECT_NAME }}/${{ env.BRANCH_NAME }}/${{ env.WORKFLOW_ID }}/ - + R -e 'input_dir <- file.path("../new/logs", Sys.getenv("PROJECT_NAME"), Sys.getenv("BRANCH_NAME"), Sys.getenv("WORKFLOW_ID")); quarto::quarto_render("source/test_report.qmd", execute_params = list(input_dir = input_dir))' mv source/test_report.html new/docs/${{ env.PROJECT_NAME }}/${{ env.BRANCH_NAME }}/${{ env.WORKFLOW_ID }}/index.html cp -r new/docs/${{ env.PROJECT_NAME }}/${{ env.BRANCH_NAME }}/${{ env.WORKFLOW_ID }}/* new/docs/${{ env.PROJECT_NAME }}/${{ env.BRANCH_NAME }}/latest - + env: PROJECT_NAME: ${{ env.PROJECT_NAME }} BRANCH_NAME: ${{ env.BRANCH_NAME }} WORKFLOW_ID: ${{ env.WORKFLOW_ID }} - + - name: Upload test logs uses: actions/upload-artifact@v4 with: @@ -242,4 +242,3 @@ jobs: R -e 'sessionInfo()' sudo apt install tree -y tree . - \ No newline at end of file diff --git a/armadillo_azure-pipelines.yml b/armadillo_azure-pipelines.yml index 480c55f5..563fe858 100644 --- a/armadillo_azure-pipelines.yml +++ b/armadillo_azure-pipelines.yml @@ -58,10 +58,10 @@ schedules: - master always: true - cron: "0 2 * * *" - displayName: Nightly build - v7.0-dev-feat/performance + displayName: Nightly build - v7.0-dev branches: include: - - v7.0-dev-feat/performance + - v7.0-dev always: true ######################################################################################### @@ -235,7 +235,7 @@ jobs: curl -u admin:admin -X GET http://localhost:8080/packages - curl -u admin:admin --max-time 300 -v -H 'Content-Type: multipart/form-data' -F "file=@dsBase_7.0-dev-feat_performance-permissive.tar.gz" -X POST http://localhost:8080/install-package + curl -u admin:admin --max-time 300 -v -H 'Content-Type: multipart/form-data' -F "file=@dsBase_7.0.0-permissive.tar.gz" -X POST http://localhost:8080/install-package sleep 60 docker container restart dsbaseclient_armadillo_1 diff --git a/azure-pipelines.yml b/azure-pipelines.yml index a6e17a48..01ac339f 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -44,10 +44,10 @@ schedules: - master always: true - cron: "0 2 * * *" - displayName: Nightly build - v7.0-dev-feat/performance + displayName: Nightly build - v7.0-dev branches: include: - - v7.0-dev-feat/performance + - v7.0-dev always: true ######################################################################################### @@ -216,7 +216,7 @@ jobs: - bash: | R -q -e "library(opalr); opal <- opal.login(username = 'administrator', password = 'datashield_test&', url = 'https://localhost:8443', opts = list(ssl_verifyhost=0, ssl_verifypeer=0)); opal.put(opal, 'system', 'conf', 'general', '_rPackage'); opal.logout(o)" - R -q -e "library(opalr); opal <- opal.login('administrator','datashield_test&', url='https://localhost:8443/', opts = list(ssl_verifyhost=0, ssl_verifypeer=0)); dsadmin.install_github_package(opal, 'dsBase', username = 'datashield', ref = '7.0-dev-feat_performance'); opal.logout(opal)" + R -q -e "library(opalr); opal <- opal.login('administrator','datashield_test&', url='https://localhost:8443/', opts = list(ssl_verifyhost=0, ssl_verifypeer=0)); dsadmin.install_github_package(opal, 'dsBase', username = 'datashield', ref = 'v7.0-dev'); opal.logout(opal)" sleep 60 diff --git a/dsBase_7.0-dev-feat_performance.tar.gz b/dsBase_7.0.0-permissive.tar.gz similarity index 54% rename from dsBase_7.0-dev-feat_performance.tar.gz rename to dsBase_7.0.0-permissive.tar.gz index 43e1ea28..ab4b862e 100644 Binary files a/dsBase_7.0-dev-feat_performance.tar.gz and b/dsBase_7.0.0-permissive.tar.gz differ diff --git a/dsBase_7.0-dev-feat_performance-permissive.tar.gz b/dsBase_7.0.0.tar.gz similarity index 53% rename from dsBase_7.0-dev-feat_performance-permissive.tar.gz rename to dsBase_7.0.0.tar.gz index 1fca22d0..8f108fff 100644 Binary files a/dsBase_7.0-dev-feat_performance-permissive.tar.gz and b/dsBase_7.0.0.tar.gz differ diff --git a/opal_azure-pipelines.yml b/opal_azure-pipelines.yml index a9410f69..438e63ba 100644 --- a/opal_azure-pipelines.yml +++ b/opal_azure-pipelines.yml @@ -58,10 +58,10 @@ schedules: - master always: true - cron: "0 2 * * *" - displayName: Nightly build - v7.0-dev-feat/performance + displayName: Nightly build - v7.0-dev branches: include: - - v7.0-dev-feat/performance + - v7.0-dev always: true ######################################################################################### @@ -235,7 +235,7 @@ jobs: - bash: | R -q -e "library(opalr); opal <- opal.login(username = 'administrator', password = 'datashield_test&', url = 'https://localhost:8443', opts = list(ssl_verifyhost=0, ssl_verifypeer=0)); opal.put(opal, 'system', 'conf', 'general', '_rPackage'); opal.logout(o)" - R -q -e "library(opalr); opal <- opal.login('administrator','datashield_test&', url='https://localhost:8443/', opts = list(ssl_verifyhost=0, ssl_verifypeer=0)); dsadmin.install_github_package(opal, 'dsBase', username = 'datashield', ref = '7.0-dev-feat/performance'); opal.logout(opal)" + R -q -e "library(opalr); opal <- opal.login('administrator','datashield_test&', url='https://localhost:8443/', opts = list(ssl_verifyhost=0, ssl_verifypeer=0)); dsadmin.install_github_package(opal, 'dsBase', username = 'datashield', ref = 'v7.0-dev'); opal.logout(opal)" sleep 60