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

missing support for synchronization secrets #54

Closed
dhohengassner opened this issue Mar 1, 2022 · 5 comments
Closed

missing support for synchronization secrets #54

dhohengassner opened this issue Mar 1, 2022 · 5 comments
Assignees
Labels
blocked resolution is blocked on an upstream dependency update bug Something isn't working

Comments

@dhohengassner
Copy link

I am trying to use the SDK to replace my curl commands. I do need to create a synchronization secret:
https://docs.microsoft.com/en-us/graph/api/synchronization-synchronization-secrets

It seems to me support for this call is missing:

I am also not sure how to create a PR here - it seems the code is generated.

All suggestions and help is appreciated!
Thanks

@ghost ghost added the Needs: triage 🔍 label Mar 1, 2022
@baywet baywet self-assigned this Mar 1, 2022
@baywet baywet added blocked resolution is blocked on an upstream dependency update bug Something isn't working and removed Needs: triage 🔍 labels Mar 1, 2022
@baywet
Copy link
Member

baywet commented Mar 1, 2022

Hi @dhohengassner
Thanks for trying the Go SDK and for reporting this.
You are right, this path item is missing from the SDK, and the SDK is generated.

Here is a high level overview of the process API go through to make their way in the SDK.

  1. service owners (workloads) describe their APIs in CSDL, the file gets updated weekly.
  2. pipelines use OpenAPI.OData to convert this description into an OpenAPI description
  3. pipelines use Kiota to use the OpenAPI description and generate an SDK update pull request.
  4. the team merges and releases the PR.

The first issue was that the conversion library was not adding those path items, this has been addressed through this and that PRs.

Then the issue was fixed, but we didn't have a version of the conversion library we could use in the pipelines, it's now available as a preview.

Now the generation pipelines need to be updated to leverage that new version, I'd already put this and that PRs together.

However, those PRs are blocked on a new tool, hidi, to be released, we have engineers working on fixing that as we speak.

Then the next step will be to insert a a restriction annotation in the metadata to enable that path item, since it won't be added by default (this behavior is opt-in rather than opt-out). (on the secrets property of the synchronization type).
If you feel like contributing, and if you're comfortable with XSLT, we'd gladly accept a pull request for that. you can look at this example, the main differences being the target and the fact that it'll be an update restriction instead of a read restriction.

Lastly, after all those changes, we'll need to wait for another weekly generation pull request.

I hope this clarifies the process. Don't hesitate if you have follow up questions.

@baywet
Copy link
Member

baywet commented Mar 10, 2022

update: we've just released a new version that solves using request builders with raw urls and takes advantage of the new metadata generation pipeline.

now, all what's missing is the annotation to augment the metadata during the conversion, I've logged an issue to track this in the metadata repo.

you can update by running the follow command

go get -u github.com/microsoftgraph/[email protected]

@baywet
Copy link
Member

baywet commented Jan 30, 2023

Hi everyone,
Thanks for the patience on this. The metadata issue was fixed earlier today.
After another generation and release (should happen tomorrow), this should be fixed.

@baywet
Copy link
Member

baywet commented Mar 3, 2023

Update on this.
We haven't been able to release beta for a month now due to issues in the metadata and other priorities.
We're working to get this unblock and this fix will be part of the next release.

@baywet
Copy link
Member

baywet commented Apr 18, 2023

Apologies, I forgot to update this issue. The method is now available

graphClient.ServicePrincipalsById("servicePrincipal-id").Synchronization().Secrets().Put(context.Background(), requestBody, nil)

Closing.

@baywet baywet closed this as completed Apr 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked resolution is blocked on an upstream dependency update bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants