Skip to content

avoid call to getNodeNames in mcmc_determineCalcAndCopyNodes (#1333) #690

avoid call to getNodeNames in mcmc_determineCalcAndCopyNodes (#1333)

avoid call to getNodeNames in mcmc_determineCalcAndCopyNodes (#1333) #690

Workflow file for this run

# For help debugging build failures open an issue on the RStudio community with the 'github-actions' tag.
# https://community.rstudio.com/new-topic?category=Package%20development&tags=github-actions
on:
push:
branches:
- main
- master
- devel
pull_request:
branches:
- main
- master
- devel
name: CI
jobs:
CI:
runs-on: ${{ matrix.config.os }}
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
strategy:
fail-fast: false
matrix:
config:
- {os: windows-latest, r: 'release', batch: 1}
- {os: macOS-latest, r: 'release', batch: 1} # was hard-coded to 4.2.2 due to issues a while back
- {os: ubuntu-20.04, r: 'devel', rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest", batch: 1}
- {os: ubuntu-20.04, r: 'release', rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest", batch: 1}
- {os: ubuntu-20.04, r: 'release', rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest", batch: 2}
- {os: ubuntu-20.04, r: 'release', rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest", batch: 3}
- {os: ubuntu-20.04, r: 'release', rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest", batch: 4}
- {os: ubuntu-20.04, r: 'release', rspm: "https://packagemanager.rstudio.com/cran/__linux__/focal/latest", batch: 5}
env:
R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
RSPM: ${{ matrix.config.rspm }}
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
NIMBLE_TEST_BATCH: ${{ matrix.config.batch }}
steps:
- uses: actions/checkout@v3
- uses: r-lib/actions/setup-r@v2
with:
r-version: ${{ matrix.config.r }}
- uses: r-lib/actions/setup-pandoc@v2
- name: Query dependencies
run: |
install.packages('remotes')
saveRDS(remotes::dev_package_deps(pkgdir = './packages/nimble', dependencies = TRUE),
".github/depends.Rds", version = 2)
writeLines(sprintf("R-%i.%i", getRversion()$major, getRversion()$minor), ".github/R-version")
shell: Rscript {0}
- name: Restore R package cache
if: runner.os != 'Windows'
uses: actions/cache@v2
with:
path: ${{ env.R_LIBS_USER }}
key: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-${{ hashFiles('.github/depends.Rds') }}
restore-keys: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-
- name: Install system dependencies
if: runner.os == 'Linux'
run: |
while read -r cmd
do
eval sudo $cmd
done < <(Rscript -e 'writeLines(remotes::system_requirements("ubuntu", "20.04", "./packages/nimble"))')
sudo apt-get install libcurl4-openssl-dev # needed for R pkg curl -> covr
- name: Install dependencies
run: |
source('install_requirements.R') # Windows doesn't like running via ./install_requirements.R
shell: Rscript {0}
- name: Install nimble (Windows)
if: runner.os == 'Windows'
run: |
RCMD INSTALL --install-tests packages\\nimble
- name: Install nimble
if: runner.os != 'Windows'
run: |
R CMD build packages/nimble # Is this needed? Is purpose of this to see if 'build' induces an error?
R CMD INSTALL --install-tests --enable-dylib=false packages/nimble # use libnimble.a to reduce seg faults when using clearCompiled for long sets of AD tests
- name: Install reverse dependencies
run: |
source('install_revDeps.R') # Windows doesn't like running via ./install_requirements.R
shell: Rscript {0}
- name: Run tests
run: |
source('run_tests.R') # Windows doesn't like running via ./run_tests.R
shell: Rscript {0}
- name: Upload check results
if: failure()
uses: actions/upload-artifact@main
with:
name: ${{ runner.os }}-r${{ matrix.config.r }}-results
path: check