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

Dockerized Dev Env #40

Open
Keyrxng opened this issue Aug 22, 2024 · 2 comments
Open

Dockerized Dev Env #40

Keyrxng opened this issue Aug 22, 2024 · 2 comments

Comments

@Keyrxng
Copy link
Member

Keyrxng commented Aug 22, 2024

This is experimental and unsure how far it would manage to get but here goes.

Taking inspiration from https://github.com/nektos/act.

To improve the dev experience for working on plugins it would be fantastic if we could cram everything that we need into a container which can be easily used on any OS.

The most important feature of it is the ability to run our workflows locally without the tediousness of repeatedly pushing, waiting 30 secs for start up and 10s-2m to find an error, add logs then rinse and repeat n times.

If this could be streamlined such that our env supports this out of the box, it would make life a dream to work on any kind of plugin.

If we include the kernel itself it ensures consistency across setups, less repos to manage for new contributors etc which might be more attractive?


I don't have a lot of experience with Docker so this is as far as I'll spec this task for now

@0x4007
Copy link
Member

0x4007 commented Aug 22, 2024

I thought that plugins already can run locally with a local server (localhost) for testing. What is the value of this docker instance?

@gentlementlegen rfc

@gentlementlegen
Copy link
Member

I think it solves development for Action plug-ins that are only easy to run within a deployed instance on Github. The way I solve it locally is by running Jest with a mocked payload, which is a bit tedious to setup. However I am unsure how you can solve this through a docket, because you can maybe simply the kernel run but you will still need to use Github UI and a webhook to get it running. And it probably means that each code change you do to the action, you will need to up again your container. But I am curious if you can find any workaround.

Maybe another solution would be to include one jest test in the template that helps running actions locally.

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

No branches or pull requests

3 participants