-
Notifications
You must be signed in to change notification settings - Fork 134
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
Add a mechanism to detect other platforms to build #142
Conversation
Thanks Alex, we just need to think this through, the linux is hard coded because executor & server are build into docker images, the makefile is used on ci/cd. It would be better to make additional target for local development without any flags to build for local system. It could be also useful to build armadactl for multiple platforms on ci/cd, so we can provide it for download. |
Agreed. I kinda threw this up there to have the discussion :D
Yep, this would have worked for me, too.
To address both of these at once, is your thought to:
|
I feel like @itamarst might have some input here. |
In the broadest terms, for release purposes you'd want to:
2 and 3 are somewhat alternatives, but much better to do both. And you can't really skip doing at least one of them, otherwise you end up with users never updating which can be a significant maintenance burden later on... and/or cause users to give up because "it's broken!" when really it's "you're using an ancient and buggy version but you can't tell". For development purposes, there are probably multiple use cases:
So a good starting point might be having two variants of build: "build happens inside Docker image" (implicitly always targeting Linux) and "build happens on local OS". |
Hi, thanks for the suggestions, it is all reasonable, but I think we are just not yet at the point to do all of this. As a first step I think we need to provide as easy as possible local development build so people can quickly start with the project. Anyway happy to accept PRs or raised issues for backlog. |
I wanted to build
armadactl
on my Mac laptop, so I added a section of containerd'sMakefile
to setGOOS
andGOARCH
parameters. I could add in support for even more ornate flavors of platforms if we think it's useful or slim this down if we think it's too verbose.I also fixed a tiny typo in the gobuild line. GARCH should have been GOARCH.