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

Re-enable Yaegi testing (maybe?) #9

Open
jasongoodwin opened this issue Feb 5, 2024 · 2 comments
Open

Re-enable Yaegi testing (maybe?) #9

jasongoodwin opened this issue Feb 5, 2024 · 2 comments

Comments

@jasongoodwin
Copy link

jasongoodwin commented Feb 5, 2024

Yaegi testing is done when the plugin is released but I disabled it as it has no dependency support. You have to vendor plugins, but we have to then copy them all to keep the build stable in our repo:

Go modules are not supported yet. Until that, it is necessary to install the source into $GOPATH/src/github.com/traefik/yaegi to pass all the tests.

I had a really hard time finding examples that worked and without access to the repo, the cycle time was too slow as our build files don't run and they won't run on a fork.

A lot of plugins just test w/ go as the traefik plugin workflow will catch any issues before publishing.

@jasongoodwin jasongoodwin changed the title Re-enable Yaegi testing Re-enable Yaegi testing (maybe) Feb 5, 2024
@jasongoodwin jasongoodwin changed the title Re-enable Yaegi testing (maybe) Re-enable Yaegi testing (maybe?) Feb 5, 2024
@yoeluk
Copy link

yoeluk commented Feb 5, 2024

I agree. We should introduce this back into the CI/CD to test more principally during Ci/CD. It is worth noting that now traefik provides the pipeline to both build and release... see here, and for example on how to use it see this.

@jasongoodwin
Copy link
Author

Yeah you have to copy the vendored plugins into the go src and I just couldn't iterate on it easily enough without admin access to the project to get it to work. I was wasting a lot of time waiting for approval to run the pipeline. It should be as easy as restoring that to the workflow and just copying everything but I couldn't find an example that worked and couldn't get a pass.

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

2 participants