Update docs, add renv and conda cache,& release CI

pull/108/head
JulioV 2020-12-18 15:18:15 -05:00
parent 9bf6042ea9
commit ac4526df5d
4 changed files with 73 additions and 17 deletions

View File

@ -9,14 +9,18 @@ jobs:
deploy: deploy:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2 - if: ${{ github.ref == 'refs/heads/develop' }} #we delay develop because when we release a hotgix (tag + develop push), one of these push will be out of sync
uses: jakejarvis/wait-action@master
with: with:
fetch-depth: 0 time: '60s'
- uses: actions/setup-python@v2 - uses: actions/setup-python@v2
with: with:
python-version: 3.x python-version: 3.x
- run: pip install git+https://${GH_TOKEN}@github.com/carissalow/mkdocs-material-insiders.git - run: pip install git+https://${GH_TOKEN}@github.com/carissalow/mkdocs-material-insiders.git
- run: pip install mike - run: pip install mike
- uses: actions/checkout@v2
with:
fetch-depth: 0
- run: | - run: |
git config user.name github-actions git config user.name github-actions
git config user.email github-actions@github.com git config user.email github-actions@github.com

View File

@ -2,7 +2,13 @@ name: tests
on: on:
push: push:
#branches: [ develop ] branches-ignore:
- "master"
tags:
- "v[0-9]+.[0-9]+.[0-9]+"
pull_request:
branches:
- "develop"
env: env:
RENV_PATHS_ROOT: ~/.local/share/renv RENV_PATHS_ROOT: ~/.local/share/renv
@ -13,31 +19,60 @@ jobs:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
with: with:
fetch-depth: 0 fetch-depth: 0
- uses: s-weigand/setup-conda@v1 - run: "sed -i 's/name:.*/name: rapidstests/g' environment.yml"
- run : conda --version - run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
- run : source activate base - run: echo "RELEASE_VERSION_URL=$(echo $RELEASE_VERSION | sed -e 's/\.//g')" >> $GITHUB_ENV
- run : | - run : |
sudo apt update sudo apt update
sudo apt install libcurl4-openssl-dev # sudo apt install libcurl4-openssl-dev
sudo apt install libssl-dev # sudo apt install libssl-dev
sudo apt install libxml2-dev # sudo apt install libxml2-dev
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu focal-cran40/' sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu focal-cran40/'
sudo apt install r-base sudo apt install r-base
sudo apt install pandoc - name: Cache R packages
sudo Rscript --vanilla -e 'install.packages("rmarkdown", repos="http://cran.us.r-project.org")'
conda env create -f environment.yml -n test-environment
source activate test-environment
- name: Cache packages
uses: actions/cache@v1 uses: actions/cache@v1
with: with:
path: ${{ env.RENV_PATHS_ROOT }} path: ${{ env.RENV_PATHS_ROOT }}
key: ${{ runner.os }}-renv-${{ hashFiles('**/renv.lock') }} key: ${{ runner.os }}-renv-${{ hashFiles('**/renv.lock') }}
restore-keys: | restore-keys: |
${{ runner.os }}-renv- ${{ runner.os }}-renv-
- name: Restore packages - name: Restore R packages
shell: Rscript {0} shell: Rscript {0}
run: | run: |
if (!requireNamespace("renv", quietly = TRUE)) install.packages("renv") if (!requireNamespace("renv", quietly = TRUE)) install.packages("renv")
renv::restore() renv::restore()
- run : bash tests/scripts/run_tests.sh all test - name: Cache conda packages
uses: actions/cache@v1
env:
# Increase this value to reset cache if environment.yml has not changed
CACHE_NUMBER: 0
with:
path: ~/conda_pkgs_dir
key:
${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-${{
hashFiles('**/environment.yml') }}
- name: Restore conda packages
uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: rapidstests
environment-file: environment.yml
use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly!
- name: Run tests
shell: bash -l {0}
run : |
conda activate rapidstests
bash tests/scripts/run_tests.sh all test
- name: Release tag
if: success() && startsWith(github.ref, 'refs/tags')
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
body: |
See [change log](http://www.rapids.science/latest/change-log/#${{ env.RELEASE_VERSION_URL }})
draft: false
prerelease: false

View File

@ -37,7 +37,7 @@ In total, our example workflow has nine steps that are in charge of sensor data
## Configure and run the analysis workflow example ## Configure and run the analysis workflow example
1. [Install](../../setup/installation) RAPIDS 1. [Install](../../setup/installation) RAPIDS
2. Configure the [user credentials](../../setup/configuration/#database-credentials) of a local or remote MySQL server with writing permissions in your `.env` file. The example config file is at `example_profile/example_config.yaml`. 2. Configure the [user credentials](../../setup/configuration/#database-credentials) of a local or remote MySQL server with writing permissions in your `.env` file. The config file where you need to modify the `DATABASE_GROUP` is at `example_profile/example_config.yaml`.
3. Unzip the [test database](https://osf.io/skqfv/files/) to `data/external/rapids_example.sql` and run: 3. Unzip the [test database](https://osf.io/skqfv/files/) to `data/external/rapids_example.sql` and run:
```bash ```bash
./rapids -j1 restore_sql_file --profile example_profile ./rapids -j1 restore_sql_file --profile example_profile

View File

@ -0,0 +1,17 @@
name: devtest
channels:
- defaults
dependencies:
- python=3.7
- pandas=1.1.5
- scipy=1.5.2
- plotly=4.14.1
- astropy=4.2
- scikit-learn=0.23.2
- xgboost=0.90
- lightgbm=3.1.1
- conda-forge::imbalanced-learn=0.6.2
- pip=20.3.3
- pip:
- snakemake==5.30.2
prefix: /usr/local/Caskroom/miniconda/base/envs/devtest