question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Provide metadata service as separate server extension

See original GitHub issue

I’m loving the metadata service inside of elyra!

I’d really like to tap into this extension without installing all of elyra’s dependencies. Right now, installing the Python package leads to the installation of a few other server extensions, such as jupyterlab-git and nbdime, because they are required in elyra’s setup.py. However, it would be nice to install this extension without these extra dependencies.

One option is to create a new repo and provide the metadata service as a separate PyPI package; the second option is to make these other dependencies optional (though this is likely a problem for the elyra distribution).

Let me know your thoughts. I’d be happy to help move this part of the code out into a separate repo if you think this make sense. Thanks!

cc @kevin-bates

Issue Analytics

  • State:open
  • Created 3 years ago
  • Reactions:1
  • Comments:9 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
lresendecommented, Jul 1, 2020

Hi @Zsailer,

I’d really like to tap into this extension without installing all of elyra’s dependencies. Right now, installing the Python package leads to the installation of a few other server extensions, such as jupyterlab-git and nbdime, because they are required in elyra’s setup.py. However, it would be nice to install this extension without these extra dependencies.

In development mode, make install-server on the Elyra repo should do what you need.

In a release, we want to simplify the user experience for the user, and thus we drop these extensions into the JupyterLab folder which makes the pip install elyra && jupyter lab build the only thing the user needs to do and that’s very useful.

Separating the modules is definitely something we might be open to, but as we are still having a lot of changes on the metadata services, having a separate module might increase the work necessary to make quick progress, as changes on the new module need to be released to be used with the main Elyra repo.

One thing I was thinking about, at least for now, is to customize the setup.py to allow something like ELYRA_DISABLE_LAB_EXTENSIONS=true pip install elyra which then would only install the backend.

My immediate reason is that our “code-snippets” team (@jupytercalpoly) is building a stand-alone code-snippets extension on top of Elyra’s metadata service backend (i.e. using the metadata service for validating+storing snippets). Their plan is to work in a sandbox, outside of Elyra, for a little while and contribute upstream later when they make some progress.

Don’t be shy 😃 we can create a branch for the interns so they can work in isolation and in a more stable environment, which will give them some flexibility to experiment but also provide the real open source experience working with the community.

0reactions
kevin-batescommented, Oct 26, 2020

I think there are a number of additional functional items for making the metadata service a separate extension as well:

  • Namespace objects that hold schemas and define storage characteristics
  • Ability to bring your own namespaces and schemas
  • Proper definitions for specifying “scopes” or “storage areas” of instances (e.g., user, shared, system) or simplification of the current hierarchy
  • Addition of some meta-behaviors (e.g., “system-owned”, “default-instance”)
Read more comments on GitHub >

github_iconTop Results From Across the Web

About VM metadata | Compute Engine Documentation
The metadata server provides information about a VMs scheduling option through the scheduling/ metadata directory entry and the maintenance-event attribute.
Read more >
Instance metadata and user data - AWS Documentation
Instance metadata is data about your instance that you can use to configure or manage the running instance. Instance metadata is divided into...
Read more >
Manage metadata when making a database available on ...
You should consider storing extended stored procedures in an instance of SQL Server that is separate from the instance that contains the ...
Read more >
Metadata Services — Elyra 3.15.0.dev0 documentation
The Metadata Service provides a generic service that can be used to store metadata that can be easily integrated with Elyra backend and/or...
Read more >
Metadata service - OpenStack Docs
This document provides end user information about the metadata service. For deployment information about the metadata service, see the admin ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found