Skip to content

Commit

Permalink
Merge branch 'develop' into LPJGUESS_SDA
Browse files Browse the repository at this point in the history
  • Loading branch information
mdietze authored Nov 8, 2024
2 parents 4c5530a + caad7b3 commit 82dd326
Show file tree
Hide file tree
Showing 1,312 changed files with 31,326 additions and 18,105 deletions.
3 changes: 3 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
- [ ] My change requires a change to the documentation.
- [ ] My name is in the list of CITATION.cff
- [ ] I agree that PEcAn Project may distribute my contribution under any or all of
- the same license as the existing code,
- and/or the BSD 3-clause license.
- [ ] I have updated the CHANGELOG.md.
- [ ] I have updated the documentation accordingly.
- [ ] I have read the **CONTRIBUTING** document.
Expand Down
57 changes: 57 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#
# Add project labels to PRs
# Invocation is done by .github/workflows/prlabeler.yml

# changes in the documentation
'Documentation':
- changed-files:
- any-glob-to-any-file: 'book_source/**'
- any-glob-to-any-file: 'documentation/**'
- any-glob-to-any-file: 'CONTRIBUTING.md'
- any-glob-to-any-file: 'DEBUGING.md'
- any-glob-to-any-file: 'DEV-INTRO.md'
- any-glob-to-any-file: 'README.md'

# Add 'Dockerfile' label to any changes in the docker directory
'Dockerfile':
- changed-files:
- any-glob-to-any-file: 'docker/**'


# Add 'Website' label to any changes in the web directory
'Website':
- changed-files:
- any-glob-to-any-file: 'web/**'

# Add 'Base' label to any changes in the base directory
'Base':
- changed-files:
- any-glob-to-any-file: 'base/**'

# Add 'Models' label to any changes in the models directory
'Models':
- changed-files:
- any-glob-to-any-file: 'models/**'

# Add 'Modules' label to any changes in the modules directory
'Modules':
- changed-files:
- any-glob-to-any-file: 'modules/**'

# Add 'GitHub Actions' label to any changes in the .github/workflows directory
'GitHub Actions':
- changed-files:
- any-glob-to-any-file: '.github/workflows/**'

# Add 'Scripts' label to any changes in the scripts directory

'Scripts':
- changed-files:
- any-glob-to-any-file: 'scripts/**'

# Add 'Tests' label to any changes in the tests directory
'Tests':
- all:
- changed-files:
- any-glob-to-any-file: ['tests/**', '**/tests/**']
- any-glob-to-any-file: '!**/tests/Rcheck_reference.log'
30 changes: 30 additions & 0 deletions .github/settings.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
#Define the colour of labels over here

labels:

- name: "Documentation"
color: a2dcf2

- name: "Dockerfile"
color: 0052CC

- name: "Website"
color: 84b6eb

- name: "Base"
color: 1ED626

- name: "Models"
color: C5DEF5

- name: "Modules"
color: FBCA04

- name: "GitHub Actions"
color: 84b6eb

- name: "Scripts"
color: 3B8924

- name: "Tests"
color: ff8c00
29 changes: 16 additions & 13 deletions .github/workflows/book.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,13 @@ name: renderbook
on:
push:
branches:
- master
- main
- develop

tags:
- '*'

pull_request:

merge_group:
workflow_dispatch:

jobs:
bookdown:
Expand All @@ -24,11 +22,13 @@ jobs:

steps:
# checkout source code
- uses: actions/checkout@v3
# install rmarkdown
- name: Install rmarkdown
- uses: actions/checkout@v4
# install bookdown
- name: Install bookdown
run: |
Rscript -e 'install.packages(c("rmarkdown","bookdown"))'
Rscript \
-e 'repos <- c(getOption("repos"), sub(r"(\d{4}-\d{2}-\d{2})", "latest", getOption("repos")))' \
-e 'remotes::install_version("bookdown", ">= 0.31", dependencies = TRUE, upgrade = FALSE, repos = repos)'
# copy files
- name: copy extfiles
run: |
Expand All @@ -52,22 +52,25 @@ jobs:
path: book_source/_book/
# download documentation repo
- name: Checkout documentation repo
if: github.event_name != 'pull_request'
uses: actions/checkout@v3
if: github.event_name == 'push'
uses: actions/checkout@v4
with:
repository: ${{ github.repository_owner }}/pecan-documentation
path: pecan-documentation
token: ${{ secrets.GH_PAT }}
# upload new documentation
- name: publish to github
if: github.event_name != 'pull_request'
if: github.event_name == 'push'
run: |
git config --global user.email "[email protected]"
git config --global user.name "GitHub Documentation Robot"
export VERSION=${GITHUB_REF##*/}
export VERSION=$(echo $GITHUB_REF | sed 's,.*/,,' )
if [ "$VERSION" = "main" ]; then
export VERSION=latest
fi
cd pecan-documentation
mkdir -p $VERSION
rsync -a --delete ../book_source/_book/ ${VERSION}/
git add --all *
git commit -m "Build book from pecan revision ${GITHUB_SHA}" || true
git push -q origin master
git push -q origin main
69 changes: 69 additions & 0 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: check

on:
workflow_call:
inputs:
R-version:
required: true
type: string
make-grouping:
required: true
type: string

env:
R_LIBS_USER: /usr/local/lib/R/site-library
LC_ALL: en_US.UTF-8
NCPUS: 2
PGHOST: postgres
CI: true

jobs:
check:
runs-on: ubuntu-latest

env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
_R_CHECK_LENGTH_1_CONDITION_: true
_R_CHECK_LENGTH_1_LOGIC2_: true
# Avoid compilation check warnings that come from the system Makevars
# See https://stat.ethz.ch/pipermail/r-package-devel/2019q2/003898.html
_R_CHECK_COMPILATION_FLAGS_KNOWN_: -Wformat -Werror=format-security -Wdate-time
# Keep R checks from trying to consult the very flaky worldclockapi.com
_R_CHECK_SYSTEM_CLOCK_: 0

container:
image: pecan/depends:R${{ inputs.R-version }}

steps:
# checkout source code
- name: work around https://github.com/actions/checkout/issues/766
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- uses: actions/checkout@v4
with:
set-safe-directory: false

# Forbid spaces in names. Yes, *we* know it's not 1980 anymore, but Make doesn't.
- name: check for filenames that would confuse Make
run: |
SPACENAMES=`find . -name '* *'`
if [ -n "$SPACENAMES" ]; then
echo "::error file=${SPACENAMES}::Spaces in filename(s): ${SPACENAMES}. Please rename these files by converting spaces to underscores."
exit 1
fi
# install additional tools needed
- name: install utils
run: apt-get update && apt-get install -y postgresql-client qpdf
- name: install new dependencies
run: Rscript scripts/generate_dependencies.R && cd docker/depends && Rscript pecan.depends.R

# run PEcAn checks
# The package names of base, modules, and models are passed as matrix variables to avoid repeatability of code
- name: check
run: make -j1 ${{ inputs.make-grouping }}
env:
REBUILD_DOCS: "FALSE"
RUN_TESTS: "FALSE"

- name: check for out-of-date files
uses: infotroph/tree-is-clean@v1
Loading

0 comments on commit 82dd326

Please sign in to comment.