From 66caae31e1132c5ff4b6851d142015b91f30cb35 Mon Sep 17 00:00:00 2001 From: Ryan Lovett Date: Sat, 10 Aug 2024 23:35:09 -0700 Subject: [PATCH 1/2] Fix info in authentication. --- docs/users/authentication.qmd | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/docs/users/authentication.qmd b/docs/users/authentication.qmd index e24d3aec1..4191959a5 100644 --- a/docs/users/authentication.qmd +++ b/docs/users/authentication.qmd @@ -2,31 +2,28 @@ title: User Authentication --- -UC Berkeley uses a [Canvas](https://www.instructure.com/canvas/) instance, -called [bcourses.berkeley.edu](https://bcourses.berkeley.edu). Almost -all our hubs use this for authentication, although [not all yet](https://github.com/berkeley-dsep-infra/datahub/issues/1574). +Most of our hubs use a [Canvas](https://www.instructure.com/canvas/) instance, +[bcourses.berkeley.edu](https://bcourses.berkeley.edu), for authentication. The hubs not using `CanvasOAuthenticator` are edx (`LTI1Authenticator`), highschool (`GoogleOAuthenticator`), and workshop (`dummy`). -## Who has access? +## Authorization -Anyone who can log in to bcourses can log into our JupyterHubs. This -includes all berkeley affiliates. If you have a working berkeley.edu -email account, you can most likely log in to bcourses, and hence to +Anyone who can log in to bCourses can log into our Canvas-based hubs. This +includes all Berkeley affiliates. If you have a working berkeley.edu +email account, you can most likely log in to bCourses, and hence to our JupyterHubs. Students have access for 9 months after they graduate. If they have an incomplete, they have 13 months of access instead. -## Non-berkeley affiliates +## Non-Berkeley affiliates If someone who doesn't have a berkeley.edu account wants to use -the JupyterHubs, they need to get a [CalNet Sponsored Guest -account](https://calnetweb.berkeley.edu/calnet-departments/calnet-sponsored-guests) -This gives people access to [bcourses](https://bcourses.berkeley.edu), -and hence to all the JupyterHubs. +the JupyterHubs, they need to obtain a [CalNet Sponsored Guest +account](https://calnetweb.berkeley.edu/calnet-departments/calnet-sponsored-guests) and get added to a bCourses course. ## Troubleshooting -If you can log in to [bcourses](https://bcourses.berkeley.edu) but +If you can log in to [bCourses](https://bcourses.berkeley.edu) but not to any of the JupyterHubs, please contact us. -If you can not log in to bcourses, please [contact bcourses support](https://dls.berkeley.edu/services/bcourses-0) +If you can not log in to bCourses, please [contact bCourses support](https://dls.berkeley.edu/services/bcourses-0). From 2bf0a31e14df24c9b62efaaf3803d71338f77489 Mon Sep 17 00:00:00 2001 From: Ryan Lovett Date: Sun, 11 Aug 2024 00:37:24 -0700 Subject: [PATCH 2/2] Use listing for hubs. --- docs/_quarto.yml | 4 - docs/admins/deployments/datahub.qmd | 22 ----- docs/admins/deployments/index.qmd | 3 - docs/users/hubs.qmd | 81 +++---------------- docs/users/hubs/data100.qmd | 17 ++++ docs/users/hubs/data102.qmd | 14 ++++ docs/users/hubs/datahub.qmd | 20 +++++ docs/users/hubs/edx.qmd | 15 ++++ docs/users/hubs/prob140.qmd | 11 +++ docs/users/hubs/r.qmd | 10 +++ docs/users/hubs/shiny.qmd | 9 +++ .../deployments => users/hubs}/stat159.qmd | 13 ++- docs/users/hubs/stat20.qmd | 12 +++ 13 files changed, 127 insertions(+), 104 deletions(-) delete mode 100644 docs/admins/deployments/datahub.qmd delete mode 100644 docs/admins/deployments/index.qmd create mode 100644 docs/users/hubs/data100.qmd create mode 100644 docs/users/hubs/data102.qmd create mode 100644 docs/users/hubs/datahub.qmd create mode 100644 docs/users/hubs/edx.qmd create mode 100644 docs/users/hubs/prob140.qmd create mode 100644 docs/users/hubs/r.qmd create mode 100644 docs/users/hubs/shiny.qmd rename docs/{admins/deployments => users/hubs}/stat159.qmd (91%) create mode 100644 docs/users/hubs/stat20.qmd diff --git a/docs/_quarto.yml b/docs/_quarto.yml index 26f9a6322..af1bae28d 100644 --- a/docs/_quarto.yml +++ b/docs/_quarto.yml @@ -59,10 +59,6 @@ website: - admins/howto/clusterswitch.qmd - admins/howto/github-token.qmd - admins/howto/google-sheets.qmd - - section: "Hub Deployments" - contents: - - admins/deployments/datahub.qmd - - admins/deployments/stat159.qmd - section: "Policy" contents: - policy/create_policy.qmd diff --git a/docs/admins/deployments/datahub.qmd b/docs/admins/deployments/datahub.qmd deleted file mode 100644 index f0f4e3aea..000000000 --- a/docs/admins/deployments/datahub.qmd +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: DataHub ---- - -datahub.berkeley.edu provides standard computing environment to many -foundational courses across diverse disciplines. - -## Image - -The datahub image contains both Python and R environments. A user can -create jupyter notebooks utilizing either Python or R, or can run -RStudio using R or Python. - -The image is currently not based on repo2docker. - -## Resources - -A handful of courses have been granted elevated memory limits within the -hub configuration. - -CDSS staff and a small number of instructors have been given -administrative privileges. diff --git a/docs/admins/deployments/index.qmd b/docs/admins/deployments/index.qmd deleted file mode 100644 index d0bc7e663..000000000 --- a/docs/admins/deployments/index.qmd +++ /dev/null @@ -1,3 +0,0 @@ ---- -title: Hub Deployments ---- diff --git a/docs/users/hubs.qmd b/docs/users/hubs.qmd index e7d558ad1..db0de43f4 100644 --- a/docs/users/hubs.qmd +++ b/docs/users/hubs.qmd @@ -1,70 +1,15 @@ --- -title: JupyterHubs in this repository +title: JupyterHub Deployments +listing: + categories: true + contents: + - "hubs/datahub.qmd" + - "hubs/data100.qmd" + - "hubs/data102.qmd" + - "hubs/edx.qmd" + - "hubs/prob140.qmd" + - "hubs/r.qmd" + - "hubs/shiny.qmd" + - "hubs/stat159.qmd" + - "hubs/stat20.qmd" --- - -## DataHub - -[datahub.berkeley.edu](https://datahub.berkeley.edu) is the \'main\' -JupyterHub for use on UC Berkeley campus. It\'s the largest and most -active hub. It has many Python & R packages installed. - -It runs on [Google Cloud Platform](https://cloud.google.com) in the -`ucb-datahub-2018` project. You can see all config for it under -`deployments/datahub`. - -### Classes - -- The big [data8](http://data8.org/) class. -- Active [connector - courses](https://data.berkeley.edu/education/connectors) -- [Data Science Modules](https://data.berkeley.edu/education/modules) -- [Astro - 128/256](https://astro.berkeley.edu/course-information/3958209-astronomy-data-science-laboratory) - -This hub is also the \'default\' when folks wanna use a hub for a short -period of time for any reason without super specific requirements. - -## Prob140 Hub - -A hub specifically for [prob140](http://prob140.org/). Some of the admin -users on `hubs/datahub`{.interpreted-text role="ref"} are students in -prob140 - this would allow them to see the work of other prob140 -students. Hence, this hub is separate until JupyterHub gains features -around restricting admin use. - -It runs on [Google Cloud Platform](https://cloud.google.com) in the -`ucb-datahub-2018` project. You can see all config for it under -`deployments/prob140`. - -## Data 100 - -This hub is for [Data 100](http://www.ds100.org/) which has a unique -user and grading environment. It runs on [Google Cloud -Platform](https://cloud.google.com) in the `ucb-datahub-2018` account. -You can see all config for it under `deployments/data100`. - -Data100 also has shared folders between staff (professors and GSIs) and -students. Staff, assuming they have been added as admins in -`config/common.yaml`, can see a `shared` and a `shared-readwrite` -folder. Students can only see the `shared` folder, which is read-only. -Anything that gets put in `shared-readwrite` is automatically viewable -in `shared`, but as read-only files. The purpose of this is to be able -to share large data files instead of having one per student. - -## Data 102 - -Data 102 runs on [Google Cloud Platform](https://cloud.google.com) in the -`ucb-datahub-2018` project. You can see all config for it under -`deployments/data102`. - -## Data8X Hub - -A hub for the [data8x course on -EdX](https://www.edx.org/professional-certificate/berkeleyx-foundations-of-data-science). -This hub is open to use by anyone in the world, using [LTI -Authentication](https://github.com/jupyterhub/ltiauthenticator) to -provide login capability from inside EdX. - -It runs on [Google Cloud Platform](https://cloud.google.com) in the -`data8x-scratch` project. You can see all config for it under -`deployments/data8x`. diff --git a/docs/users/hubs/data100.qmd b/docs/users/hubs/data100.qmd new file mode 100644 index 000000000..881f0db46 --- /dev/null +++ b/docs/users/hubs/data100.qmd @@ -0,0 +1,17 @@ +--- +title: Data 100 +categories: + - jupyterlab + - otter-grader + - shared-folders +--- + +This hub is for [Data 100](http://www.ds100.org/) which has a unique +user and grading environment. + +Data100 has shared folders between staff (professors and GSIs) and +students. Course staff can see a `shared` and a `shared-readwrite` +folder. Students can only see the `shared` folder, which is read-only. +Anything that gets put in `shared-readwrite` is automatically viewable +in `shared`, but as read-only files. The purpose of this is to be able +to share large data files instead of having one per student. diff --git a/docs/users/hubs/data102.qmd b/docs/users/hubs/data102.qmd new file mode 100644 index 000000000..9364ff950 --- /dev/null +++ b/docs/users/hubs/data102.qmd @@ -0,0 +1,14 @@ +--- +title: Data 102 +categories: + - jupyterlab + - otter-grader + - shared-folders +--- + +This hub is for [Data 102](http://www.ds102.org/) which has a unique +user and grading environment. + +Data 102 runs on [Google Cloud Platform](https://cloud.google.com) in the +`ucb-datahub-2018` project. You can see all config for it under +`deployments/data102`. diff --git a/docs/users/hubs/datahub.qmd b/docs/users/hubs/datahub.qmd new file mode 100644 index 000000000..4f4d20fff --- /dev/null +++ b/docs/users/hubs/datahub.qmd @@ -0,0 +1,20 @@ +--- +title: DataHub +categories: + - jupyterlab + - r + - vscode +aliases: + - ../admins/deployments/datahub.html +--- + +[datahub.berkeley.edu](https://datahub.berkeley.edu) is the *main* JupyterHub +for use at UC Berkeley. It is the largest and most active hub, and provides a +standard computing environment to many foundational courses across diverse +disciplines. + +## Image + +The datahub image contains both Python and R environments. A user can +create jupyter notebooks utilizing either Python or R, or can run +RStudio using R or Python. diff --git a/docs/users/hubs/edx.qmd b/docs/users/hubs/edx.qmd new file mode 100644 index 000000000..7ddb771dc --- /dev/null +++ b/docs/users/hubs/edx.qmd @@ -0,0 +1,15 @@ +--- +title: Data 8X +categories: + - jupyterlab + - ltiauthenticator +--- + +This hub is for the [data8x course on EdX](https://www.edx.org/professional-certificate/berkeleyx-foundations-of-data-science). +It is open to use by anyone in the world, using [LTI +Authentication](https://github.com/jupyterhub/ltiauthenticator) to +provide login capability from inside EdX. + +It runs on [Google Cloud Platform](https://cloud.google.com) in the +`data8x-scratch` project. You can see all config for it under +`deployments/data8x`. diff --git a/docs/users/hubs/prob140.qmd b/docs/users/hubs/prob140.qmd new file mode 100644 index 000000000..a8e7101c8 --- /dev/null +++ b/docs/users/hubs/prob140.qmd @@ -0,0 +1,11 @@ +--- +title: Prob 140 +categories: + - jupyterlab + - vscode +--- + +Prob 140 hub exists to isolate student files from the main hub. Some students +in this course might be course staff in another course, or vice versa, so we +isolate their home directories through this hub. It uses the same singleuser +docker image as the main hub. diff --git a/docs/users/hubs/r.qmd b/docs/users/hubs/r.qmd new file mode 100644 index 000000000..ff2b3943e --- /dev/null +++ b/docs/users/hubs/r.qmd @@ -0,0 +1,10 @@ +--- +title: R +categories: + - jupyterlab + - r + - rstudio + - vscode +--- + +[r.datahub.berkeley.edu](https://r.datahub.berkeley.edu) uses the same user environment as the main datahub, however it launches RStudio by default instead of JupyterLab. As with the main datahub, people can use R or Python in either authoring environment. diff --git a/docs/users/hubs/shiny.qmd b/docs/users/hubs/shiny.qmd new file mode 100644 index 000000000..88a97b6ec --- /dev/null +++ b/docs/users/hubs/shiny.qmd @@ -0,0 +1,9 @@ +--- +title: Shiny +categories: + - r + - rstudio + - shiny +--- + +[r.datahub.berkeley.edu](https://r.datahub.berkeley.edu) uses the same user environment as the main datahub, however it launches RStudio by default instead of JupyterLab. As with the main datahub, people can use R or Python in either authoring environment. diff --git a/docs/admins/deployments/stat159.qmd b/docs/users/hubs/stat159.qmd similarity index 91% rename from docs/admins/deployments/stat159.qmd rename to docs/users/hubs/stat159.qmd index f49ac96ac..38771acca 100644 --- a/docs/admins/deployments/stat159.qmd +++ b/docs/users/hubs/stat159.qmd @@ -1,5 +1,11 @@ --- title: Stat 159 +categories: + - jupyterlab + - rtc + - vscode +aliases: + - ../admins/deployments/stat159.html --- stat159.datahub.berkeley.edu is a course-specific hub for Stat 159 as @@ -71,10 +77,3 @@ CanvasAuthenticator can remain in charge of managing groups. This will be important for the extremely large courses. It will also be beneficial in that resource allocation can be performed more easily through group affiliations and group properties. - -## Historical Information - -The image has been periodically shared with data100 for when Fernando -has taught both. Going forward, it is probably best to keep them -separate and optionally kept in sync. We don\'t want changes in one -course to come as a surprise to the other. diff --git a/docs/users/hubs/stat20.qmd b/docs/users/hubs/stat20.qmd new file mode 100644 index 000000000..60a43c201 --- /dev/null +++ b/docs/users/hubs/stat20.qmd @@ -0,0 +1,12 @@ +--- +title: Stat 20 +categories: + - jupyterlab + - quarto + - rstudio + - shiny +--- + +stat20.datahub.berkeley.edu is a course-specific hub for Stat 20 as +designed by Andrew Bray. It uses RStudio as the primary users interface +and students can use Quarto to author documents and Shiny to create web applications.