-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
API Go module #5449
API Go module #5449
Conversation
@russjones @awly I'm not sure exactly what our vendoring strategy is. How do normally update dependencies, and are the upgrades here an issue? |
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.
Regarding upgrades - these are better done intentionally, e.g. when specific issues are targeted. But regular upgrades are also possible, I guess with the caveat that things need to continue working afterwards.
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.
See golang/go#33789 for the vendoring problem.
Can you try adding some post-processing steps in make update-vendor
to remove the vendored copy of api/
?
See how consul does this: https://github.com/hashicorp/consul/blob/master/GNUmakefile#L225-L228 |
b2e00b1
to
2ab25aa
Compare
Post-processing does not seem to be possible in go 1.15, it leads to an "inconsistent vendoring error": go: inconsistent vendoring in /home/bjoerger/gravitational/teleport:
github.com/gravitational/teleport/[email protected]: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt
github.com/gravitational/teleport/api: is replaced in go.mod, but not marked as replaced in vendor/modules.txt
If you upgrade Consol to go 1.14+ you get the same issue: go: inconsistent vendoring in /home/bjoerger/examples/consul:
github.com/hashicorp/consul/[email protected]: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt
github.com/hashicorp/consul/[email protected]: is explicitly required in go.mod, but not marked as explicit in vendor/modules.txt
github.com/hashicorp/consul/api: is replaced in go.mod, but not marked as replaced in vendor/modules.txt
github.com/hashicorp/consul/sdk: is replaced in go.mod, but not marked as replaced in vendor/modules.txt
github.com/gophercloud/[email protected]: is marked as explicit in vendor/modules.txt, but not explicitly required in go.mod I spent a while trying to find a way around this in go 1.15, but it seems that partial vendoring of modules just isn't supported, and manual modification of |
@Joerger I got this working locally with a symlink:
The problem with keeping |
bc411a7
to
2ab25aa
Compare
This change removes the need for users to manually install u2f-host. It also enables us to do U2F authentication with multiple devices.
Install `mingw-w64` cross-compiler toolchain in the buildbox and pass magic flags to `go build` to use it.
* update role example to 5.0 version
* Increment to version 0.0.10 * Add kubernetes_service option config
After adding several U2F tokens with `tsh mfa add`, you can now `tsh login` using any of those tokens. Two caveats: 1. The MFA method you get prompted for on login depends on the `second_factor` config field on the auth server. There isn't yet an option to require _either_ TOTP or U2F yet, even if you have both kinds registered. 2. Web logins still need updating. Also a few small unrelated changes: - remove u2f-host binary presence check and docs - hide `tsh mfa` commands until the feature is complete
1c0fa65
to
37bab12
Compare
I changed this to a relative symlink to get it to work in docker without relinking. |
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.
Bot.
Changes:
api
module and import it directly into the mainteleport
module.make update-vendor
to deleteapi
from vendor, and add a symlink in its place.