src-jupyter-workshop-template

Template repository for Jupyter workshops on Surf Research Cloud

https://github.com/utrechtuniversity/src-jupyter-workshop-template

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.4%) to scientific vocabulary

Keywords

ansible jupyter python utrecht-university
Last synced: 6 months ago · JSON representation ·

Repository

Template repository for Jupyter workshops on Surf Research Cloud

Basic Info
  • Host: GitHub
  • Owner: UtrechtUniversity
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage:
  • Size: 46.9 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Topics
ansible jupyter python utrecht-university
Created almost 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

Template repository for Jupyter workshops on Surf Research Cloud

DOI Static Badge Static Badge Static Badge

Introduction

This repository is a template for creating a Jupyter workshop set up on the Surf Research Cloud. The repository contains a folder structure to organize the workshop material, a GitHub Actions workflow to automatically compress the workshop material, and an ansible playbook to automatically transfer the workshop material to the digital workspaces on the Surf Research Cloud. An example workshop that uses this template can be found here.

Steps to create a workshop (<60 minutes)

  1. Create a new repository using this template repository.
  2. Add the workshop material to the workshop-material folder.
  3. Update the environment.yml file with the required packages.
  4. Optionally: Update the README.md file with the workshop information.
  5. Create a 'component' and 'catalog item' in the Surf Research Cloud portal, Instructions below.

Deployment

  • Participants of the workshop can be invited to SRAM via email to give them temporary access to the virtual environments.
  • Creating a workspace takes less than 5 minutes per workspace + 15 minutes deployment time.

Repository materials

  • The workshop material can be edited found in the workshop-material folder. It contains the jupyter notebooks as well as the data used for the workshop.
  • The folder playbooks is exclusively dedicated for automated transfer of the course materials to the digital workspaces on SURF Research Cloud. It is automatically updated by the GitHub Actions workflow, so no need to make changes to this folder.
  • The environment.yml file describes the packages that are required to run the notebooks. The file is used to create a python kernel on SURF Research Cloud that has all the packages installed. By default the kernel will be called workshop-kernel unless you choose a different name.
  • The .github folder contains a GitHub Actions workflow that will automatically update the zipped workshop-material.zip whenever there are changes to the workshop-material folder.

python | .gitignore | CITATION.cff | environment.yml | LICENSE | README.md | +---.github | \---workflows | update-course-materials.yml | +---playbooks | | transfer_workshop_material.yml | | | \---roles | \---transfer_workshop_material | \---tasks | main.yml | \---workshop_material +---data | README.md | \---notebooks Intro_Jupyter.ipynb

Creating a component and catalog item in the Surf Research Cloud portal

First make sure that you have an SRAM collaboration for the workshop. For UU researchers, you can request a collaboration by contacting RDM support. Secondly, add yourself to the src_co_developer group in the SRAM collaboration.

Create a component

Follow the instructions here to create a component in the Surf Research Cloud portal. Use the url of your newly created repository as the source code repository. And for Path playbooks/transfer_workshop_material.yml as the playbook path.

Create a catalog item

Follow the instructions here to create a catalog item in the Surf Research Cloud portal. For the components selection, select:

  • SRC-OS
  • SRC-CO
  • SRC-Nginx
  • SRC-External plugin
  • jupyter
  • Custom Packages
  • Shared Working Directory
  • AND your newly created component

IMPORTANT: In Step 6 you need to Overwrite several parameter settings:
- For requirements_file_repo_url and requirements_file_path (both used by the Custom Packages component). Check the instructions for Custom Packages component here and use the url of your newly created repository for requirements_file_repo_url and environment.yml for requirements_file_path.
- For paths (used by Shared Working Directory) fill /scratch

After creating the catalog item, you can now select the catalog item when creating a workspace in the Surf Research Cloud portal. Be aware that in order to use the environment, the user would need to select the workshop-kernel from the kernel dropdown in the Jupyter notebook.

Contact

Owner

  • Name: Utrecht University
  • Login: UtrechtUniversity
  • Kind: organization
  • Email: info.rdm@uu.nl
  • Location: Utrecht, The Netherlands

The central place for managing code and software for Utrecht University researchers and employees

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: >-
  Template repository for Jupyter workshops on Surf Research
  Cloud
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Jelle
    family-names: Treep
    affiliation: Utrecht University
    orcid: 'https://orcid.org/0000-0003-3196-7954'
  - given-names: Garrett
    family-names: Speed
    affiliation: Utrecht University
    orcid: 'https://orcid.org/0000-0002-6074-9684'
  - given-names: Aristoteles
    family-names: Kandylas
    affiliation: Utrecht University
    orcid: 'https://orcid.org/0009-0003-4818-9607'
identifiers:
  - type: doi
    value: 10.5281/zenodo.10034381
    description: Zenodo Publication of Workshop Material
  - type: url
    value: 'https://github.com/UtrechtUniversity/gis-python-power'
    description: Workshop's Dedicated GitHub Repository
repository-code: >-
  https://github.com/UtrechtUniversity/src-jupyter-workshop-template
url: 'https://zenodo.org/records/10034382'
repository: 'https://github.com/UtrechtUniversity/gis-python-power'
abstract: >-
  This repository contains material for setting up a short
  workshop using Jupyter Notebooks and Surf Research Cloud
  infrastructure. In this repository template the option to
  upload and use your own data is also provided.
keywords:
  - python
  - ansible
  - gis
  - jupyter
  - utrecht-university
license: MIT

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 4
  • Total pull requests: 1
  • Average time to close issues: 2 days
  • Average time to close pull requests: less than a minute
  • Total issue authors: 2
  • Total pull request authors: 1
  • Average comments per issue: 1.75
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 4
  • Pull requests: 1
  • Average time to close issues: 2 days
  • Average time to close pull requests: less than a minute
  • Issue authors: 2
  • Pull request authors: 1
  • Average comments per issue: 1.75
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • jelletreep (3)
  • gspeed0689 (1)
Pull Request Authors
  • gspeed0689 (2)
Top Labels
Issue Labels
Pull Request Labels