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

[Data Factory] data flow + debug session API swagger #7088

Merged
merged 15 commits into from
Sep 24, 2019

Conversation

jackmagic313
Copy link
Contributor

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.

@openapi-sdkautomation
Copy link

openapi-sdkautomation bot commented Aug 30, 2019

In Testing, Please Ignore

[Logs] (Generated from 3ff8cd5, Iteration 16)

In-Progress .NET: test-repo-billy/azure-sdk-for-net [Logs]
  • Package generation in progress.
In-Progress Python: test-repo-billy/azure-sdk-for-python [Logs]
  • Package generation in progress.
In-Progress Java: test-repo-billy/azure-sdk-for-java [Logs]
  • Package generation in progress.
In-Progress Go: test-repo-billy/azure-sdk-for-go [Logs]
  • Package generation in progress.
In-Progress JavaScript: test-repo-billy/azure-sdk-for-js [Logs]
  • Package generation in progress.

@AutorestCI
Copy link

AutorestCI commented Aug 30, 2019

Automation for azure-sdk-for-python

A PR has been created for you based on this PR content.

Once this PR will be merged, content will be added to your service PR:
Azure/azure-sdk-for-python#7315

@azuresdkci
Copy link
Contributor

Can one of the admins verify this patch?

@jackmagic313
Copy link
Contributor Author

Will have an API review with ARM team first

@AutorestCI
Copy link

AutorestCI commented Aug 30, 2019

Automation for azure-sdk-for-go

A PR has been created for you based on this PR content.

Once this PR will be merged, content will be added to your service PR:
Azure/azure-sdk-for-go#5865

@yungezz yungezz added the DoNotMerge <valid label in PR review process> use to hold merge after approval label Sep 2, 2019
},
"304": {
"description": "Not modified."
},
Copy link
Member

Choose a reason for hiding this comment

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

As per the RPC, GETs should always return 200 (unless there's a failure)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Got it, it's actually the same pattern as all other sub resources we have. I will remove it here and change our RP at the same time

Copy link
Member

Choose a reason for hiding this comment

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

Sounds good.


In reply to: 325400189 [](ancestors = 325400189)

Copy link
Contributor

Choose a reason for hiding this comment

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

@majastrz 304 is for "If-None-Match" header.

{

  | "name": "If-None-Match",
  | "in": "header",
  | "required": false,
  | "type": "string",
  | "description": "ETag of the dataset entity. Should only be specified for get. If the ETag matches the existing entity tag, or if * was provided, then no content will be returned."
  | }

}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/createDataFlowDebugSession": {
Copy link
Member

@majastrz majastrz Sep 17, 2019

Choose a reason for hiding this comment

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

createDataFlowDebugSession [](start = 128, length = 26)

You have several POST actions that perform various lifecycle operations (create, delete, query) on data flow debug sessions. Heavily relying on POST is generally an anti-pattern in ARM.

Have you considered modeling dataFlowDebugSessions as a proxy resource? If yes, why did you choose the POST approach? #Closed

Copy link
Contributor Author

@jackmagic313 jackmagic313 Sep 17, 2019

Choose a reason for hiding this comment

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

We don't want to treat dataFlowDebugSession as a proxy resource since it's a just a temporary session which users can perform some debugging actions. "Create", "AddDataFlow" and "Execute" needs to be POST actions though I can modify query to be get if ARM prefers that way. #Closed

Copy link
Member

Choose a reason for hiding this comment

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

It seems that the sessionId is assigned by the backend, so it'll have to be POST.


In reply to: 325409815 [](ancestors = 325409815)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

yep, reverted to post

@majastrz majastrz added the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Sep 17, 2019
Copy link
Member

@majastrz majastrz left a comment

Choose a reason for hiding this comment

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

I added a couple of comments. Can you take a look?

@jackmagic313 jackmagic313 changed the title [Don't Review for now][Data Factory] data flow + debug session API swagger [Data Factory] data flow + debug session API swagger Sep 17, 2019
@jackmagic313
Copy link
Contributor Author

I added a couple of comments. Can you take a look?

Could you help to take a look again? Thanks!

},
"x-ms-pageable": {
"nextLinkName": "nextLink"
}
Copy link
Member

Choose a reason for hiding this comment

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

@anuchandy, will this work with the generated SDK? Normally, this is reserved for GETs but this is a POST.

Copy link
Member

@majastrz majastrz left a comment

Choose a reason for hiding this comment

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

I added a comment. Please confirm with SDK reviewer to make sure POST will work with nextLink. Otherwise, it looks good from ARM side.

@majastrz majastrz added ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review and removed WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Sep 18, 2019
@anuchandy
Copy link
Member

@jackmagic313 the codegen exceptions are getting thrown from autorest.common, I'm checking with core owner (you're in the loop).

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 DoNotMerge <valid label in PR review process> use to hold merge after approval
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants