-
Notifications
You must be signed in to change notification settings - Fork 9
/
README.md.in
63 lines (40 loc) · 3.87 KB
/
README.md.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# orderly
<!-- badges: start -->
[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
[![R build status](https://github.com/vimc/orderly/workflows/R-CMD-check/badge.svg)](https://github.com/vimc/orderly/actions)
[![Build status](https://badge.buildkite.com/bc7993cd6960b205b32bd20f92d0d707c128e1a14bdb580f73.svg)](https://buildkite.com/mrc-ide/orderly)
[![codecov.io](https://codecov.io/github/vimc/orderly/coverage.svg?branch=master)](https://codecov.io/github/vimc/orderly?branch=master)
[![CodeFactor](https://www.codefactor.io/repository/github/vimc/orderly/badge)](https://www.codefactor.io/repository/github/vimc/orderly)
[![](https://www.r-pkg.org/badges/version/orderly)](https://cran.r-project.org/package=orderly)
<!-- badges: end -->
> 1. an attendant in a hospital responsible for the non-medical care of patients and the maintenance of order and cleanliness.
> 2. a soldier who carries orders or performs minor tasks for an officer.
<!-- introduction -->
## Workflows with `orderly`
In the [MRC Centre for Global Infectious Disease Analysis](https://www.imperial.ac.uk/mrc-global-infectious-disease-analysis) we use `orderly` on three major projects:
- The [Vaccine Impact Modelling Consortium](https://www.vaccineimpact.org/)
- Our part of the response to the 2018-2020 Ebola outbreak in the Democratic Republic of Congo
- [Our part](https://www.imperial.ac.uk/mrc-global-infectious-disease-analysis/covid-19/) of the response to the 2019-2020 2019-nCoV-SARS/COVID-19 pandemic
The workflows we have developed here are oriented towards collaborative groups of researchers - other workflows are possible (indeed `orderly` is also designed to support a _decentralised_ workflow, though this has not been used in practice yet).
In these projects we have a group of researchers who develop and test analyses locally. These are developed on a [branch in git](https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging) and then run on a centralised _staging environment_ (a duplicate of our production environment). The code and outputs are reviewed with the help of [GitHub's "Pull requests"](https://help.github.com/en/articles/about-pull-requests) and then the reports are run on our production environment.
Interaction with the remote environments is achieved using an [HTTP API](https://github.com/vimc/montagu-reporting-api) which `orderly` itself transparently uses, so that reports can be run remotely, [directly from R](https://www.vaccineimpact.org/orderly/reference/orderly_run_remote.html). The remote systems also include an interactive web interface that can be used to explore and download versions of analyses, as well as run new ones.
## Internal database schema
`orderly` has a database, which should be the preferred way of querying the report archive from other programs. The schema is programmatically described at [`inst/database/schema.yml`](inst/database/schema.yml) and automatically generated database documentation is available [here](https://www.vaccineimpact.org/orderly/schema/).
## Testing
There is a set of regression tests that require the reference data. Enable these by running the script `./scripts/copy_reference` which creates data in `tests/testthat/reference`
## RStudio addins
There are [addins](https://github.com/vimc/orderly.rstudio) available to help with development workflows.
See docs at [orderly.rstudio](https://github.com/vimc/orderly.rstudio#setup) for setup and usage instructions.
## Installation
Install `orderly` from CRAN with
```r
install.packages("orderly")
```
To install our internally released version (which might be ahead of CRAN) via drat, use
```r
# install.packages("drat")
drat:::add("vimc")
install.packages("orderly")
```
## License
MIT © Imperial College of Science, Technology and Medicine