From b849530d5a3da6ab4d034fc3d76b265eb949267f Mon Sep 17 00:00:00 2001 From: Kevin Tyle Date: Sat, 13 Jul 2024 15:24:08 -0700 Subject: [PATCH] MySTification --- .github/workflows/deploy.yml | 46 ++++++++++++++++++++++++++++++++++++ Containerfile | 27 --------------------- environment.yml | 5 ++-- myst.yml | 34 ++++++++++++++++++++++++++ 4 files changed, 83 insertions(+), 29 deletions(-) create mode 100644 .github/workflows/deploy.yml delete mode 100644 Containerfile create mode 100644 myst.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..de0c122 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,46 @@ +# This file was created automatically with `myst init --gh-pages` 🪄 💚 + +name: MyST GitHub Pages Deploy +on: + push: + # Runs on pushes targeting the default branch + branches: [main] +env: + # `BASE_URL` determines the website is served from, including CSS & JS assets + # You may need to change this to `BASE_URL: ''` + BASE_URL: /${{ github.event.repository.name }} + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: 'pages' + cancel-in-progress: false +jobs: + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Setup Pages + uses: actions/configure-pages@v3 + - uses: actions/setup-node@v4 + with: + node-version: 18.x + - name: Install MyST Markdown + run: npm install -g mystmd + - name: Build HTML Assets + run: myst build --html + - name: Upload artifact + uses: actions/upload-pages-artifact@v1 + with: + path: './_build/html' + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v2 diff --git a/Containerfile b/Containerfile deleted file mode 100644 index 1537553..0000000 --- a/Containerfile +++ /dev/null @@ -1,27 +0,0 @@ -# Use an official Python runtime as a base image -FROM docker.io/mambaorg/micromamba:latest - -USER root - -RUN apt-get update && apt-get install -y git-all - -# Set the working directory in the container to /app -WORKDIR /home/mambauser/app - -# Copy the current directory contents into the container at /usr/src/app -RUN git clone https://github.com/NicholasCote/ERA5_interactive-cookbook-ncote.git - -# Install any needed packages specified in requirements.yml -RUN micromamba env create -f ERA5_interactive-cookbook-ncote/environment.yml - -RUN mv ERA5_interactive-cookbook-ncote/notebooks/04_dashboard.ipynb . - -RUN rm -r ERA5_interactive-cookbook-ncote/ - -# Activate the environment by providing ENV_NAME as an environment variable at runtime -# Make port bokeh application port to the world outside this container -EXPOSE 5006 - -USER mambauser - -CMD ["panel", "serve", "04_dashboard.ipynb", "--allow-websocket-origin=*", "--autoreload"] \ No newline at end of file diff --git a/environment.yml b/environment.yml index da6e9e0..d41496e 100644 --- a/environment.yml +++ b/environment.yml @@ -2,7 +2,7 @@ name: ERA5_interactive channels: - conda-forge dependencies: - - python<3.12 + - python - jupyter-book - jupyterlab - jupyter_server @@ -24,4 +24,5 @@ dependencies: - sphinx-pythia-theme - hvplot - spatialpandas - - watchfiles \ No newline at end of file + - watchfiles + - mystmd diff --git a/myst.yml b/myst.yml new file mode 100644 index 0000000..229a8eb --- /dev/null +++ b/myst.yml @@ -0,0 +1,34 @@ +# See docs at: https://mystmd.org/guide/frontmatter +version: 1 +extends: + - https://raw.githubusercontent.com/projectpythia-mystmd/pythia-config/main/pythia.yml +project: + id: c598479d-c383-4e18-a8a5-b1840fefbec8 + # title: + # description: + # keywords: [] + # authors: [] + github: https://github.com/projectpythia-mystmd/ERA5_interactive-cookbook + # To autogenerate a Table of Contents, run "myst init --write-toc" + toc: + # Auto-generated by `myst init --write-toc` + - file: README.md + - title: Preamble + children: + - file: notebooks/how-to-cite.md + - title: Visualization Notebooks + children: + - file: notebooks/01BasicVisualization.ipynb + - file: notebooks/02InteractiveVisualization.ipynb + - file: notebooks/03_hvplot.ipynb + - file: notebooks/04_dashboard.ipynb + - title: Preprocessing Notebooks for NCAR RDA + children: + - file: notebooks/05_data_preprocessing.ipynb + - file: notebooks/06_era5_anomaly.ipynb + +site: + template: book-theme + # options: + # favicon: favicon.ico + # logo: site_logo.png