Skip to content

Commit 270b569

Browse files
authored
Initial commit
0 parents  commit 270b569

123 files changed

Lines changed: 5048 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: build-and-push-jupyterlab-image
2+
3+
on:
4+
workflow_dispatch: # This allows you to manually trigger the action from GitHub UI.
5+
6+
jobs:
7+
8+
build:
9+
runs-on: ubuntu-latest
10+
11+
steps:
12+
13+
- name: Checkout
14+
uses: actions/checkout@v4
15+
16+
- name: Set up Docker Buildx
17+
id: buildx
18+
uses: docker/setup-buildx-action@v3
19+
20+
- name: Login to dockerhub
21+
uses: docker/login-action@v3
22+
with:
23+
username: ${{ secrets.DOCKERHUB_USERNAME }}
24+
password: ${{ secrets.DOCKERHUB_PASSWORD }}
25+
26+
- name: Get lowercase repo name (for dynamic tags)
27+
id: repo_name
28+
run: |
29+
lowercase_name=$(echo ${{ github.event.repository.name }} | tr '[:upper:]' '[:lower:]')
30+
echo "repo_name=${lowercase_name}" >> "$GITHUB_OUTPUT"
31+
32+
- name: Build and push latest
33+
id: docker_build_jupyterlab
34+
uses: docker/build-push-action@v5
35+
with:
36+
context: containers/jupyterlab
37+
file: containers/jupyterlab/Dockerfile
38+
builder: ${{ steps.buildx.outputs.name }}
39+
push: true
40+
tags: |
41+
esiil/${{ steps.repo_name.outputs.repo_name }}_jupyterlab:latest
42+
43+
- name: Image digest
44+
run: echo ${{ steps.docker_build_jupyterlab.outputs.digest }}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Sync with Template Repository
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
sync_template:
8+
runs-on: ubuntu-latest
9+
10+
steps:
11+
- name: Checkout main repository
12+
uses: actions/checkout@v4
13+
14+
- name: Configure Git for merge
15+
run: |
16+
git config --global user.name "github-actions"
17+
git config --global user.email "actions@users.noreply.github.com"
18+
19+
- name: Fetch template repository
20+
run: git fetch --no-tags --no-recurse-submodules https://github.com/CU-ESIIL/Working_group_OASIS.git +refs/heads/*:refs/remotes/template/*
21+
22+
- name: Merge changes from template repository
23+
run: |
24+
git merge --no-commit --no-ff --allow-unrelated-histories template/main || true
25+
git checkout --ours .
26+
git add .
27+
28+
- name: Commit changes
29+
run: git commit -am "Merge changes from template repository"
30+
31+
- name: Push changes
32+
uses: ad-m/github-push-action@v0.6.0
33+
with:
34+
github_token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/pages.yml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Deploy MkDocs site to GitHub Pages
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
pages: write
12+
id-token: write
13+
14+
concurrency:
15+
group: pages
16+
cancel-in-progress: true
17+
18+
jobs:
19+
deploy:
20+
runs-on: ubuntu-latest
21+
environment:
22+
name: github-pages
23+
url: ${{ steps.deployment.outputs.page_url }}
24+
steps:
25+
- name: Checkout repository
26+
uses: actions/checkout@v4
27+
28+
- name: Set up Python
29+
uses: actions/setup-python@v5
30+
with:
31+
python-version: '3.11'
32+
33+
- name: Install dependencies
34+
run: |
35+
python -m pip install --upgrade pip
36+
if [ -f requirements.txt ]; then
37+
python -m pip install -r requirements.txt
38+
else
39+
python -m pip install mkdocs
40+
fi
41+
42+
- name: Build MkDocs site
43+
run: mkdocs build --strict --clean --site-dir dist
44+
45+
- name: Configure GitHub Pages
46+
uses: actions/configure-pages@v5
47+
with:
48+
enablement: true
49+
continue-on-error: true
50+
51+
- name: Verify Pages is enabled
52+
env:
53+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
54+
run: |
55+
set -euo pipefail
56+
api_url="https://api.github.com/repos/${GITHUB_REPOSITORY}/pages"
57+
status="$(curl -sS -H "Authorization: Bearer ${GITHUB_TOKEN}" -H "Accept: application/vnd.github+json" -o /tmp/pages-response.json -w "%{http_code}" "${api_url}")"
58+
if [ "${status}" = "404" ]; then
59+
echo "::error::Enable GitHub Pages: Settings → Pages → Source = GitHub Actions and Settings → Actions → Workflow permissions = Read and write."
60+
exit 1
61+
elif [ "${status}" != "200" ]; then
62+
echo "::error::Failed to verify GitHub Pages (HTTP ${status})."
63+
cat /tmp/pages-response.json
64+
exit 1
65+
fi
66+
67+
- name: Upload Pages artifact
68+
uses: actions/upload-pages-artifact@v3
69+
with:
70+
path: ./dist
71+
72+
- name: Deploy to GitHub Pages
73+
id: deployment
74+
uses: actions/deploy-pages@v4

.gitignore

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# History files
2+
.Rhistory
3+
.Rapp.history
4+
5+
# Session Data files
6+
.RData
7+
.RDataTmp
8+
9+
# User-specific files
10+
.Ruserdata
11+
12+
# Example code in package build process
13+
*-Ex.R
14+
15+
# Output files from R CMD build
16+
/*.tar.gz
17+
18+
# Output files from R CMD check
19+
/*.Rcheck/
20+
21+
# RStudio files
22+
.Rproj.user/
23+
24+
# produced vignettes
25+
vignettes/*.html
26+
vignettes/*.pdf
27+
28+
# OAuth2 token, see https://github.com/hadley/httr/releases/tag/v0.3
29+
.httr-oauth
30+
31+
# knitr and R markdown default cache directories
32+
*_cache/
33+
/cache/
34+
35+
# Temporary files created by R markdown
36+
*.utf8.md
37+
*.knit.md
38+
39+
# R Environment Variables
40+
.Renviron
41+
42+
43+
44+
# translation temp files
45+
po/*~
46+
47+
# RStudio Connect folder
48+
rsconnect/
49+
50+
# macOS
51+
.DS_Store

CITATION.cff

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
cff-version: 1.2.0
2+
message: "If you use this repository, please cite it as below."
3+
title: "Project Group OASIS"
4+
version: "1.0.0"
5+
doi: 10.5281/zenodo.11166898
6+
date-released: 2025-09-10
7+
authors:
8+
- family-names: Tuff
9+
given-names: Ty

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2023 Environmental Data Science Innovation and Inclusion Lab (ESIIL)
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

0 commit comments

Comments
 (0)