generated from ansys/template
-
Notifications
You must be signed in to change notification settings - Fork 2
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
Add support for Ansys Lab Proxy connection #308
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…eturning '404' error, though.
…sys lab. sgeo and vnc not working w ansys lab.
Codecov Report
@@ Coverage Diff @@
## main #308 +/- ##
==========================================
- Coverage 81.65% 81.08% -0.58%
==========================================
Files 18 18
Lines 2437 2500 +63
Branches 425 394 -31
==========================================
+ Hits 1990 2027 +37
- Misses 301 319 +18
- Partials 146 154 +8
|
mfkrogh
commented
Sep 20, 2023
…t work with container installs.
…pecified when starting the Container such as through PIM. Update enshell grpc method start_other() to take a string with optional env vars; same as with start_ensight(). Fix the REST API by specifying the direct connection to the container. This doesn't go through the proxy server if in use.
…/pyensight into feat/add_ansys_lab_proxy
…r a local container but not with Ansys Lab.
…/pyensight into feat/add_ansys_lab_proxy
Hi @mfkrogh ! |
mariostieriansys
previously approved these changes
Sep 26, 2023
jerome-blanche
requested changes
Sep 27, 2023
Co-authored-by: Blanche Jérôme <90267895+jerome-blanche@users.noreply.github.com>
Co-authored-by: Blanche Jérôme <90267895+jerome-blanche@users.noreply.github.com>
I've retested with Jerome's modifications. Works well. |
mariostieriansys
approved these changes
Sep 27, 2023
david-bremer
approved these changes
Sep 27, 2023
jerome-blanche
approved these changes
Sep 27, 2023
mariostieriansys
added a commit
that referenced
this pull request
Sep 27, 2023
Co-authored-by: Mario Ostieri <mario.ostieri@ansys.com> Co-authored-by: Blanche Jérôme <90267895+jerome-blanche@users.noreply.github.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Since the web socket server in the EnSight Docker Container is providing an http connection, instead of https which requires a cert, we use an https / http proxy server provided by Ansys Lab for these connections. When PyEnSight is used with Ansys Lab, it launches the EnSight Docker Container via PyPIM. PIM handles the details of launching on a back-end VM along with setting up the https-to-http proxy server. The proxy host and port number are passed back to PyEnSight via PyPIM. Additionally, a session specific GUID, indicated by the "instance_name=GUID" parameter, is provided that allows the proxy to map multiple session connections to their appropriate container and port. The GUID is used ether as an http header or as part of the URL query parameters. All of this is internal and not something a user would manipulate.
The reason this is needed is that some content returned by EnSight over the http connection consists of URLs that the user's browser is intended to access directly, typically through an IFRAME, for example. Since the browser has no route to the back-end VM server hosting the Docker Container, it must route through the proxy server which is Internet accessible. The proxy server is acting as a bridge between the browser and the privately hosted http server in the EnSight Container. Additionally, since the browser is connecting to something other than 'localhost', it needs to do this over https instead of http as most browsers typically prohibit using http off-box.