-
-
Notifications
You must be signed in to change notification settings - Fork 53
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
Feature/kubernetes #120
Feature/kubernetes #120
Conversation
Can you address the test failures @Bluebugs , then we can do a full review? |
Yes, the issue is due to a dependency that doesn't support old go. Need to use a less nice API to work around it :-( |
I just noticed something, I can't find the code for fyne-cross-s3. It somehow disappeared. Will look into it tomorrow. |
Looking at the use of I have some tar compression code laying around in a private repo if you are interested. |
@Jacalz I think it would be better not to, as that is technical debt that we have to carry and there is already a lot to care for. |
Finally got all the dependencies right! So conclusion of this experiment, the sub directory with go.mod does work. It will do a full download of all the dependencies and build (like a vendor directory) for all go version below 1.16. This mean that for the folks below 1.16, they will still download the kubernetes dependencies when building fyne-cross with this change. For anyone with a more recent go, it will not. If that is not acceptable, the next logical step, is to make a child process to insulate the dependencies. This would also make it possible to use more recent dependencies for the independent command as it would not be included at all included in older version. |
archiver v3 seems bad at dealing with streaming content with AWS using a temporary file solve this problem. When we move to a more recent go version switching to archiver v4 will make for simpler and more efficient code.
I have come across a problem with go install and the replace directive. The go.mod in this PR work fine with older go get and go build/go install, but not with a remote url passed to go install. The bug is described here: golang/go#44840 . It does seems there is no interest in solving this issue in go at this point. The problem can be solved by having a custom go run command that would do all the installation step that a go install should do or with a binary that has to be compiled separately. I like the idea of the go run command as we can start checking the environment for having a proper setup to run fyne-cross, but I would understand that we prefer to just support go install command and I can look into using a separate process. Let me know which direction you would be interested in. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So cool, a couple of notes about parameters and error handling.
See golang/go#44840 for more details.
Looks good to me, but will leave it to someone closer to the project to 👍 |
As discussed in the slack channel, it is probably good enough for now having it as is, once we have documented the installation behaviour in the README. After that I think the PR is ready to be merged 👍 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well done, this has been a long haul!
Description:
This does add a Kubernetes engine to fyne-cross.
Fixes #98
Checklist:
Where applicable:
go mod vendor
).