Skip to content

Commit 8eb09f0

Browse files
authored
Merge branch 'main' into update-roles-permissions
2 parents 8b8d94a + 17d177e commit 8eb09f0

19 files changed

+357
-510
lines changed

.github/ISSUE_TEMPLATE/documentation.yml

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ body:
2828
options:
2929
- label: "This issue is not a question, feature request, RFC, or anything other than a bug report. Please post those things in GitHub Discussions: https://github.com/nebari-dev/nebari/discussions"
3030
required: true
31+
3132
- type: textarea
3233
validations:
3334
required: true
@@ -37,19 +38,6 @@ body:
3738
What problem(s) did you run into that caused you to request a fix to the documentation or additional
3839
documentation? What questions do you think we should answer?
3940
40-
- type: textarea
41-
validations:
42-
required: true
43-
attributes:
44-
label: Steps to Resolve this Issue
45-
description: |
46-
How can the problem be solved? Are there any additional steps required? Do any other pages need to be updated?
47-
value: |
48-
1.
49-
2.
50-
3.
51-
...
52-
5341
- type: markdown
5442
attributes:
5543
value: >

.github/workflows/test-website.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
run: echo "::set-output name=dir::$(yarn cache dir)"
2020

2121
- name: Cache dependencies 🧪
22-
uses: actions/cache@v2
22+
uses: actions/cache@v4
2323
id: yarn-cache
2424
with:
2525
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}

.pre-commit-config.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ ci:
1717
repos:
1818
# Codespell: Spell checks the code and documentation
1919
- repo: https://github.com/codespell-project/codespell
20-
rev: v2.3.0
20+
rev: v2.4.1
2121
hooks:
2222
- id: codespell
2323
entry: codespell
@@ -36,7 +36,7 @@ repos:
3636

3737
# Misc...
3838
- repo: https://github.com/pre-commit/pre-commit-hooks
39-
rev: v5.0.0
39+
rev: v6.0.0
4040
# ref: https://github.com/pre-commit/pre-commit-hooks#hooks-available
4141
hooks:
4242
# Autoformat: Makes sure files end in a newline and only a newline

docs/.eslintignore

Lines changed: 0 additions & 11 deletions
This file was deleted.

docs/community/introduction.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ We have a:
107107
* weekly 30-minute triage meeting where we triage and follow-up on open issues and PRs.
108108

