Skip to content
This repository was archived by the owner on Dec 9, 2024. It is now read-only.

Conversation

@mthenw
Copy link
Contributor

@mthenw mthenw commented Feb 14, 2018

What did you implement:

This PR introduces Spaces concept to EG.

Spaces

  • A Space provides isolation
  • A Space is a coarse-grained sandbox in which entities can interact freely Functions, and Subscriptions belong to one space (later we can think about allowing resources to belong to multiple spaces)
  • All actions are possible within a space: publishing, subscribing and calling
  • All access cross-namespace is disabled by default
  • Space is not about access control/authentication/authorization. It's only about isolation.
  • Space doesn't enforce any specific subscription path (though we might change it later)

This is how Spaces fit different needs depending on use-case:

  • Single user - single user will run on default space that, no changes required, UX has to be as simple as it is right now.
  • Enterprise user - different teams/departments will use different spaces for isolation and for hiding internal implementation.

Technically speaking Space is mandatory field ("default" by default) on Function or Subscription object that user has to provide during function registration or subscription creation. A Space is first class concept in Config API. Config API can register function in specified space, list all functions or subscriptions from specified space or remove whole space (both functions and subscriptions) in one request. Config API should also allow to create multiple functions and subscriptions in one request.

Todos:

  • Write tests
  • Write documentation
  • Fix linting errors
  • Make sure code coverage hasn't dropped
  • Provide verification commands / resources
  • Enable "Allow edits from maintainers" for this PR
  • Update the messages below

Is this ready for review?: YES
Is it a breaking change?: YES

@mthenw mthenw requested a review from RaeesBhatti February 14, 2018 10:34
@mthenw mthenw merged commit f09cd10 into master Feb 14, 2018
@mthenw mthenw deleted the spaces branch February 14, 2018 13:34
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants