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

[FEATURE] Proxy Backend Services #38

Closed
wants to merge 14 commits into from
Closed

Conversation

MichaelSp
Copy link
Member

@CLAassistant
Copy link

CLAassistant commented Jul 13, 2018

CLA assistant check
Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
3 out of 4 committers have signed the CLA.

✅ Schoutenk
✅ matz3
✅ MichaelSp
❌ dependabot-bot
You have signed the CLA already but the status is still pending? Let us recheck it.

@coveralls
Copy link

coveralls commented Jul 13, 2018

Pull Request Test Coverage Report for Build 189

  • 35 of 59 (59.32%) changed or added relevant lines in 3 files are covered.
  • 1 unchanged line in 1 file lost coverage.
  • Overall coverage decreased (-3.03%) to 70.083%

Changes Missing Coverage Covered Lines Changed/Added Lines %
lib/middleware/serveProxies.js 32 56 57.14%
Files with Coverage Reduction New Missed Lines %
lib/middleware/serveIndex.js 1 80.49%
Totals Coverage Status
Change from base Build 159: -3.03%
Covered Lines: 293
Relevant Lines: 389

💛 - Coveralls

I really struggle to increase coverage further, because I can't
reliably modify the process.env in order to test the HTTP_PROXY or
make the server answer with a cookie.

Signed-off-by: Michael Sprauer <[email protected]>
@MichaelSp
Copy link
Member Author

I really struggle to increase coverage further, because I can't
reliably modify the process.env in order to test the HTTP_PROXY or
make the server answer with a cookie.

I really struggle to increase coverage further, because I can't
reliably modify the process.env in order to test the HTTP_PROXY or
make the server answer with a cookie.

Signed-off-by: Michael Sprauer <[email protected]>
@RandomByte
Copy link
Member

Thank you for this PR @MichaelSp. As signaled in the related issue, I finally created an RFC to tackle this topic: https://github.com/SAP/ui5-tooling/blob/rfc-proxy/rfcs/0003-proxy.md

From my understanding this PR would solve use case "A", mainly focusing on proxying OData request. Correct?

I added a question to the RFC PR to clarify whether this is a common requirement or should be covered by a more advanced solution: SAP/ui5-tooling#41 (comment)

matz3 and others added 6 commits August 27, 2018 15:05
@RandomByte RandomByte added the enhancement New feature or request label Oct 18, 2018
@vobu
Copy link

vobu commented Oct 14, 2019

@RandomByte
Copy link
Member

Hey @MichaelSp and @Schoutenk,

Thank you for working on this important topic. We are still not sure whether this specific solution fits into the standard UI5 Tooling.

However, I think you should be able to make this a custom middleware (see our documentation). This would allow for easy reuse with the latest versions of the UI5 CLI for anyone interested in using this proxy setup. What do you think?

@RandomByte RandomByte added the information required Further information is required label Oct 14, 2019
@vobu
Copy link

vobu commented Oct 14, 2019

We are still not sure whether this specific solution fits into the standard UI5 Tooling.

i'm just wondering what the rationale against a generic proxy being part of the ui5 tooling is. can you elaborate please?

@petermuessig
Copy link
Contributor

@vobu the main issue with a generic proxy is that this will and cannot satisfy all needs, unfortunately. One needs authentication, the next needs a different path processing or the proxy should consider the neo-app.json or the xs-app.json or whatever other configuration file. I personally would prefer that the people understand the extensibility and can easily implement or better share their proxy with the community. It is good, that we provide an open-source tooling, but it is better when the community can contribute to the tooling by providing own middlewares.

@MichaelSp
Copy link
Member Author

@RandomByte I've abandond the ui5 and thus ui5-tooling and switched to https://github.com/SAP/fundamental-styles instead. So I'm fine with whatever decision you make.

@vobu
Copy link

vobu commented Oct 15, 2019

It is good, that we provide an open-source tooling, but it is better when the community can contribute to the tooling by providing own middlewares.

right on - so @Schoutenk, what would you think about moving this proxy solution over to https://github.com/petermuessig/ui5-ecosystem-showcase?

@Schoutenk
Copy link

Schoutenk commented Oct 16, 2019

right on - so @Schoutenk, what would you think about moving this proxy solution over to https://github.com/petermuessig/ui5-ecosystem-showcase?

@vobu,
That would be fine with me. I understand it would not fit as a generic solution for everyone. I'll use the middleware instead.

(See: https://www.npmjs.com/package/ui5-middleware-proxy-basicauth)

@petermuessig
Copy link
Contributor

@Schoutenk very nice! thanks for creating and publishing your middleware. They basic auth part could also be added to the simple proxy in the ecosystem repository - but with an extra middleware I am fine as well. In general, contribution to the ecosystem showcase repository are welcome. We could add there also special middlewares in order to keep the UI5 tooling as general as possible and as extensible as possible. Thanks for your understanding and your work!

@petermuessig
Copy link
Contributor

petermuessig commented Mar 23, 2020

@MichaelSp @Schoutenk - I will try to setup a WIKI-like page in the https://github.com/petermuessig/ui5-ecosystem-showcase/ , which will allow to list the https://github.com/Schoutenk/ui5-middleware-proxy-basicauth - with that anyone can use it and we keep the server free from the proxy feature. Are you ok with that?

@Schoutenk
Copy link

@MichaelSp @Schoutenk - I will try to setup a WIKI-like page in the https://github.com/petermuessig/ui5-ecosystem-showcase/ , which will allow to list the https://github.com/Schoutenk/ui5-middleware-proxy-basicauth - with that anyone can use it and we keep the server free from the proxy feature. Are you ok with that?

Of course. That would be great!

@petermuessig
Copy link
Contributor

The Wiki-like-page can be found here: https://petermuessig.github.io/ui5-ecosystem-showcase/ - you can contribute to it - that would be great! :-)

@petermuessig
Copy link
Contributor

As discussed above, instead of making the proxy part of the ui5-server we prefer to have middleware plugins for the proxy solutions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request information required Further information is required
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEATURE] Proxy Backend Services
9 participants