Skip to content

Commit

Permalink
[wip] gha
Browse files Browse the repository at this point in the history
  • Loading branch information
kyleam committed Jan 17, 2024
1 parent 1967a10 commit 35c0f05
Show file tree
Hide file tree
Showing 11 changed files with 180 additions and 2,090 deletions.
2 changes: 1 addition & 1 deletion .Rbuildignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
^\.Rproj\.user$
^LICENSE\.md$
^.drone.yml$
^.drone.jsonnet$
^\.github$
^README\.Rmd$
^_pkgdown\.yml$
^docs$
Expand Down
275 changes: 0 additions & 275 deletions .drone.yml
Original file line number Diff line number Diff line change
@@ -1,276 +1,6 @@
---
kind: pipeline
type: docker
name: mpn:latest

platform:
os: linux
arch: amd64

steps:
- name: pull
image: omerxx/drone-ecr-auth
commands:
- $(aws ecr get-login --no-include-email --region us-east-1)
- docker pull 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.0:latest
- docker pull 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.1:latest
volumes:
- name: docker.sock
path: /var/run/docker.sock


- name: Install bbi
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.1:latest
commands:
- chmod +x install_bbi.sh
- ./install_bbi.sh -p /ephemeral/bbi -v 'v3.3.0'
volumes:
- name: cache
path: /ephemeral

- name: "Check package: R 4.0"
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.0:latest
commands:
- R -s -e 'devtools::install_deps(upgrade = '"'"'never'"'"')'
# this can be removed once nmrec 0.3.0 is available on MPN
- git clone --branch 0.3.0 --depth 1 https://github.com/metrumresearchgroup/nmrec.git /tmp/nmrec
- R -s -e 'devtools::install("/tmp/nmrec", upgrade = "never")'
- R -s -e 'devtools::check(env_vars = c("BBI_EXE_PATH" = "/ephemeral/bbi", "NOT_CRAN" = "true"))'
environment:
BBI_EXE_PATH: /ephemeral/bbi
NOT_CRAN: true
volumes:
- name: cache
path: /ephemeral

- name: "Check package: R 4.1"
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.1:latest
commands:
- R -s -e 'devtools::install_deps(upgrade = '"'"'never'"'"')'
# this can be removed once nmrec 0.3.0 is available on MPN
- git clone --branch 0.3.0 --depth 1 https://github.com/metrumresearchgroup/nmrec.git /tmp/nmrec
- R -s -e 'devtools::install("/tmp/nmrec", upgrade = "never")'
- R -s -e 'devtools::check(env_vars = c("BBI_EXE_PATH" = "/ephemeral/bbi", "NOT_CRAN" = "true"))'
environment:
BBI_EXE_PATH: /ephemeral/bbi
volumes:
- name: cache
path: /ephemeral

volumes:
- name: docker.sock
host:
path: /var/run/docker.sock
- name: cache
temp: {}

trigger:
event:
exclude:
- promote

---
kind: pipeline
type: docker
name: oldest

platform:
os: linux
arch: amd64

steps:
- name: pull
image: omerxx/drone-ecr-auth
commands:
- $(aws ecr get-login --no-include-email --region us-east-1)
- docker pull 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.0:2020-06-08
volumes:
- name: docker.sock
path: /var/run/docker.sock

- name: Install bbi
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.0:2020-06-08
commands:
- chmod +x install_bbi.sh
- ./install_bbi.sh -p /ephemeral/bbi -v 'v3.0.2'
volumes:
- name: cache
path: /ephemeral

- name: "Check package: R 4.0"
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.0:2020-06-08
commands:
- R -s -e 'devtools::install_deps(upgrade = '"'"'never'"'"')'
# nmrec isn't available until the 2023-09-19 snapshot.
- git clone --branch 0.3.0 --depth 1 https://github.com/metrumresearchgroup/nmrec.git /tmp/nmrec
- R -s -e 'devtools::install("/tmp/nmrec", upgrade = "never")'
- R -s -e 'devtools::check(env_vars = c("BBI_EXE_PATH" = "/ephemeral/bbi", "NOT_CRAN" = "true"))'
environment:
BBI_EXE_PATH: /ephemeral/bbi
NOT_CRAN: true
volumes:
- name: cache
path: /ephemeral

volumes:
- name: docker.sock
host:
path: /var/run/docker.sock
- name: cache
temp: {}

trigger:
event:
exclude:
- promote

---
kind: pipeline
type: docker
name: cran-latest

platform:
os: linux
arch: amd64

steps:
- name: pull
image: omerxx/drone-ecr-auth
commands:
- $(aws ecr get-login --no-include-email --region us-east-1)
- docker pull 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.0:cran-latest
- docker pull 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.1:cran-latest
volumes:
- name: docker.sock
path: /var/run/docker.sock

- name: Install bbi
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.1:cran-latest
commands:
- chmod +x install_bbi.sh
- ./install_bbi.sh -p /ephemeral/bbi -v 'v3.3.0'
volumes:
- name: cache
path: /ephemeral

