Skip to content

Commit

Permalink
👷 Add lamindb devel CI workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
lazappi committed Jan 15, 2025
1 parent 299d8bd commit 29ffc08
Showing 1 changed file with 93 additions and 0 deletions.
93 changes: 93 additions & 0 deletions .github/workflows/R-CMD-check-devel.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
on:
push:
branches: [main]
pull_request:
branches: [main]

name: R-CMD-check-devel.yaml

permissions: read-all

jobs:
R-CMD-check-devel:
runs-on: ${{ matrix.config.os }}

name: ${{ matrix.config.os }} (${{ matrix.config.r }})

strategy:
fail-fast: false
matrix:
config:
- { os: ubuntu-latest, r: "release", python: "3.x" }

env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
LAMIN_API_KEY: ${{ secrets.LAMIN_API_KEY_TESTUSER1 }}

steps:
- uses: actions/checkout@v4

- uses: r-lib/actions/setup-pandoc@v2

- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.config.python }}

- uses: r-lib/actions/setup-r@v2
with:
r-version: ${{ matrix.config.r }}
http-user-agent: ${{ matrix.config.http-user-agent }}
use-public-rspm: true

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::rcmdcheck, local::.
needs: check

- name: Install {tiledbsoma}
if: runner.os == 'Linux'
run: |
options(repos = c("https://chanzuckerberg.r-universe.dev", getOption("repos")))
pak::pkg_install("tiledbsoma")
shell: Rscript {0}

- name: Setup Python environment with devel lamindb
run: |
laminr::install_lamindb(extra_packages = c("s3fs"))
reticulate::use_virtualenv("r-lamindb")
reticulate::py_install("git+https://github.com/laminlabs/lamindb.git")
shell: Rscript {0}

- name: Log in to Lamin
run: |
reticulate::use_virtualenv("r-lamindb")
laminr::lamin_login()
shell: Rscript {0}

- name: Set lamindata as default instance
run: |
reticulate::use_virtualenv("r-lamindb")
laminr::lamin_connect("laminlabs/lamindata")
shell: Rscript {0}

- name: Check whether we can import lamindb and connect to the default instance
run: |
reticulate::use_virtualenv("r-lamindb")
reticulate::py_config()
reticulate::import("lamindb")
laminr::connect()
shell: Rscript {0}

- name: Check
env:
_R_CHECK_CRAN_INCOMING_REMOTE_: false
run: rcmdcheck::rcmdcheck(args = c("--no-manual", "--as-cran"), error_on = "warning", check_dir = "check")
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

0 comments on commit 29ffc08

Please sign in to comment.