backstage / community-plugins

Community plugins for Backstage
Apache License 2.0
152 stars 167 forks source link

🔌 Plugin: Apigee Plugin #258

Open O5ten opened 3 years ago

O5ten commented 3 years ago

Summary

Apigee is a popular API Gateway where services configure or define inbound and outbound proxies. A proxy often has a 1-to-1 relation to its service. What i would like to see in a plugin would be that it provides a tab in a component say proxies or use the preexisting API that displays the proxies a service targets and uses for inbound traffic.

Being an API Gateway also holds general metrics on proxies such as how long did a transaction take to pass through the system, such averages have a value to display.

Features:

Example

As a card inside of the component or in a proxy/api tab

Proxies

Proxy Type Url Average Response Times Error Rate % Transactions
PetStore Inbound https://apigee.some.company.com/petstore 2 ms 2% 2345
World Domination Outbound https://apigee.some.company.com/world-domination 42 ms 100% 1

Project website

https://cloud.google.com/apigee

Fox32 commented 3 years ago

This would probably a good widget that could be part of a dedicated API entity page. I already made some steps about making the API entity page customizable: backstage/backstage#2987

O5ten commented 3 years ago

@Priyabrata-dev If you have any use-cases for this or ideas on how it should look and work for you then feel free to jot that down here. Or i'll just build it for our own usecases. :)

kruegerb-rv commented 3 years ago

My organization is beginning to use backstage and I think there are some great use-cases for an Apigee plugin, especially from the software templating standpoint. Some examples:

Creating a new proxy or shared flow

My team doesn't typically use the Apigee Edge UI for development. We prefer to develop and test locally, submit PRs for our changes and push them up to Apigee via Jenkins. To support this workflow, we built our own command line tool for creating/cloning proxies and shared flows. This works great and allows us to scaffold out proxies that have testing, flow hooks, Jenkinsfiles and other opinionated configurations built-in. The tool does not, however, create the accompanying git repo (we have a repo per proxy) or deploy it to Apigee or anything else.

With Backstage software templates, it seems we could do this with the click of a button and some text input from the user directly in the Backstage UI.

Registering a new application

For internal APIs, developers within the company could create a new application, select API products they want to access and setup their API keys directly within Backstage, versus having to login to the separate developer portal.

Defining a new API product

If an Apigee admin wants to restrict a new developer to a group of proxies and paths that is not currently defined as an API product, they could quickly configure that API product in the Backstage UI.

Basically, anything you can do with the Apigee management API, you could theoretically do in a Backstage plugin.

O5ten commented 3 years ago

I have such a trigger finger, i accidentaly closed this and now it seems i'm unable to open it. @OrkoHunter can you please reopen it? :)

Priyabrata-dev commented 3 years ago

Thank you for the update .will check on this

On Thu, 25 Mar 2021 at 9:03 AM, Bill Krueger @.***> wrote:

My organization is beginning to use backstage and I think there are some great use-cases for an Apigee plugin, especially from the software templating standpoint. Some examples: Creating a new proxy or shared flow

My team doesn't typically use the Apigee Edge UI for development. We prefer to develop and test locally, submit PRs for our changes and push them up to Apigee via Jenkins. To support this workflow, we built our own command line tool for creating/cloning proxies and shared flows. This works great and allows us to scaffold out proxies that have testing, flow hooks, Jenkinsfiles and other opinionated configurations built-in. The tool does not, however, create the accompanying git repo (we have a repo per proxy) or deploy it to Apigee or anything else.

With Backstage software templates, it seems we could do this with the click of a button and some text input from the user directly in the Backstage UI. Registering a new application

For internal APIs, developers within the company could create a new application, select API products they want to access and setup their API keys directly within Backstage, versus having to login to the separate developer portal. Defining a new API product

If an Apigee admin wants to restrict a new developer to a group of proxies and paths that is not currently defined as an API product, they could quickly configure that API product in the Backstage UI.

Basically, anything you can do with the Apigee management API, you could theoretically do in a Backstage plugin.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/backstage/community-plugins/issues/258, or unsubscribe https://github.com/notifications/unsubscribe-auth/ASEUWCGT6373A6XMKWC5EFTTFKVH5ANCNFSM4TZXQXLQ .

lcarlosjr commented 3 years ago

Guys, any news about this Apigee plugin? I saw something about an apigee integration on a youtube video from the American Airlines team...

Rugvip commented 3 years ago

@lcarlosjr Nothing that I've heard of, @karlhaworth are you seeing any opportunity here? :grin:

haagenson commented 3 years ago

@lcarlosjr @Rugvip We haven't started the work of making our Apigee Plugin Shareable yet. We definitely want to contribute it back to the open source community. We don't have it on our roadmap just yet. In the worst case I'll be putting it on our roadmap for review in Q1 2022.

wilsondonizetti commented 2 years ago

Hello everyone. This plugin would be a good option to register components from spec. Today we have different environments and using spec from apigee sounds amazing. Create proxy, collect data about them kind sonarqube also would be good.

shinji62 commented 2 years ago

@haagenson That will be fantastic if you an open it and people can start contributing to it, instead of reinventing the wheel :)

pulberg commented 2 years ago

@haagenson any update on the apigee plugin?

pulberg commented 1 year ago

@haagenson any update on the apigee plugin?

alex-xval commented 11 months ago

@haagenson could you maybe share with community any obstacles you have in implementation of apigee plugin? Do you still have any plans to make it public?

nipunalways commented 5 months ago

Hi @haagenson, Is it still on your roadmap and if so are there any plans to share the plugin with the community?

haagenson commented 5 months ago

Another team internally at AA actually owns this plugin. I'll tag them internally to see.

nipunalways commented 5 months ago

Thank you. Kindly keep us informed of any updates.

mindthecap commented 1 month ago

Is there an update for the status of this project?