Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

171 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This project was build on Storybook template provided by Chroma Software Inc.

Project Instructions

Getting Started

To set up the project, first install the necessary dependencies:

npm install

Project Structure

The different pages of the website are located in the following files:

  • src/FormPage.jsx
  • src/SpawnPending.jsx
  • src/NotRunning.jsx
  • src/LoginPage.jsx
  • src/HomePage.jsx

Running the Project in Development Mode

You can run individual pages in a development environment using the following commands:

  • For FormPage.jsx:
    npm run dev:form
  • For SpawnPending.jsx:
    npm run dev:spawn_p
  • For LoginPage.jsx:
    npm run dev:login
  • For NotRunning.jsx:
    npm run dev:not_running
  • For HomePage.jsx:
    npm run dev:home

Component Development with Storybook

For component development, you can start a Storybook environment:

npm run storybook

Building the Project

To build the project for production, use the following command:

npm run build:{build_target}

Creating ConfigMaps

If you want to create ConfigMaps from the built project, use the create_config_maps.sh script. Before running it, make sure it is executable:

chmod +x create_config_maps.sh

Then execute the script with the target namespace:

./create_config_maps.sh --target {build_target} --namespace {namespace}

Options:

  • --target {build_target} — one of hub, cas, c9088, elter-ri (default: hub), builds into dist_{build_target}/
  • --namespace {namespace} — Kubernetes namespace to apply the ConfigMaps to (required)
  • --skip-build — reuse an existing dist_{build_target}/ instead of building
  • --local — generate ConfigMap YAML files locally (static-files*.yaml, git-ignored) instead of applying them to a Kubernetes cluster
  • --dry-run — print the kubectl commands without applying any changes
  • --help — show usage

Example:

./create_config_maps.sh --target cas --namespace jupyterhub-cas-ns

Creating interface for new instance

To create a new interface for a hub, feel free to copy the code of other hubs and add/remove features from *Page.jsx files. When making a new FormPage.jsx, be careful to change the form configuration; for example, a normal hub uses persistent home, but others use only delhome. To change FormPage docker images data, make a new data folder with formData.js where you define the images that should be used. Also, if the hub has auto-fill with the last form data, please change the gatherFormData script. After completing the interface, make sure to update package.json with scripts for this instance. Update the create_config_maps.sh as well to accommodate the new instance.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages