Skip to content

Save two-region data as .rds in parallel runs #60

Save two-region data as .rds in parallel runs

Save two-region data as .rds in parallel runs #60

# This workflow is designed to be manually triggered only.
name: Save two-region data as .rds in parallel runs
on:
workflow_dispatch: # allow manual trigger
inputs:
model_spec:
description: "Model spec file (in quotes)"
required: true
default: "StateIOv1.0.0-s"
type: string
jobs:
generate-save-data:
runs-on: ${{ matrix.config.os }}
name: ${{ matrix.script-run }}, ${{ matrix.data-year }} (${{ matrix.config.os}}, ${{ matrix.config.r}})
strategy:
fail-fast: false
matrix:
config:
- {os: ubuntu-latest, r: 'release'}
script-run:
- data-raw/TwoRegionModel.R
data-year:
- 2012
- 2013
- 2014
- 2015
- 2016
- 2017
- 2018
- 2019
- 2020
# env:
# R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
steps:
- uses: actions/checkout@v3
- uses: r-lib/actions/setup-pandoc@v2
- 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: devtools
# Release disk space on runners
- name: Release disk space on runners
run: |
sudo rm -rf /usr/share/dotnet # will release about 20GB if you don't need .NET
sudo rm -rf /opt/ghc
sudo rm -rf "/usr/local/share/boost"
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
# Load package and generate two-region data
- name: Load stateior, generate and save two-region tables
run: |
devtools::load_all()
year <- ${{ matrix.data-year }}
model_spec <- ${{ github.event.inputs.model_spec }}
source("${{ matrix.script-run }}")
shell: Rscript {0}
# Upload .rds files
- name: Upload .rds files and prepare zip for manual download
uses: actions/[email protected]
with:
# Artifact name
name: data and metadata
# A file, directory or wildcard patter that describes what to upload
path: "data/TwoRegion*.rds"
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
# retention-days: 5 # cannot exceed the retention limit set by the repository, organization, or enterprise.
# Upload .json files
- name: Upload .json files and prepare zip for manual download
uses: actions/[email protected]
with:
# Artifact name
name: data and metadata
# A file, directory or wildcard patter that describes what to upload
path: "inst/extdata/metadata/TwoRegion*.json"
if-no-files-found: error # 'warn' or 'ignore' are also available, defaults to `warn`
# retention-days: 5 # cannot exceed the retention limit set by the repository, organization, or enterprise.