Cicd for custom component using retool-ccl without user interaction

We're trying to automate the deploy and sync of custom components as we've many spaces required sync. It seems that the retool-ccl tool doesn't work without user interaction. Is there any way to run the retool-ccl without user interaction?

Hey @kity

There is a simple way to follow the steps of documentation Docs.
Its working perfectly. There is a no other way.

5 Likes

That's an interesting question, @kity! To @WidleStudioLLP's point, the library doesn't support running in non-interactive mode. There's an existing request for this that we're tracking internally, though, that I'll bump on your behalf.

One possible workaround is to hit the CCL endpoints directly instead of using our library. Do you think that would work for your particular use case?

2 Likes

@Darren it will but it's not clear for us how to do the sync activity as we do with the CCL tool, also it's unclear what is the expected format and content of the files input parameter required for the custom component APIs.

Glad to hear it! I think we can probably get this working, but the documentation is definitely a little immature. While not the most intuitive option, you can inspect the library's source code within your code editor in order to get a better understanding of how everything works.

The sync command, for example:

  1. Pulls all revisions for both the origin and target libraries
  2. Iterates through each revision in the origin
  3. Checks to see if it is present in the target
  4. Fetches the files for the specific revision, if necessary
  5. Pushes those files to the target, if necessary

When pushing files, it looks like the files should all be zipped up.

Let me know if you have any other specific questions! I'm curious to see how feasible this is.

1 Like

I actually have an exciting update! As of version 1.7.3, the custom-component-support library now supports passing arguments via CLI options or environment variables. :+1:

Let us know if you notice any issues or have any additional questions!

1 Like