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

Moving sfrp release 2019-03-01 to stable #6613

Merged
merged 8 commits into from
Aug 7, 2019

Conversation

a-santamaria
Copy link
Member

@a-santamaria a-santamaria commented Jul 12, 2019

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:

  • I have reviewed the documentation for the workflow.
  • Validation tools were run on swagger spec(s) and have all been fixed in this PR.
  • The OpenAPI Hub was used for checking validation status and next steps.

ARM API Review Checklist

  • Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories.
  • adding/removing APIs.
  • adding/removing properties.
  • adding/removing API-version.
  • adding a new service in Azure.

Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.

  • If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
    Please follow the link to find more details on API review process.

@AutorestCI
Copy link

AutorestCI commented Jul 12, 2019

Automation for azure-sdk-for-python

The initial PR has been merged into your service PR:
Azure/azure-sdk-for-python#6713

@AutorestCI
Copy link

AutorestCI commented Jul 12, 2019

Automation for azure-sdk-for-java

Nothing to generate for azure-sdk-for-java

@azuresdkci
Copy link
Contributor

Can one of the admins verify this patch?

@AutorestCI
Copy link

AutorestCI commented Jul 12, 2019

Automation for azure-sdk-for-go

The initial PR has been merged into your service PR:
Azure/azure-sdk-for-go#5454

@a-santamaria
Copy link
Member Author

@anuchandy could you help review the pr?

@anuchandy anuchandy added the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Jul 18, 2019
@anuchandy
Copy link
Member

@a-santamaria is there any change other than changing api-version string in swagger from preview to stable? any models changed, operations added/removed?

@a-santamaria
Copy link
Member Author

@anuchandy no, we only moved it to stable

Copy link
Contributor

@KrisBash KrisBash left a 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": {
Copy link
Contributor

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]

Copy link
Member Author

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}": {
Copy link
Contributor

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?

Copy link
Member Author

@a-santamaria a-santamaria Jul 22, 2019

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": {
Copy link
Contributor

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?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, always async

}
}
},
"patch": {
Copy link
Contributor

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)

Copy link
Member Author

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

}
}
},
"ProxyResource": {
Copy link
Contributor

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.

Copy link
Member Author

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

Copy link
Member Author

@a-santamaria a-santamaria Jul 22, 2019

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
Copy link
Contributor

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

Copy link
Member Author

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?

@KrisBash KrisBash added the ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review label Jul 19, 2019
@openapi-sdkautomation
Copy link

openapi-sdkautomation bot commented Jul 22, 2019

In Testing, Please Ignore

[Logs] (Generated from 7ae9bfe, Iteration 6)

Failed .NET: test-repo-billy/azure-sdk-for-net [Logs] [Diff]
Succeeded Python: test-repo-billy/azure-sdk-for-python [Logs] [Diff]
Warning Java: test-repo-billy/azure-sdk-for-java [Logs] [Diff]
  • Warning servicefabric/resource-manager/v2016_09_01 [Logs]
  • Warning servicefabric/resource-manager/v2017_07_01_preview [Logs]
  • Warning servicefabric/resource-manager/v2018_02_01 [Logs]
Warning Go: test-repo-billy/azure-sdk-for-go [Logs] [Diff]
Warning Ruby: test-repo-billy/azure-sdk-for-ruby [Logs] [Diff]
  • No packages generated.

Copy link
Contributor

@KrisBash KrisBash left a 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.

@KrisBash KrisBash added ARM-Review-Issue ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review and removed ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Jul 31, 2019
@a-santamaria
Copy link
Member Author

a-santamaria commented Aug 2, 2019

@anuchandy can the pr be merged? as it's signed of by ARM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants