Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

on label install check mac & windows #122

Merged
merged 35 commits into from
Jul 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
53941d8
on label install check mac & windows
j-i-l Jul 3, 2024
e87a154
fixing running condition
j-i-l Jul 3, 2024
a1da57d
installing dependencies for macos
j-i-l Jul 3, 2024
b6678f5
try installing gsl package
j-i-l Jul 3, 2024
f2ff8d9
dedicated window pipeline
j-i-l Jul 8, 2024
de9d914
fixing os parameter
j-i-l Jul 8, 2024
3b8dc5c
dedicated macos workflow
j-i-l Jul 8, 2024
5724c61
Revert "try installing gsl package"
j-i-l Jul 8, 2024
3ee1ecb
minor label formatting
j-i-l Jul 8, 2024
b7d21c5
fixing container declaration
j-i-l Jul 8, 2024
47c81a2
installing jags
j-i-l Jul 8, 2024
7bf00df
adding jags path
j-i-l Jul 8, 2024
fb22456
trying again with install
j-i-l Jul 8, 2024
935f6b1
installing rjags providing Jags home
j-i-l Jul 8, 2024
5e8c341
try with silent mode fore setup exe'
j-i-l Jul 9, 2024
e7053fb
adding more R versions
j-i-l Jul 9, 2024
cd4c9a2
install INLA
j-i-l Jul 9, 2024
0cde7e5
renaming workflow
j-i-l Jul 9, 2024
5b858b3
debugging - show gls configs
j-i-l Jul 9, 2024
7efc236
fixing to always report
j-i-l Jul 9, 2024
d458de5
create configure file with autoconf
j-i-l Jul 9, 2024
313caaa
installing automake
j-i-l Jul 9, 2024
0bd4348
debugging - gsl path
j-i-l Jul 9, 2024
2553b5e
providing flags for clang/gcc as well
j-i-l Jul 9, 2024
b3230bc
debugging - check jags location
j-i-l Jul 9, 2024
97033ce
try to detect the paths for jags
j-i-l Jul 9, 2024
8aa1f10
passing the args to Makevars
j-i-l Jul 9, 2024
b90ff58
better test
j-i-l Jul 9, 2024
b0501ca
debugging
j-i-l Jul 9, 2024
60e75c9
unconditional try
j-i-l Jul 9, 2024
7c87e25
debugging
j-i-l Jul 9, 2024
373aadc
separate install of rjags
j-i-l Jul 9, 2024
965d7c4
simplify
j-i-l Jul 9, 2024
9a3af1a
working with only configure.ac file
j-i-l Jul 10, 2024
ceef3ca
providing jags paths does not help
j-i-l Jul 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions .github/workflows/onlabel_CRAN_checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -87,10 +87,9 @@ jobs:
run: |
renv::deactivate()
shell: Rscript {0}
- name: Change permissions of configure
- name: Configure ABN for installation
run: |
chmod +x configure
shell: bash
autoconf
- name: Install package dependencies
run: |
devtools::install_deps(pkg = '.', dependencies = TRUE, upgrade='never')
Expand Down
119 changes: 119 additions & 0 deletions .github/workflows/onlabel_Macos_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
# Workflow is triggered on label and check installation on various operating systems
# This action is adapted from https://github.com/t4d-gmbh/stubbed_versioning
name: On Label Macos Checks

on:
pull_request:
types: [ labeled ]

env:
LABEL_CHECK: 'macos::check'
LABEL_SUCCESS: 'macos::passed'
LABEL_FAILURE: 'macos::failed'
BUILD_LOC: "./build"

permissions:
packages: read
contents: write
pull-requests: write
repository-projects: write

jobs:
R-CMD-check:
if: ${{ github.event.label.name == 'macos::check' }}
name: macos-latest (${{ matrix.config.r }})
runs-on: macos-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
strategy:
fail-fast: false
matrix:
config:
- {r: 'release',}
# - {r: '4.1',}
# - {r: 'devel', http-user-agent: 'release'}
# - {r: 'oldrel-1',}
# - {r: 'oldrel-2',}
# - {r: 'oldrel-3',}

steps:
- name: install dependencies macos
run: |
brew install pkg-config
brew install gsl
brew install jags
brew install automake # needed to run autoconf
gsl-config --libs
gsl-config --cflags

- uses: actions/checkout@v4

- 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

- name: install rjags separately
run: |
install.packages('rjags', configure.args = '--enable-rpath')
shell: Rscript {0}

- name: Configure ABN for installation
run: |
autoconf

- name: Debugging
run: |
pkg-config --cflags --static jags
pkg-config --libs --static jags

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::rcmdcheck
needs: check

- uses: r-lib/actions/check-r-package@v2
with:
upload-snapshots: false
build_args: 'c("--no-manual","--compact-vignettes=gs+qpdf")'

report_macos_checks:
if: ${{ (success() || failure()) }}
needs:
- R-CMD-check
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
repository-projects: write
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OWNER: ${{ github.repository_owner }}
REPO: ${{ github.event.repository.name }}
steps:
- uses: actions/checkout@v4
- name: Check if on demand tasks succeeded
run: |
gh pr edit ${{ env.EVENT }} --remove-label ${{ env.LABEL_CHECK }} --repo ${{ env.OWNER }}/${{ env.REPO }}
if [ ${{ needs.R-CMD-check.result }} == "success" ]; then
gh pr edit ${{ env.EVENT }} --remove-label ${{ env.LABEL_FAILURE }} --repo ${{ env.OWNER }}/${{ env.REPO }}
gh pr edit ${{ env.EVENT }} --add-label ${{ env.LABEL_SUCCESS }} --repo ${{ env.OWNER }}/${{ env.REPO }}
echo "### ${{ github.event.label.url }} passed! :rocket:" >> $GITHUB_STEP_SUMMARY
exit 0
elif [ ${{ needs.R-CMD-check.result }} == "failure" ]; then
gh pr edit ${{ env.EVENT }} --remove-label ${{ env.LABEL_SUCCESS }} --repo ${{ env.OWNER }}/${{ env.REPO }}
gh pr edit ${{ env.EVENT }} --add-label ${{ env.LABEL_FAILURE }} --repo ${{ env.OWNER }}/${{ env.REPO }}
echo "### ${{ github.event.label.url }} failed!" >> $GITHUB_STEP_SUMMARY
exit 1
else
gh pr edit ${{ env.EVENT }} --add-label ${{ env.LABEL_CHECK }} --repo ${{ env.OWNER }}/${{ env.REPO }}
echo "On demand task outcome was ${{ needs.R-CMD-check.outcome }}"
fi
shell: bash
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
EVENT: ${{ github.event.number }} # This is either the issue or pr
120 changes: 120 additions & 0 deletions .github/workflows/onlabel_Windows_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
# Workflow is triggered on label and check installation on various operating systems
# This action is adapted from https://github.com/t4d-gmbh/stubbed_versioning
name: On Label Windows Checks

on:
pull_request:
types: [ labeled ]

env:
LABEL_CHECK: 'windows::check'
LABEL_SUCCESS: 'windows::passed'
LABEL_FAILURE: 'windows::failed'
BUILD_LOC: "./build"
JAGS_MAJORV: '4'
JAGS_VERSION: '4.3.1'
JAGS_URL: "https://sourceforge.net/projects/mcmc-jags/files/JAGS"

permissions:
packages: read
contents: write
pull-requests: write
repository-projects: write

jobs:
R-CMD-check:
if: ${{ github.event.label.name == 'windows::check' }}
name: windows-latest (${{ matrix.config.r }})
runs-on: windows-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
R_KEEP_PKG_SOURCE: yes
strategy:
fail-fast: false
matrix:
config:
- {r: 'release',}
# - {r: '4.1',}
- {r: 'devel', http-user-agent: 'release'}
- {r: 'oldrel-1',}
- {r: 'oldrel-2',}
# - {r: 'oldrel-3',}

steps:

- name: Install GSL binaries with cygwin
uses: cygwin/cygwin-install-action@master

- name: Install JAGS
run: |
Import-Module bitstransfer
New-Item -ItemType Directory -Force -Path "C:\Program Files\JAGS\JAGS-${{ env.JAGS_VERSION }}"
start-bitstransfer -source ${{ env.JAGS_URL }}/${{ env.JAGS_MAJORV }}.x/Windows/JAGS-${{ env.JAGS_VERSION }}.exe/download "C:\Program Files\JAGS\JAGS-${{ env.JAGS_VERSION }}\JAGS-${{ env.JAGS_VERSION }}.exe"
Start-Process -Wait -FilePath "C:\Program Files\JAGS\JAGS-${{ env.JAGS_VERSION }}\JAGS-${{ env.JAGS_VERSION }}.exe" -ArgumentList "/S" -PassThru

- uses: actions/checkout@v4

- 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

- name: install JAGS
run: |
Sys.setenv(JAGS_HOME="C:/Program Files/JAGS/JAGS-${{ env.JAGS_VERSION }}")
install.packages("rjags")
shell: Rscript {0}

- name: install JAGS
run: |
install.packages("INLA", repos = c(getOption("repos"), INLA = "https://inla.r-inla-download.org/R/stable"), dep = TRUE)

- uses: r-lib/actions/setup-r-dependencies@v2
with:
extra-packages: any::rcmdcheck
needs: check

- uses: r-lib/actions/check-r-package@v2
with:
upload-snapshots: false
build_args: 'c("--no-manual","--compact-vignettes=gs+qpdf")'

report_windows_checks:
if: ${{ (success() || failure()) }}
needs:
- R-CMD-check
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
repository-projects: write
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OWNER: ${{ github.repository_owner }}
REPO: ${{ github.event.repository.name }}
steps:
- uses: actions/checkout@v4
- name: Check if on demand tasks succeeded
run: |
gh pr edit ${{ env.EVENT }} --remove-label ${{ env.LABEL_CHECK }} --repo ${{ env.OWNER }}/${{ env.REPO }}
if [ ${{ needs.R-CMD-check.result }} == "success" ]; then
gh pr edit ${{ env.EVENT }} --remove-label ${{ env.LABEL_FAILURE }} --repo ${{ env.OWNER }}/${{ env.REPO }}
gh pr edit ${{ env.EVENT }} --add-label ${{ env.LABEL_SUCCESS }} --repo ${{ env.OWNER }}/${{ env.REPO }}
echo "### ${{ github.event.label.url }} passed! :rocket:" >> $GITHUB_STEP_SUMMARY
exit 0
elif [ ${{ needs.R-CMD-check.result }} == "failure" ]; then
gh pr edit ${{ env.EVENT }} --remove-label ${{ env.LABEL_SUCCESS }} --repo ${{ env.OWNER }}/${{ env.REPO }}
gh pr edit ${{ env.EVENT }} --add-label ${{ env.LABEL_FAILURE }} --repo ${{ env.OWNER }}/${{ env.REPO }}
echo "### ${{ github.event.label.url }} failed!" >> $GITHUB_STEP_SUMMARY
exit 1
else
gh pr edit ${{ env.EVENT }} --add-label ${{ env.LABEL_CHECK }} --repo ${{ env.OWNER }}/${{ env.REPO }}
echo "On demand task outcome was ${{ needs.R-CMD-check.outcome }}"
fi
shell: bash
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
EVENT: ${{ github.event.number }} # This is either the issue or pr
Loading
Loading