Skip to content

Commit

Permalink
Merge pull request #55 from annefou/jupyter-book
Browse files Browse the repository at this point in the history
add generation of jupyter book
  • Loading branch information
clausmichele authored Sep 26, 2024
2 parents 39009be + 871cc83 commit 5c9e349
Show file tree
Hide file tree
Showing 9 changed files with 156 additions and 4 deletions.
40 changes: 40 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: deploy

on:
# Trigger the workflow on push to main branch and tutorial path
push:
branches:
- main
paths:
- lectures/**

# This job installs dependencies, build the jupyter notebook, and pushes it to `render`, a new `branch`
jobs:
build:
name: Setup
runs-on: "ubuntu-latest"
defaults:
run:
shell: bash -l {0}
steps:
- uses: actions/checkout@v2
- name: Set up conda and dependencies
uses: mamba-org/setup-micromamba@v1
with:
environment-file: ./environment.yml
environment-name: cubes-and-clouds
condarc: |
channels:
- conda-forge
# Build the book
- name: Build the jupyter book
run: |
jupyter-book build lectures
# Deploy the book's HTML to gh-pages branch
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
publish_branch: gh-pages
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: lectures/_build/html
force_orphan: true
5 changes: 4 additions & 1 deletion environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ channels:
- defaults
- conda-forge
dependencies:
- python=3.11
- numpy
- pandas
- matplotlib
Expand All @@ -20,7 +21,9 @@ dependencies:
- pystac
- pip
- pip:
- jupyter-book
- sphinx-exercise
- rio_stac
- scikit-learn
- openeo-processes-dask[implementations]
- openeo-pg-parser-networkx
- openeo-pg-parser-networkx
2 changes: 1 addition & 1 deletion lectures/1.3_openscience/1.3.3_openscienceineo.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ Howard Butler, a director of the Open-Source Geospatial Foundation, said about t
- **Code:** Workflows and Code can easily be shared on EO Cloud Platforms. There are openly available tutorial notebooks. Workflows can be shared as user defined processes and be reused by the community. There are user forums that share solutions and snippets. OpenEO, a standardized processing API for EO in the cloud, allows code to be portable between different cloud platforms. This increases reprodicibility, collaboration and prevents vendor locks.
- **To Do: Image Slider:** openEO Platform Forum, Tutorial Notebooks Microsoft Planetary Computer, User Defined Processes openEO,

- **Results:** There are multiple ways to share results created in EO cloud platforms. Ideally they can be ingested into the platform and be made available as collections for other users directly upon creation. If the result comes with appropiate metadata (e.g. according to the STAC specification) they can easily be registered in publicly avialable STAC Catalogues. Cloud Native Data Formats (described in more detail in lesson [2.4 Formats and Performance](2.4_formats_and_performance)), like cloud optimized geotiff, are accessible via https requests. So instead of sharing a file, only a URL pointing to the file is shared.
- **Results:** There are multiple ways to share results created in EO cloud platforms. Ideally they can be ingested into the platform and be made available as collections for other users directly upon creation. If the result comes with appropiate metadata (e.g. according to the STAC specification) they can easily be registered in publicly avialable STAC Catalogues. Cloud Native Data Formats (described in more detail in lesson [2.4 Formats and Performance](../2.4_formats_and_performance/2.4_formats_and_performance.md)), like cloud optimized geotiff, are accessible via https requests. So instead of sharing a file, only a URL pointing to the file is shared.
- **To Do: Image Slider**: Collection in a Platform, STAC Catalogue, Link to a COG

- **Publication:** If a publication is built on top of results produced in an EO cloud platform, the results and code can easily be linked to the publication in one of the forms described aboved. For example, you can publish your openEO process graph and link to it, and provide a link to a STAC Catalogue where the results are accessible.
Expand Down
4 changes: 2 additions & 2 deletions lectures/2.3_data_access/2.3_data_access.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
## Access EO Data from the Cloud
# Access EO Data from the Cloud

Using a cloud provider for accessing data, and in this specific scenario Earth Observation data, could improve your productivity a lot. To get the most out of it, we will provide you some important insights.

### Learning objectives
## Learning objectives

- In this lecture you will learn the usage and peculiarities of the main data operators commonly available on cloud platforms like:
- Data loading
Expand Down
8 changes: 8 additions & 0 deletions lectures/9.9_master_asi_conae/test/s1.ipynb
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
{
"cells": [
{
"cell_type": "markdown",
"id": "1addb5d4-3779-465d-916c-2ecdc3e6acf0",
"metadata": {},
"source": [
"# S1"
]
},
{
"cell_type": "code",
"execution_count": 1,
Expand Down
37 changes: 37 additions & 0 deletions lectures/_config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#######################################################################################
# A default configuration that will be loaded for all jupyter books
# See the documentation for help and more options:
# https://jupyterbook.org/customize/config.html

#######################################################################################
# Book settings
title : Cubes & Clouds - Cloud Native Open Data Sciences for Earth Observation # The title of the book. Will be placed in the left navbar.
author : ESA # The author of the book
copyright : "2024" # Copyright year to be placed in the footer
logo : logo.png # A path to the book logo

# Force re-execution of notebooks on each build.
# See https://jupyterbook.org/content/execute.html
execute:
execute_notebooks: false

# Define the name of the latex output file for PDF builds
latex:
latex_documents:
targetname: book.tex

# Add a bibtex file so that we can create citations
bibtex_bibfiles:
- references.bib

# Information about where the book exists on the web
repository:
url: https://github.com/EO-College/cubes-and-clouds # Online location of your book
path_to_book: lectures # Optional path to your book, relative to the repository root
branch: main # Which branch of the repository should be used when creating links (optional)

# Add GitHub buttons to your book
# See https://jupyterbook.org/customize/config.html#add-a-link-to-your-repository
html:
use_issues_button: true
use_repository_button: true
64 changes: 64 additions & 0 deletions lectures/_toc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
format: jb-book
root: README
parts:
- caption: Setup
chapters:
- file: 0_introduction/0_introduction
- file: 0_introduction/exercises/0_login
- caption: Concepts
chapters:
- file: 1.1_intro_platform/1.1_intro_platform
- file: 1.2_data_cube/1.2_data_cube
- file: 1.3_openscience/1.3.1_openscienceandfair
sections:
- file: 1.3_openscience/1.3.3_openscienceineo
- file: 1.3_openscience/1.3.2_opendataopensource
- caption: Discovery and metadata
chapters:
- file: 2.1_data_discovery/2.1_data_discovery
- file: 2.2_data_properties/2.2_data_properties
- caption: Data access with OpenEO
chapters:
- file: 2.3_data_access/2.3_data_access
sections:
- file: 2.3_data_access/exercises/23_data_access_lazy_loading
- file: 2.3_data_access/exercises/23_data_access_reduce
- file: 2.3_data_access/exercises/23_data_access_filter
- file: 2.3_data_access/exercises/23_data_access_resample
- file: 2.3_data_access/exercises/23_data_access_aggregate
- file: 2.3_data_access/exercises/23_data_access_apply
- caption: Data formats for achieving scalability
chapters:
- file: 2.4_formats_and_performance/2.4_formats_and_performance
- caption: Process & Share
chapters:
- file: 3.1_data_processing/3.1_data_processing
title: Data processing
sections:
- file: 3.1_data_processing/3.1_exercises/31_data_processing
title: Basic EO workflow
- file: 3.1_data_processing/3.1_exercises/_alternatives/31_data_processing_stac
title: EO workflow with STAC
- file: 3.1_data_processing/3.1_exercises/_alternatives/31_data_processing_openEO_Platform
title: EO workflow with openEO
- file: 3.1_data_processing/3.1_exercises/_alternatives/34_data_sharing_aoi_test
title: Data sharing and publishing
- file: 3.2_validation/3.2_validation
title: Validation
sections:
- file: 3.2_validation/3.2_exercises/32_validation
title: Exercise validation
- file: 3.3_data_sharing/3.3_data_sharing
title: Data sharing
sections:
- file: 3.3_data_sharing/3.3_exercises/33_data_sharing
title: Exercise data sharing
- caption: Additional materials
chapters:
- file: 9.9_master_asi_conae/s2_sca
sections:
- file: 9.9_master_asi_conae/test/s1
- file: 9.9_master_asi_conae/test/s2_snowcover_test
- file: 9.9_master_asi_conae/test/test_s1_s3
- file: 9.9_mar_asi_conae/test/test_s1_s3
- file: 9.9_master_asi_conae/test/s3_ndsi
Binary file added lectures/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file added lectures/references.bib
Empty file.

0 comments on commit 5c9e349

Please sign in to comment.