Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
tlincheck authored May 21, 2024
0 parents commit 5e24cca
Show file tree
Hide file tree
Showing 32 changed files with 3,525 additions and 0 deletions.
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
version: 2
updates:
# - package-ecosystem: pip
# directory: "/"
# schedule:
# interval: daily
- package-ecosystem: "github-actions"
directory: "/"
schedule:
# Check for updates once a week
interval: "weekly"
17 changes: 17 additions & 0 deletions .github/workflows/nightly-build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: nightly-build

on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *" # Daily “At 00:00”

jobs:
build:
if: ${{ github.repository_owner == 'ProjectPythia' }}
uses: ProjectPythia/cookbook-actions/.github/workflows/build-book.yaml@main
with:
environment_name: cookbook-dev

link-check:
if: ${{ github.repository_owner == 'ProjectPythia' }}
uses: ProjectPythia/cookbook-actions/.github/workflows/link-checker.yaml@main
18 changes: 18 additions & 0 deletions .github/workflows/publish-book.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: publish-book

on:
# Trigger the workflow on push to main branch
push:
branches:
- main
workflow_dispatch:

jobs:
build:
uses: ProjectPythia/cookbook-actions/.github/workflows/build-book.yaml@main
with:
environment_name: cookbook-dev

deploy:
needs: build
uses: ProjectPythia/cookbook-actions/.github/workflows/deploy-book.yaml@main
11 changes: 11 additions & 0 deletions .github/workflows/trigger-book-build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: trigger-book-build
on:
pull_request:

jobs:
build:
uses: ProjectPythia/cookbook-actions/.github/workflows/build-book.yaml@main
with:
environment_name: cookbook-dev
artifact_name: book-zip-${{ github.event.number }}
# Other input options are possible, see ProjectPythia/cookbook-actions/.github/workflows/build-book.yaml
9 changes: 9 additions & 0 deletions .github/workflows/trigger-delete-preview.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
name: trigger-delete-preview

on:
pull_request_target:
types: closed

jobs:
delete:
uses: ProjectPythia/cookbook-actions/.github/workflows/delete-preview.yaml@main
7 changes: 7 additions & 0 deletions .github/workflows/trigger-link-check.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
name: trigger-link-check
on:
pull_request:

jobs:
link-check:
uses: ProjectPythia/cookbook-actions/.github/workflows/link-checker.yaml@main
27 changes: 27 additions & 0 deletions .github/workflows/trigger-preview.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: trigger-preview
on:
workflow_run:
workflows:
- trigger-book-build
types:
- requested
- completed

jobs:
find-pull-request:
uses: ProjectPythia/cookbook-actions/.github/workflows/find-pull-request.yaml@main
deploy-preview:
needs: find-pull-request
if: github.event.workflow_run.conclusion == 'success'
uses: ProjectPythia/cookbook-actions/.github/workflows/deploy-book.yaml@main
with:
artifact_name: book-zip-${{ needs.find-pull-request.outputs.number }}
destination_dir: _preview/${{ needs.find-pull-request.outputs.number }} # deploy to subdirectory labeled with PR number
is_preview: "true"

preview-comment:
needs: find-pull-request
uses: ProjectPythia/cookbook-actions/.github/workflows/preview-comment.yaml@main
with:
pull_request_number: ${{ needs.find-pull-request.outputs.number }}
sha: ${{ needs.find-pull-request.outputs.sha }}
31 changes: 31 additions & 0 deletions .github/workflows/trigger-replace-links.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: trigger-replace-links

on:
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: write

steps:
- uses: actions/checkout@v4
- name: Find and Replace Repository Name
uses: jacobtomlinson/gha-find-replace@v3
with:
find: "ProjectPythia/cookbook-template"
replace: "${{ github.repository_owner }}/${{ github.event.repository.name }}"
regex: false
exclude: ".github/workflows/trigger-replace-links.yaml"

- name: Find and Replace Repository ID
uses: jacobtomlinson/gha-find-replace@v3
with:
find: "475509405"
replace: "${{ github.repository_id}}"
regex: false
exclude: ".github/workflows/trigger-replace-links.yaml"

- name: Push changes
uses: stefanzweifel/git-auto-commit-action@v5
136 changes: 136 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
# Default JupyterBook build output dir
_build/

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
notebooks/_build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
pip-wheel-metadata/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
.python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# PEP 582; used by e.g. github.com/David-OConnor/pyflow
__pypackages__/

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# Ephemeral .nfs files
.nfs*
2 changes: 2 additions & 0 deletions .isort.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[settings]
known_third_party =
52 changes: 52 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.5.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-docstring-first
- id: check-json
- id: check-yaml
- id: double-quote-string-fixer

- repo: https://github.com/psf/black
rev: 23.12.1
hooks:
- id: black

- repo: https://github.com/keewis/blackdoc
rev: v0.3.9
hooks:
- id: blackdoc

- repo: https://github.com/PyCQA/flake8
rev: 7.0.0
hooks:
- id: flake8

- repo: https://github.com/asottile/seed-isort-config
rev: v2.2.0
hooks:
- id: seed-isort-config

- repo: https://github.com/PyCQA/isort
rev: 5.13.2
hooks:
- id: isort

- repo: https://github.com/pre-commit/mirrors-prettier
rev: v3.1.0
hooks:
- id: prettier
additional_dependencies: [[email protected]]

- repo: https://github.com/nbQA-dev/nbQA
rev: 1.7.1
hooks:
- id: nbqa-black
additional_dependencies: [black]
- id: nbqa-pyupgrade
additional_dependencies: [pyupgrade]
exclude: foundations/quickstart.ipynb
- id: nbqa-isort
additional_dependencies: [isort]
48 changes: 48 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
cff-version: 1.2.0
message: "If you use this cookbook, please cite it as below."
authors:
# add additional entries for each author -- see https://github.com/citation-file-format/citation-file-format/blob/main/schema-guide.md
- family-names: Rose
given-names: Brian E. J.
orcid: https://orcid.org/0000-0002-9961-3821 # optional
website: https://github.com/brian-rose # optional
affiliation: University at Albany (State University of New York) # optional
- family-names: Kent
given-names: Julia
orcid: https://orcid.org/0000-0002-5611-8986
website: https://github.com/jukent
affiliation: UCAR/NCAR
- family-names: Tyle
given-names: Kevin
orcid: https://orcid.org/0000-0001-5249-9665
website: https://github.com/ktyle
affiliation: University at Albany (State University of New York)
- family-names: Clyne
given-names: John
orcid: https://orcid.org/0000-0003-2788-9017
website: https://github.com/clyne
affiliation: UCAR/NCAR
- family-names: Camron
given-names: Drew
orcid: https://orcid.org/0000-0001-7246-6502
website: https://github.com/dcamron
affiliation: UCAR/Unidata
- family-names: Grover
given-names: Maxwell
orcid: https://orcid.org/0000-0002-0370-8974
website: https://github.com/mgrover1
affiliation: Argonne National Laboratory
- family-names: Ford
given-names: Robert R.
orcid: https://orcid.org/0000-0001-5483-4965
website: https://github.com/r-ford
affiliation: University at Albany (State University of New York)
- family-names: Paul
given-names: Kevin
orcid: https://orcid.org/0000-0001-8155-8038
website: https://github.com/kmpaul
affiliation: NVIDIA
- name: "Cookbook Template contributors" # use the 'name' field to acknowledge organizations
website: "https://github.com/ProjectPythia/cookbook-template/graphs/contributors"
title: "Cookbook Template"
abstract: "A sample cookbook description."
Loading

0 comments on commit 5e24cca

Please sign in to comment.