Skip to content

Is207/reverse proxy director (jupyter) #371

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

Merged
merged 156 commits into from
Nov 29, 2018

Conversation

pcrespov
Copy link
Member

@pcrespov pcrespov commented Nov 27, 2018

What do these changes do?

  • implements resolution policy using director
  • implements new routing in front-end (UI)
  • checks jupyter redirection

Related issue number

connected to #207
closes #207

Checklist

  • I think the code is well written
  • Unit tests for the changes exist
  • Documentation reflects the changes
  • Runs in the swarm
  • If you design a new module, add your user to .github/CODEOWNERS

Pedro Crespo and others added 30 commits July 6, 2018 14:34
@ghost ghost assigned sanderegg Nov 28, 2018
@pcrespov pcrespov changed the title WIP: Is207/reverse proxy director Is207/reverse proxy director (jupyter) Nov 29, 2018
Copy link
Member

@sanderegg sanderegg left a comment

Choose a reason for hiding this comment

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

love it

@odeimaiz odeimaiz self-requested a review November 29, 2018 17:17
@pcrespov pcrespov merged commit 4acdc2e into ITISFoundation:master Nov 29, 2018
@ghost ghost removed the review label Nov 29, 2018
@pcrespov pcrespov deleted the is207/reverse-proxy-director branch November 29, 2018 20:36
pcrespov added a commit that referenced this pull request Nov 30, 2018
Some missing parts in PR #371 that i did not push to origin.
Includes
-updates front-end path to dynamic services
- fixes in jupyter notebook


* webserver.director subsystem:
 - added a function to retrieve a client provided the application
 - added notes on a bug

* Modifies director API specs. Implementation expected in #363

* cleanup and naming services

* running_services get now returns also the service and its key/version

* modified tests according to requirements

* modified handlers to work according to requirements

* updated server information

* automatically create the resolved oas file

* updated generator version

* updated director sdk

* updated director openapi

* updated version check

* fixed regex error in client code

* updated sample

* revert change

* formatted director.producer to ready easier

* Implemented ServiceResolutionPolicy with director in application_proxy
Activated setup_app_proxy in appliction

* Minor

* Cleanup dev requirements

* Cleanup director tests while reviewing them

* Fixes duplicated storage in docker-compose

* Minor cleanup and adds apihub dependency to storage

* Modified director APi specs

* default is empty basepath

* generated client for new api with basepath

* updated director api server side

* Minor cleanup
changed APP_SCHEMA by app_schema
removed comments so we can pass to xargs in command line

* update test for director

* updated tests

* update to the api

* fixed not getting service correctly

* added apihub

* start notebook with a base path

* version bump

* added SIMCORE_NODE_BASEPATH

* fixed copy of custom.js to set notebook in single-tab mode

* fixed alternative basepath

* adding missing veriable and baseurl env

* refactoring
adding base url
using async

* added config file
moved s4l stuff in s4l_utils

* Prepared integration-test for reverse proxy
 - recreates docker-compose and config using existing files and environs
 - tests fail

* websocket also on alternative basepath

* duplicate key

* pylint

* fix failing test

* version bump

* empty basepath default

* handle error

* fix catch

* fix default env

* final fix

* Cleanup:
 - removed pdb breakpoint
 - added disabling login option for testing
 - cleanup tests

* Fixed webserver.director handlers

* Using aiohttp client session instead of sdk

* Added makefile to build swarm and tooling

* webserver.director found director api endpoint upon setup

* application-proxy:
 - removed reference to director_sdk (using now aiohttp client)
 - fixed urls

* Fixes responses from director

* Fixes on jupyter handlers

* application_proxy:
 service url considers when the app is in swarm or not

* tests pass using a sleep to wait the service to start

* Disableds proxy if director is disabled

* Adds stdin_open and tty options in docker-compose.devel to enable debugging upon attach

* Fixes oas_repo config for docker-dev. repo root does not exists inside the container!

* Front-end now requests interactive services via the reverse proxy

* Fixes reverse_proxy jupyter handler

* Fixes webserver.projects handler to retrieve template projects
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.

Integrate reverse proxy in webserver
3 participants