Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace templated config selectors for user Slurm job profiles #153

Merged
merged 4 commits into from
Mar 28, 2024

Conversation

viniciusdc
Copy link
Collaborator

Reference Issues or PRs

What does this implement/fix?

  • Replace the previous git installation of batchspawner with the latest release, batchspawner==1.3.0
  • Add batchspawner into jupyterlab environment, as it is a requirement to launch the slurm jobs
  • Set jupyterlab environment as base environment for running the sbatch script
  • Updated miniforge version, as it ships a newer mamba version for more stable/fast environment builds
  • Added new function to generate user profiles base on new config options jupyterhub_profiles
  • Add new config option jupyterhub_profiles

Put a x in the boxes that apply

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds a feature)
  • Breaking change (fix or feature that would cause existing features not to work as expected)
  • Documentation Update
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no API changes)
  • Build related changes
  • Other (please describe):

Testing

  • Did you test the pull request locally?
  • Did you add new tests?

Documentation

Access-centered content checklist

Text styling

  • The content is written with plain language (where relevant).
  • If there are headers, they use the proper header tags (with only one level-one header: H1 or # in markdown).
  • All links describe where they link to (for example, check the Nebari website).
  • This content adheres to the Nebari style guides.

Non-text content

  • All content is represented as text (for example, images need alt text, and videos need captions or descriptive transcripts).
  • If there are emojis, there are not more than three in a row.
  • Don't use flashing GIFs or videos.
  • If the content were to be read as plain text, it still makes sense, and no information is missing.

Any other comments?

@viniciusdc
Copy link
Collaborator Author

Using the default configuration:

jupyterhub_profiles:
  - default:
      display_name: default
      options:
        req_memory: "2"
        req_nprocs: "1"

Captura de tela de 2024-03-22 18 18 52

The job was successful

@viniciusdc viniciusdc requested a review from aktech March 26, 2024 21:03
Comment on lines +257 to +267
"""Set the profiles for the ProfilesSpawner."""
profiles = []
for profile_dict in user_profiles:
profile_name, profile_data = next(iter(profile_dict.items()))
profiles.append((
profile_data['display_name'],
profile_name,
QHubHPCSpawner,
dict(**profile_data['options'])
))
return profiles
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How do we make sure a particular profile is only visible to a particular group?

Copy link
Member

@aktech aktech left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified, it works! Thanks!

@aktech aktech merged commit c4c1b0c into nebari-dev:main Mar 28, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants