-
Notifications
You must be signed in to change notification settings - Fork 5.1k
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
Moving sfrp release 2019-03-01 to stable #6613
Conversation
Automation for azure-sdk-for-pythonThe initial PR has been merged into your service PR: |
Automation for azure-sdk-for-javaNothing to generate for azure-sdk-for-java |
Can one of the admins verify this patch? |
Automation for azure-sdk-for-goThe initial PR has been merged into your service PR: |
@anuchandy could you help review the pr? |
@a-santamaria is there any change other than changing |
@anuchandy no, we only moved it to stable |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems applications swagger has not been ARM reviewed previously, and has some resource model issues.
"type": "string", | ||
"description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." | ||
}, | ||
"eventStoreServiceEnabled": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rather than a bool, typing as a string enum (with modelAsString:true) enables you to more easily add enum values in the future if you find you need more than binary options. I.e. eventServiceSetting: [enabled, disabled]
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for the suggestion, we're going to leave as bool for this particular parameter.
} | ||
} | ||
}, | ||
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something that confuses me: in your manifest, "applications" (top-level resource) is defined as a tracked resource, but "clusters/applications" (this one) is defined as a proxy resource. The swagger schema for "clusters/applications" models it as a proxy resource. Is this supposed to be tracked or proxy? Do you support discrete location values or clusters and applications? What is the top-level "applications" resource in the manifest if it is not in the swagger?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed by removing location and tags properties from proxyResource
}, | ||
"x-ms-long-running-operation": true, | ||
"responses": { | ||
"202": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this always async, or is there ever a noop/200 response?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, always async
} | ||
} | ||
}, | ||
"patch": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/clusters/applications/services is not currently defined in the manifest, but is modeled in swagger as a tracked resource - with location and tags properties, and a PATCH api for tags. It is unusual to have a tracked resource as a nested/child resource, as the ancestors and child could have discrete locations. If this truly is intended to be a tracked resource, it also needs to be in the manifest. If it is proxy, remove tags, and location from the model -optionally you can remove this PATCH from a proxy resource (or at least remove tags from request body)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed by removing location and tags properties from proxyResource
...on/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2019-03-01/application.json
Show resolved
Hide resolved
} | ||
} | ||
}, | ||
"ProxyResource": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This appears to be the root of the problem - "proxyResource" should not have location or tags properties.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for the feedback. Yes, you're right, removed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@KrisBash I've actually reverted this change because we would need to make some changes to our service for this. Can we keep it like this for this release? we will add a new version soon with these changes
"items": { | ||
"$ref": "#/definitions/ServicePlacementPolicyDescription" | ||
}, | ||
"description": "A list that describes the correlation of the service wi |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As mentioned previously, consider a string enum rather than a bool
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
which property are you referring to in this case?
In Testing, Please Ignore[Logs] (Generated from 7ae9bfe, Iteration 6).NET: test-repo-billy/azure-sdk-for-net [Logs] [Diff]
Python: test-repo-billy/azure-sdk-for-python [Logs] [Diff]
Java: test-repo-billy/azure-sdk-for-java [Logs] [Diff]Go: test-repo-billy/azure-sdk-for-go [Logs] [Diff]
Ruby: test-repo-billy/azure-sdk-for-ruby [Logs] [Diff]
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Signing off from ARM, understanding that the spurious properties reflect existing server behavior and will require a new API version to remediate.
@anuchandy can the pr be merged? as it's signed of by ARM |
Latest improvements:
MSFT employees can try out our new experience at OpenAPI Hub - one location for using our validation tools and finding your workflow.
Contribution checklist:
ARM API Review Checklist
Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.
Please follow the link to find more details on API review process.