diff --git a/.github/workflows/benchmarks.yml b/.github/workflows/benchmarks.yml index 72d294ce..e9592869 100644 --- a/.github/workflows/benchmarks.yml +++ b/.github/workflows/benchmarks.yml @@ -1,100 +1,12 @@ + on: push name: Continuous Benchmarks jobs: build: - runs-on: ${{ matrix.config.os }} - - - name: ${{ matrix.config.os }} (${{ matrix.config.r }}) - - strategy: - fail-fast: false - matrix: - config: - - {os: ubuntu-latest, r: 'release'} - # fails: https://github.com/luukvdmeer/sfnetworks/pull/64/checks?check_run_id=798178450 - # - {os: ubuntu-20.04, r: 'release'} - - env: - R_REMOTES_NO_ERRORS_FROM_WARNINGS: true - CRAN: ${{ matrix.config.cran }} - + runs-on: macOS-latest steps: - - uses: actions/checkout@v1 - - - uses: r-lib/actions/setup-r@master - with: - r-version: ${{ matrix.config.r }} - - - uses: r-lib/actions/setup-pandoc@master - - - name: Brew and macOS config - if: runner.os == 'macOS' - run: | - brew install pkg-config - brew install udunits - brew install gdal - cat <> .Renviron - PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/ - PROJ_LIB=/usr/local/opt/proj/share/proj/ - # for installing XML package from source - XML_CONFIG=/usr/local/opt/libxml2/bin/xml2-config - EOT - cat <> .Rprofile - r <- getOption("repos") - r["CRAN"] <- "https://cran.rstudio.com" - r["rccp_drat"] <- "https://RcppCore.github.io/drat" - config_args <- c("sf" = "--with-proj-lib=/usr/local/lib/", "rgdal" = "--with-proj-lib=/usr/local/lib/ --with-proj-include=/usr/local/include/") - options(configure.args = config_args, - install.packages.compile.from.source = "yes", - repos = r) - EOT - - - name: Query dependencies - run: | - install.packages('remotes') - saveRDS(remotes::dev_package_deps(dependencies = TRUE), "depends.Rds", version = 2) - shell: Rscript {0} - - - name: Cache R packages - if: runner.os != 'Windows' - uses: actions/cache@v1 - with: - path: ${{ env.R_LIBS_USER }} - key: ${{ runner.os }}-r-${{ matrix.config.r }}-${{ hashFiles('depends.Rds') }} - restore-keys: ${{ runner.os }}-r-${{ matrix.config.r }}- - - - name: Install system dependencies - if: runner.os == 'Linux' - env: - RHUB_PLATFORM: linux-x86_64-ubuntu-gcc - run: | - Rscript -e "remotes::install_github('r-hub/sysreqs')" - sysreqs=$(Rscript -e "cat(sysreqs::sysreq_commands('DESCRIPTION'))") - sudo -s eval "$sysreqs" - - # install spatial dependencies - sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable - sudo apt update - sudo apt install \ - libudunits2-dev \ - libgdal-dev \ - libgeos-dev \ - libproj-dev - git config --global user.email "rob00x@gmail.com" - git config --global user.name "Robin Lovelace" - - - name: Install dependencies - run: | - library(remotes) - deps <- readRDS("depends.Rds") - deps[["installed"]] <- vapply(deps[["package"]], remotes:::local_sha, character(1)) - update(deps) - remotes::install_cran("rcmdcheck") - shell: Rscript {0} - - name: Checkout repo uses: actions/checkout@master @@ -103,7 +15,9 @@ jobs: - name: Install dependencies run: | - Rscript -e "install.packages(c('remotes', 'jsonlite'))" -e "remotes::install_deps(dependencies = TRUE)" -e "remotes::install_github('r-lib/bench')" + Rscript -e "install.packages(c('remotes'))" + Rscript -e "remotes::install_deps(dependencies = TRUE)" + Rscript -e "remotes::install_github("r-lib/bench")" R CMD INSTALL . - name: Fetch existing benchmarks run: Rscript -e 'bench::cb_fetch()'