Added the option use just as a builder
By submitting this pull request, I confirm that my contribution is made under the terms of the MIT license.
Problem/Feature
Added the option to chose between just and make as a builder.
Description of Changes:
- Abstracted makefile into builder option
- Added Just as a builder option
- Created Just template
Checklist
- [x] I have self-reviewed the changes being requested
- [x] I have updated the documentation (check issue ticket #218)
will review if passes the checks!
@eggplannt GitHub had an issue with the runners. Can you push a dummy commit so I don’t have to retrigger everything manually?
I also need to check and test the implementation after @Melkeydev’s review — you forgot to update the main docs (check the checklist).
I don’t understand why the tests are in the root of the go-blueprint project. Don’t they belong to a specific template that is created with go-blueprint?
https://github.com/Melkeydev/go-blueprint/tree/main/cmd/template/framework/files/tests
https://github.com/actions/runner/issues/3868
Ok I figured it out, since I added more options to create, it broke the linter
I not very familiar with GitHub actions and Linters, how would you go about fixing this
There is one more update required when a new feature is implemented. There is a separate branch for the Blueprint UI — you can test it locally
https://github.com/Melkeydev/go-blueprint/tree/blueprint_ui/blueprint-ui
https://go-blueprint.dev/
Open a PR to the blueprint_ui branch. It hasn't been merged into main.
Does the user need to install Just on Linux, Windows, or macOS before using it? Or is it included in the base system on any of those platforms?
The user has to install just
The user has to install just
This could be the issue. Until now, Blueprint worked out of the box, Makefile installed all the necessary dependencies, like Tailwind. Now we have a chicken-and-egg problem
maybe it should be added as an advanced feature, cause docker isn't auto installed either
maybe it should be added as an advanced feature, cause docker isn't auto installed either
I would argue that every serious developer uses Docker, Podman, containerd, etc. Now that I know this will break the project from working without additional dependencies, I'm having second thoughts. I need to check with @Melkeydev how to proceed
Adding it as an advanced flag will leave you with two identical configs that do the same thing.
I'm not sure what the benefits are. I saw that there's an open issue for Just, but I didn’t comment on it , my bad. Taskfile would make more sense to me if we choose to go down that path: https://taskfile.dev/
how would task be different, it also needs to be installed by the user no?
how would task be different, it also needs to be installed by the user no?
Yes, that’s the point. If we’re adding Makefile alternatives and forcing users to rely on external dependencies, then Taskfile makes more sense because it uses YAML and a different approach that can handle complex task orchestration. From what I understand, Just uses same syntax as Make. What’s the benefit? Make is preinstalled on most operating systems — at least on Unix-based ones
Could also be a third option, so the options would be make, just, and task. Or do u think we should drop task all together.
@eggplannt I need to have a consultation with Melkey, then we will make the final decision
I decided not to accept the PR because we would be introducing another dependency. Make is the de facto standard