Skip to content

Merge pull request #419 from mrc-ide/glue-fix #169

Merge pull request #419 from mrc-ide/glue-fix

Merge pull request #419 from mrc-ide/glue-fix #169

Workflow file for this run

on:
push:
branches:
- master
- mrc-3753
name: make-release
jobs:
build-binaries:
runs-on: ${{ matrix.config.os }}
name: ${{ matrix.config.os }} (${{ matrix.config.r }})
strategy:
fail-fast: false
matrix:
config:
- {os: macOS-latest, r: 'release'}
- {os: windows-latest, r: 'release'}
# - {os: macOS-latest, r: 'oldrel'}
- {os: windows-latest, r: 'oldrel'}
env:
R_REMOTES_NO_ERRORS_FROM_WARNINGS: true
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v3
- uses: r-lib/actions/setup-r@v2
with:
r-version: ${{ matrix.config.r }}
use-public-rspm: true
- uses: r-lib/actions/setup-pandoc@v2
- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::pkgbuild
# Properly, should build source first!
- name: Build binary
shell: Rscript {0}
run: |
src <- pkgbuild::build(".", dest_path = tempdir())
bin <- pkgbuild::build(".", dest_path = tempdir(), binary = TRUE)
dir.create("build")
file.copy(c(src, bin), "build")
- name: Upload package
if: success()
uses: actions/upload-artifact@v3
with:
name: pkg-${{ matrix.config.os }}-${{ matrix.config.r }}
path: build
create-release:
runs-on: ubuntu-20.04
needs: build-binaries
steps:
- uses: actions/checkout@v2
- name: Extract version
run: |
echo "PACKAGE_VERSION=$(grep '^Version' DESCRIPTION | sed 's/.*: *//')" >> $GITHUB_ENV
echo "PACKAGE_NAME=$(grep '^Package' DESCRIPTION | sed 's/.*: *//')" >> $GITHUB_ENV
- uses: actions/download-artifact@v2
with:
path: pkg
- name: Create archive of random library
shell: bash
run: |
tar -zcvf dust-random.tar.gz -C inst/include dust/random
- name: Organise files
shell: bash
run: |
ls -R
cp pkg/pkg-macOS-latest-release/${{ env.PACKAGE_NAME }}_${{ env.PACKAGE_VERSION }}.tar.gz .
cp pkg/pkg-macOS-latest-release/${{ env.PACKAGE_NAME }}_${{ env.PACKAGE_VERSION }}.tgz .
cp pkg/pkg-windows-latest-release/${{ env.PACKAGE_NAME }}_${{ env.PACKAGE_VERSION }}.zip .
cp pkg/pkg-windows-latest-oldrel/${{ env.PACKAGE_NAME }}_${{ env.PACKAGE_VERSION }}.zip ${{ env.PACKAGE_NAME }}_${{ env.PACKAGE_VERSION }}_oldrel.tgz
ls dust*
- name: Create release
id: create_release
uses: softprops/action-gh-release@v1
with:
tag_name: v${{ env.PACKAGE_VERSION }}
name: Release ${{ env.PACKAGE_NAME }} ${{ env.PACKAGE_VERSION }}
draft: false
prerelease: false
fail_on_unmatched_files: true
files: |
dust_*.tar.gz
dust_*.tgz
dust_*.zip
dust-random.tar.gz