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

Add Contents > Create or update file contents operation to the OOTB GitHub Connector #2023

Open
wollefitz opened this issue Feb 26, 2024 · 4 comments
Labels
kind:enhancement New feature or request scope:github

Comments

@wollefitz
Copy link
Member

Is your feature request related to a problem? Please describe.

If I want to create or update GitHub file contents from my C8 process, I have to manually put in all necessary data using the REST Connector to call https://docs.github.com/en/rest/repos/contents?apiVersion=2022-11-28#create-or-update-file-contents. This is quite error-prone since I have to know all necessary headers and define the request body correctly.

Additionally, the GitHub API requires the file content passed in the request body to be Base64 encoded which requires cumbersome workarounds if the content is not already encoded when receiving it from another source (e.g. Web Modeler's REST API, see https://modeler.cloud.camunda.io/swagger-ui/index.html#/Files/getFile).

Describe the solution you'd like

Using the GitHub connector, I would like to have the option to create or update file contents.
I would want to input as little data as possible and as much custom data as required.
The file content passed in the request payload should be automatically Base64 encoded.

Describe alternatives you've considered

Use the REST Connector and define my own template once I figured out all the necessary headers and how to define the body correctly.

Additional context

@wollefitz wollefitz added kind:enhancement New feature or request scope:github labels Feb 26, 2024
@wollefitz wollefitz self-assigned this Mar 4, 2024
@sbuettner
Copy link
Contributor

@saig0 Can we consider to add basic encoding/converter funtions to the zeebe scala engine so user can make use of them independent from the component calling them (zeebe/connectors)

@wollefitz
Copy link
Member Author

wollefitz commented Mar 5, 2024

I had a chat with @sbuettner and @saig0 yesterday. In summary, there are different approaches on how to support base64 encoding of inputs (as laid out in this working document about Connectors data handling/transformation) but no decision yet on how to proceed. Until there is a concept, implementing this feature is blocked.

Additionally, there is no dedicated epic for implementing data handling (yet), it's still to be discussed if this is in scope of https://github.com/camunda/product-hub/issues/1748, see https://github.com/camunda/product-hub/issues/1748#issuecomment-1976542909.

@bastiankoerber
Copy link

we can support it, when we will work on our epic: handle large documents: https://github.com/camunda/product-hub/issues/1748

@wollefitz
Copy link
Member Author

This is effectively unblocked by camunda/feel-scala#846 and can be used by versions of Zeebe that use the to be built next version (1.17.8/1.18.0) of feel-scala.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind:enhancement New feature or request scope:github
Projects
None yet
Development

No branches or pull requests

3 participants