best way to handle Edge Proxies in Git

Not applicable

what would be the best way to store edge-proxies files\project on git?
so after I change the proxy file I can easily import proxies to edge, and vice versa, after I change proxy using the UI, the git files will be updated as well

1 5 1,165
5 REPLIES 5

Hi @yuri abaev - Currently there's no automatic synchronization between proxies in the Edge UI and the file system. So you have a couple of choices:

  • Update proxies in the UI, then manually download or copy your updated configurations to the file system.
  • If you make updates on the file system (syncing with Git), use a tool like Maven to deploy proxies from the file system to your organization, which automatically updates the proxies in the UI.
    (So pull from Github, then deploy.) This is a best-practice approach to team development of proxies.

Our StreetCarts sample API uses the Maven approach. See the build scripts with that come with the sample here: https://github.com/apigee/streetcarts.

Just an addition... You could also use Edge management APIs to download the proxies to the file system. It's extremely useful, especially if you have to deal with hundreds of APIs. Manually downloading proxies works when you have a couple of proxies.

Tracking Apigee proxy bundles in git is the right strategy.

Maven plugins provide a way to deploy changes from git to Apigee. You can also manage config using maven. Check out.

https://github.com/apigee/apigee-deploy-maven-plugin

https://github.com/apigee/apigee-config-maven-plugin

Hi @Madhan+Sadasivam do you mean, it is better to use Git as the main SCM and sync Edge with this SCM via CI?

Yes, consider Apigee as a deployment environment. All the assets including APIs, KVM, Cache, Target Server etc., are tracked in a version control system (SCM). This way a clear record of changes and necessary peer review process followed in software dev remains in effect.