109109
The embedded Google Calendar below shows the meeting schedules.
110-
Click on the meeting event in the calendar to find more details like the [Google Meet link](https://meet.google.com/ijt-fveo-nvx), or to copy the event to your personal calendar.
110+
Click on the meeting event in the calendar to find more details like the meeting link, or to copy the event to your personal calendar.
111111

112112
<iframe src="https://calendar.google.com/calendar/embed?src=c_47708599e46a75c4d54f087e881a43b57e3245da5d9cb2011695da55d481e69f%40group.calendar.google.com" width="800" height="600" frameborder="0" scrolling="no"></iframe>
113113

docs/community/team-structure.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,19 @@ Nebari follows a nomination process to add new team members[^2], as detailed in
6363
| Contributor | Two or more [contributions](/community/introduction/#how-to-contribute) to Nebari with intention to continue contributing regularly | Any community member (including self) | Any Core team member |
6464
| Core | [Contributors team](#contributors) member with a record of regular, valuable, and high-quality contributions to Nebari for at least one month | Any community member (including self) and one Core team member | Core team makes a [consent-based decision](https://www.sociocracyforall.org/consent-decision-making/) |
6565
| Conduct | Member of the Contributor or Core Team with adequate training to handle CoC reports | Any community member (including self) | Core team makes a [consent-based decision](https://www.sociocracyforall.org/consent-decision-making/) |
66+
67+
Before approving the nomination, Core team members must verify the individual's authenticity and credentials through heuristics like:
68+
69+
- Checking the nominee's GitHub activity history: account creation date, contributions to other open source projects, etc.
70+
- Interactions with the nominee in community meetings or conferences.
71+
- Endorsement from a trusted collaborator.
72+
73+
The Owners team is responsible for updating team memberships on GitHub.
74+
75+
## Leave a team
76+
77+
Contributors and Core team members may choose to leave their respective teams at any time and for any reason. They can communicate their decision either privately to the Core team or publicly on the Nebari discussion forum.
78+
79+
To ensure project security, the Core team can make a [consent-based decision](https://www.sociocracyforall.org/consent-decision-making/) to remove inactive members from any team. In this context, _inactive_ refers to individuals who have not engaged in any Nebari spaces, such as GitHub repositories under the Nebari organization or community meetings, for a period of over two months.
80+
81+
The Owners team is responsible for updating team memberships accordingly and documenting the changes in the Nebari discussion forum. By default, former Core team members are added to the Emeritus team unless they explicitly request otherwise.

docs/docs/explanations/advanced-custom-settings.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ jupyterlab:
155155

156156
- `jupyterlab.preferred_dir` - Sets the default location in which JupyterLab should open the file browser in.
157157

158-
- `jupyterlab.gallery_settings` - Configures [`jupyterlab-gallery`](https://github.com/nebari-dev/jupyterlab-gallery) extension which enables user to clone (and later synchronise) pre-specified repositories.
158+
- `jupyterlab.gallery_settings` - Configures [`jupyterlab-gallery`](https://github.com/nebari-dev/jupyterlab-gallery) extension which enables user to clone (and later synchronise) pre-specified repositories. See [How to set up a Git Repository via JupyterLab-Gallery](../how-tos/jupyter-gallery) for more detailed information.
159159

160160
```yaml
161161
jupyterlab:

docs/docs/faq.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,25 @@ google_cloud_platform:
7878
7979
##### Amazon Web Services
8080
81-
Spot instances aren't supported at this moment.
81+
```yaml
82+
amazon_web_services:
83+
kubernetes_version: '1.31'
84+
region: us-east-2
85+
availability_zones:
86+
- us-east-2a
87+
- us-east-2b
88+
node_groups:
89+
# ...
90+
spot-instance-group:
91+
instance: m5.2xlarge
92+
min_nodes: 1
93+
max_nodes: 1
94+
taints:
95+
gpu: false
96+
single_subnet: false
97+
spot: true
98+
permissions_boundary:
99+
```
82100
83101
##### Azure
84102
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
---
2+
title: Share Git Repository via JupyterLab-Gallery
3+
description: Share files or tutorials with your team
4+
---
5+
6+
# How to set up a Git Repository via JupyterLab-Gallery
7+
8+
[JupyterLab-Gallery ](https://github.com/nebari-dev/jupyterlab-gallery) is a JupyterLab plugin
9+
that allows users to share a Git Repository. JupyterLab users are presented with a tile in
10+
the JupyterLab launch screen. Users can choose to download the Exhibit.
11+
12+
By default, if no JupyterLab-Gallery items are added to the config, users will not see this section
13+
in the JupyterLab Launcher.
14+
15+
This feature was added to Nebari in the 2024.6.1 release.
16+
17+
## Configure JupyterLb-Gallery
18+
19+
In Nebari, the JupyterLab-Gallery configuration is set in the Nebari configuration, `nebari-config.yaml`.
20+
21+
The configuration is set under the `jupyterlab` section under the subsection `gallery_settings`.
22+
Users may set a title for the Gallery section of the Launcher screen and a destination (i.e. folder)
23+
for the location of the cloned repos.
24+
25+
Several repositories can be configured to display as individual gallery tiles. Under the `exhibits`
26+
section, each repository must have a `title` and a `git` location. There are also several other
27+
optional config options.
28+
29+
The configuration is set at two different levels. Top level gallery settings define the title of
30+
the Gallery section and the location in which the repositories are downloaded. The repository
31+
level settings are defined for each repository. The settings in each section are described
32+
below.
33+
34+
**Top Level Gallery Settings**
35+
36+
| Section | Description |
37+
| ----------- | -------------------------------------------------- |
38+
| title | Title on the gallery tile |
39+
| destination | Location on disk where the repo will be downloaded |
40+
41+
**Repository Level Settings**
42+
43+
| Section | Description |
44+
| ----------- | ----------------------------------------------------------------------------------- |
45+
| title | Title on the gallery tile |
46+
| git | URL of the git repository |
47+
| homepage | (Optional) |
48+
| description | Description of the repository to appear on the gallery tile (Optional) |
49+
| icon | URL or base64 encoded image to use an icon to appear on the gallery tile (Optional) |
50+
| account | (Optional) |
51+
| token | Private Access Token to enable access to private repositories (Optional) |
52+
53+
### Sample configuration
54+
55+
Below is an example of the Gallery settings from the `nebari-config.yaml`. Note that \<encoding\>
56+
and \<PAT\> should be replaced with the actual encoding and Private Access Token, respectively.
57+
58+
```
59+
jupyterlab:
60+
gallery_settings:
61+
title: Demos
62+
destination: demos
63+
exhibits:
64+
- title: Data of an Unusual Size
65+
git: https://github.com/nebari-dev/big-data-tutorial.git
66+
description: Big data tutorial focusing on Dask usage in Nebari
67+
icon: "data:image/png;base64,<encoding>"
68+
homepage: https://github.com/nebari-dev/big-data-tutorial/
69+
- title: From RAGs to riches
70+
git: https://github.com/Quansight/ragna-presentations.git
71+
homepage: https://github.com/Quansight/ragna-presentations/
72+
- title: Private Examples
73+
description: Internal company examples
74+
icon: "data:image/png;base64,<encoding>"
75+
git: https://gitlab....net/companyxyz/examples.git
76+
account: examples
77+
token: "<PAT>"
78+
```
79+
80+
## Using JupyterLab-Gallery
81+
82+
Once the repositories are configured in the Nebari config and redeployed, all users will have
83+
a section on their JupyterLab Launcher screen for the Gallery.
84+
85+
![JupyterLab Gallery tiles on JupyterLab Launcher screen](/img/how-tos/jupyter-gallery-tiles.png)
86+
87+
Each tile points to a different gallery entry in the configuration. The Gallery repositories
88+
will not be downloaded until users trigger the download for each gallery item. To do so, users
89+
will hover over the tile and click the download button.
90+
91+
![JupyterLab Gallery tile on hover for undownloaded repo](/img/how-tos/jupyter-gallery-tile-download.png)
92+
93+
The repository will download to the location specified in the config (in each user's private
94+
space). After the download is complete, hover on the gallery tile present the users with two
95+
new options - the folder icon allows them to jump to the location in the JupyterLab file browser,
96+
and the download button allows them to fetch an updated copy of the repo (if available).
97+
98+
![JupyterLab Gallery tile on hover to update repo](/img/how-tos/jupyter-gallery-tile-update.png)
99+
100+
## Conclusion
101+
102+
For more information on the JupyterLab-Gallery project, visit the
103+
[JupyterLab-Gallery codebase repo](https://github.com/nebari-dev/jupyterlab-gallery).
104+
105+
For more information about custom JupyterLab Overrides in the Nebari config, visit the [Custom Overrides Configurations](../explanations/custom-overrides-configuration#jupyterlab) documentation.

docs/docs/how-tos/nebari-kubernets.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ Be sure to fill in the following fields carefully:
104104
- The recommended minimum vCPU and memory for a `general` node is 8 vCPU / 32 GB RAM
105105
- The recommended minimum vCPU and memory for a `user` and `worker` node is 4 vCPU / 16 GB RAM
106106
- `Disk size`
107-
- The recommended minimum is 200 GB for the attached EBS (block-strage)
107+
- The recommended minimum is 200 GB for the attached EBS (block-storage)
108108
- "Node Group scaling configuration"
109109
- `Minimum size` and `Maximum size` of 1 for the `general` node group
110110
- "Node Group subnet configuration"

0 commit comments

Comments
 (0)