Comments (8)
I have never used the APIFilters parameter so I do not know how to use it.
I use Write-APIManagementTemplates with ApiStandalone=true. The result is that I have one master.template.json that will deploy the service, products, groups etc (but no APIs).
For each version set I get a separate directory (api-Calculator) and in that directory there is a api-Calculator.master.template.json that will deploy all the versions of the Calculator.
So I can already deploy all versions of an API without deploying anything else.
from apimanagementarmtemplatecreator.
Hm, if you're able to relate each API version back to the parent version set I wonder if it's possible to pull a single version set with all its versions and avoiding pulling down all version sets. Does that make sense?
from apimanagementarmtemplatecreator.
Btw, Write-APIManagementTemplates is awesome. I love the way it organizes everything!
from apimanagementarmtemplatecreator.
Can you explain the problem more: Do you have so many different api-version-sets that it takes to long to generate arm templates for all of them?
Or is the problem that you want to be able to deploy the different api-versions-sets separately?
from apimanagementarmtemplatecreator.
Yes, we have many APIs and many developers. We want everyone to be able to generate their ARM templates quickly and in isolation from the rest of the APIs. So the answer is yes to both questions.
from apimanagementarmtemplatecreator.
So let's see how this works.
Getting things from the REST API is based on retrieving API's and not version sets. The version set is fetched after the API and added to the template.
By default all API's matching the APIFilters is collected from the API.
Example using APIVersion to only generate template for Orders API in the Sales domain.
-APIFilters "path eq 'sales/orders'"
Will collect all API's that has the path sales/orders, this could potentially bee 2-3 verions of this API and all is collected.
If you then want to have even more granular filtering you could us the APIVersion, this filters out so that only the provided version is added to the template.
Example only collect v2 of the API.
-ApiVersion v2
Could that help?
from apimanagementarmtemplatecreator.
Thanks, I will try that. Is 'path' the URL suffix? Or the operation path? Or both?
from apimanagementarmtemplatecreator.
@MLogdberg I did "path eq '{url suffix}'" and that did the trick - pulled down all versions for the version set. The URL suffix will need to be the same for all versions of course. Previously I was using "name" instead of "path" which only pulled down a single version. Thanks! @nilshedstrom I think this method could probably be used with Write-APIManagementTemplates if you just want to generate templates for a single API. Thanks again.
from apimanagementarmtemplatecreator.
Related Issues (20)
- Backends with Custom URL causes NullReferenceException HOT 2
- API Filters not working HOT 3
- Error in Write-APIManagementTemplates HOT 3
- Named values used in backend definitions HOT 2
- Write-APIManagementTemplates: AlwaysAddPropertiesAndBackend + GenerateParameterFiles causes causes cast error
- Get-APIManagementTemplate stopped working for Consumption instances HOT 2
- Backend Logic Apps and Functions in another subscription cannot be exported
- Extract Specific Operation from APIM
- The 'Get-APIManagementTemplate' command was found in the module, but the module could not be loaded HOT 2
- Object reference not set to an instance of an object HOT 1
- Get-APIManagementTemplate could not load propertly HOT 1
- Products with API acccess - Using a parameter that is not included in the ARM-Template HOT 7
- The resource IfsGatewayFunctionApp is not defined in the template HOT 9
- Missing dependency for application insights diagnostics template
- PessimisticConcurrencyConflict: Operation on the API is in progress
- Extracting API Manager with swagger files HOT 1
- Support for backend arm template HOT 2
- Support for Powershell 7 HOT 1
- Exporting "Named Values" is limited to 100 HOT 1
- Write-APIManagementTemplates not working HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from apimanagementarmtemplatecreator.