- name: "Check package: R 4.0"
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.0:cran-latest
commands:
- R -s -e 'devtools::install_deps(upgrade = '"'"'always'"'"')'
# clone nmrec from main branch for CRAN-latest
- git clone --depth 1 https://github.com/metrumresearchgroup/nmrec.git /tmp/nmrec
- R -s -e 'devtools::install("/tmp/nmrec", upgrade = "never")'
- R -s -e 'devtools::load_all(); sessioninfo::session_info()'
- R -s -e 'devtools::check(env_vars = c("BBI_EXE_PATH" = "/ephemeral/bbi", "NOT_CRAN" = "true"))'
environment:
BBI_EXE_PATH: /ephemeral/bbi
NOT_CRAN: true
volumes:
- name: cache
path: /ephemeral


- name: "Check package: R 4.1"
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.1:cran-latest
commands:
- R -s -e 'devtools::install_deps(upgrade = '"'"'always'"'"')'
# clone nmrec from main branch for CRAN-latest
- git clone --depth 1 https://github.com/metrumresearchgroup/nmrec.git /tmp/nmrec
- R -s -e 'devtools::install("/tmp/nmrec", upgrade = "never")'
- R -s -e 'devtools::load_all(); sessioninfo::session_info()'
- R -s -e 'devtools::check(env_vars = c("BBI_EXE_PATH" = "/ephemeral/bbi", "NOT_CRAN" = "true"))'
environment:
BBI_EXE_PATH: /ephemeral/bbi
NOT_CRAN: true
volumes:
- name: cache
path: /ephemeral

volumes:
- name: docker.sock
host:
path: /var/run/docker.sock
- name: cache
temp: {}

trigger:
event:
exclude:
- promote

---
kind: pipeline
type: docker
name: bbr-coverage

platform:
os: linux
arch: amd64

steps:
- name: pull
image: omerxx/drone-ecr-auth
commands:
- $(aws ecr get-login --no-include-email --region us-east-1)
- docker pull 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.1:latest
volumes:
- name: docker.sock
path: /var/run/docker.sock

- name: Install bbi
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.1:latest
commands:
- chmod +x install_bbi.sh
- ./install_bbi.sh -p /ephemeral/bbi -v 'v3.3.0'
volumes:
- name: cache
path: /ephemeral

- name: Code coverage
pull: never
image: 906087756158.dkr.ecr.us-east-1.amazonaws.com/r-dev-ci-mpn-4.1:latest
commands:
- R -s -e 'devtools::install_deps(upgrade = '"'"'never'"'"')'
# clone nmrec from main branch for coverage
- git clone --depth 1 https://github.com/metrumresearchgroup/nmrec.git /tmp/nmrec
- R -s -e 'devtools::install("/tmp/nmrec", upgrade = "never")'
- R -s -e 'covr::codecov()'
environment:
BBI_EXE_PATH: /ephemeral/bbi
CODECOV_TOKEN:
from_secret: CODECOV_TOKEN
NOT_CRAN: true
volumes:
- name: cache
path: /ephemeral

volumes:
- name: docker.sock
host:
path: /var/run/docker.sock
- name: cache
temp: {}

trigger:
event:
exclude:
- promote

depends_on:
- mpn:latest
- cran-latest
---
kind: pipeline
type: docker
name: bbr-release

platform:
Expand Down Expand Up @@ -349,8 +79,3 @@ volumes:
trigger:
event:
- tag

depends_on:
- mpn:latest
- oldest
- cran-latest
26 changes: 26 additions & 0 deletions .github/actions/setup-bbi/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Setup bbi
description: >
Install bbi at the specified version to $HOME/bin/bbi, and point the
BBI_EXE_PATH environment variable to this location.
inputs:
# TODO: At some point, it'd be nice if the default was to
# automatically detect new versions (gh-620).
version:
description: Version of bbi to install
required: true
default: v3.3.0
runs:
using: composite
steps:
- name: Install bbi
shell: bash
env:
BBI_VERSION: ${{ inputs.version }}
run: |
mkdir -p $HOME/bin
url=https://github.com/metrumresearchgroup/bbi/releases/download
curl -fSsL "$url/$BBI_VERSION/bbi_linux_amd64.tar.gz" |
tar -z --extract --to-stdout >"$HOME/bin/bbi"
chmod +x "$HOME/bin/bbi"
$HOME/bin/bbi version
echo "BBI_EXE_PATH=$HOME/bin/bbi" >>$GITHUB_ENV
31 changes: 31 additions & 0 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: coverage
on:
push:
branches:
- 'main'
- 'scratch/**'
pull_request:

jobs:
coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install bbi
uses: ./.github/actions/setup-bbi
- uses: r-lib/actions/setup-r@v2
with:
r-version: release
use-public-rspm: true
extra-repositories: 'https://mpn.metworx.com/snapshots/stable/2023-12-05'
- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: |
any::covr
github::metrumresearchgroup/nmrec@0.3.0
upgrade: 'TRUE'
- name: Run covr
shell: Rscript {0}
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
run: covr::codecov()
Loading

0 comments on commit 35c0f05

Please sign in to comment.