Skip to content

Proposal: Re-implement in Go #29

@unguiculus

Description

@unguiculus

I'm tinkering with re-implementing chart-testing in Go. I've already thought about this when I wrote it in Bash and, looking at it in hindsight, I think I should have done it right from the start. I probably didn't expect we'd end up with a script containing more than 500 lines of code. Too much for a Bash script IMHO. On the other hand, Python is excellent for scripting, you can debug it, and IDE support is very good. It's easier to write and maintain than Bash.

The project is getting more popular with more PRs and issues coming in. However, adding new features to a Bash script can get messy. There are too many different styles and it's too easy to make mistakes, especially when you don't have a debugger.

Configuration is currently not ideal. We have a mixture of CLI args and environment variables. Config and args parsing would be much easier in Python. Without any special effort, we could support CLI args, env vars, and config files.

Overall, we'd get a better understandable and maintainable code and probably lower the threshold for contributions.

Opinions?

cc @helm/charts-maintainers


Update: The re-implementation will happen in Go!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions