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

Initial commit for farmbeats service. #17337

Closed
wants to merge 23 commits into from

Conversation

agniveshadhikari
Copy link
Contributor

@agniveshadhikari agniveshadhikari commented Mar 15, 2021

Adding initial python thin client (convenience layer) code for Azure Farmbeats.

This is implemented as a thin layer on top of autorest generated client, primarily for:

  • serving as the base layer for the data science specific SDK
  • having common set of higher level functionality on top of what is provided by the SDK, things like:
    • bulk operations (create, queue jobs)
    • cascade operations on the farm hierarchy
    • perf gains for parallel ops (download of large geospatial files)
  • and finally, making it super easy to authenticate to your farmbeats instance (creating the client is a one liner)

WIP. Need to figure out test framework, and any other blockers for this PR.

@check-enforcer
Copy link

This pull request is protected by Check Enforcer.

What is Check Enforcer?

Check Enforcer helps ensure all pull requests are covered by at least one check-run (typically an Azure Pipeline). When all check-runs associated with this pull request pass then Check Enforcer itself will pass.

Why am I getting this message?

You are getting this message because Check Enforcer did not detect any check-runs being associated with this pull request within five minutes. This may indicate that your pull request is not covered by any pipelines and so Check Enforcer is correctly blocking the pull request being merged.

What should I do now?

If the check-enforcer check-run is not passing and all other check-runs associated with this PR are passing (excluding license-cla) then you could try telling Check Enforcer to evaluate your pull request again. You can do this by adding a comment to this pull request as follows:
/check-enforcer evaluate
Typically evaulation only takes a few seconds. If you know that your pull request is not covered by a pipeline and this is expected you can override Check Enforcer using the following command:
/check-enforcer override
Note that using the override command triggers alerts so that follow-up investigations can occur (PRs still need to be approved as normal).

What if I am onboarding a new service?

Often, new services do not have validation pipelines associated with them, in order to bootstrap pipelines for a new service, you can issue the following command as a pull request comment:
/azp run prepare-pipelines
This will run a pipeline that analyzes the source tree and creates the pipelines necessary to build and validate your pull request. Once the pipeline has been created you can trigger the pipeline using the following comment:
/azp run python - [service] - ci

@agniveshadhikari
Copy link
Contributor Author

/azp run prepare-pipelines

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 17337 in repo Azure/azure-sdk-for-python

@priyankajayaswal1
Copy link

/azp run prepare-pipelines

@azure-pipelines
Copy link

Commenter does not have sufficient privileges for PR 17337 in repo Azure/azure-sdk-for-python

@agniveshadhikari
Copy link
Contributor Author

/azp run prepare-pipelines

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@agniveshadhikari
Copy link
Contributor Author

/azp run python - farmbeats - ci

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@tjprescott
Copy link
Member

This is the contribution guide for Python: https://github.com/Azure/azure-sdk-for-python/blob/master/CONTRIBUTING.md
I would recommend you start cleaning up the CI failures by fixing your README files.

boundary,
)

def get_all(
Copy link
Member

Choose a reason for hiding this comment

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

This methods precludes the ability to support server driven paging. We return ItemPaged instances explicitly to not paint ourselves into that corner.

Only keeping autogen code, with slight modifications.
@@ -0,0 +1,80 @@
# Azure Farnbeats API DS client library for Python
Copy link
Member

Choose a reason for hiding this comment

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

This file should not be here


from azure.core.credentials import TokenCredential

VERSION = "unknown"
Copy link
Member

Choose a reason for hiding this comment

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

Package needs to be generate with --package-version=1.0.0b1


self.credential = credential
self.api_version = "2021-03-31-preview"
self.credential_scopes = kwargs.pop('credential_scopes', [])
Copy link
Member

Choose a reason for hiding this comment

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

This code needs to be generate with --credential-scope with your AAD scope

Copy link
Contributor Author

Choose a reason for hiding this comment

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

autorest --python \
    --input-file=swagger.json \
    --namespace=azure.farmbeats \
    --add-credential \
    --output-folder=. \
    --title=FarmBeatsClient \
    --credential-scope="https://farmbeats-dogfood.azure.net/.default" \
    --package-version=1.0.0b1

Tried generating with this. Didn't change this line.

@ramya-rao-a
Copy link
Contributor

Closing this PR in favor of #18713 which is now merged.
Thanks @iscai-msft

@agniveshadhikari, Please make further changes in https://github.com/Azure/azure-sdk-for-python/tree/master/sdk/agrifood/azure-agrifood-farming as needed

@agniveshadhikari agniveshadhikari deleted the farmbeats branch June 9, 2021 09:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants