* Update JS grpc-tools to 1.12.4
1.11.2 didn't have support for arm64 so we had to do all this extra stuff
in the Dockerfile.
1.11.3 added support for Darwin arm64 and 1.12.4 finally adds support for
Linux arm64. This means we can completely remove extra cruft and just
install grpc-tools 1.12.4 on all architectures.
* Add comment to ptyHostService.proto
* Adds values for when labels aren't defined
* fixes formatting and prevents usePingTeleport from rerunning the poll when used twice within a single context
* Adds comments, pushes start logic into start itself
* polishing usePingTeleport api such that it reflects that either the join token or search term is used for search
* simplify and fix searchTerm bug
* [Backend]: allow more db fields to be updatable
* Add preventing duplicate keys for label creator
* Add sort compare fn helper
* Update db request update object
* Update CreateDatabase component
- Uncomment and touch up db service checker
- Fix db service label checking
- Allow user to make changes to updatable db fields
- Split defining db name and the other fields into
two views, to prevent user from changing the db name
which is not allowed with the update action
* Address CR: use nil value to determine CACert update
* Few more touch ups
- address CR: don't OR update db request field CACert
and use consistent camelCasing
- remove the skip button for deploying service since
we have the service checker now, which auto skips it
for user if detects service
- refactor label matching for both register database
and deploy service steps
* Address CR: make all fields updatable
* Update service polling after rebase
* Allow for inputs to be disabled
* Remove timeouts from the discover workflows
* Correct the resource type to be cleared on unmount
* Update test snapshots
* Rename useJoinToken to useJoinTokenSuspender
* Remove TODO
* Simplify usePoll
* Simplify the hint box code, add a shared hook
* Add the generte command button back to db flow
* Store the joinToken in PingTeleportContext state instead of using the hook
* Fix rebase diff mistake
* Fix bug with polling for result
- once we get the result, we set the result
back to null, so we can't proceed to next step
---------
Co-authored-by: Lisa Kim <lisa@goteleport.com>
* Define event types
* Define event names for each flow
* Report events upon start, exiting, and next steps
* Update json property name change
* Emit user skipped event
* Emit error events
* Handle unloading event for 'completed' step
* Move updating event state into hook
* Finish emitting events for desktop
* Address CR: rename DiscoverDesktop to DiscoverResources
* Various changes:
- address CR: remove use of ref
- diagnostic traces can also be a success, only emit event on failed traces
- add mysql to discover events
- consistent naming on exit prompt
* Update and add new event names
* Update tests
* Emit events for unimplemented flows (apps and other dbs)
* Redo emitting events for test connection
Send event for EACH test connection failure or success.
If a user does not do any testing, send a skipped event.
* Fix the navigation not listening to the back button
* Update web/packages/teleport/src/Navigation/Navigation.tsx
Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>
* Allow for history.Location and Location types to be used
* Run prettier
---------
Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>
* Adjust go_package of lib/prehog Go protobufs
This makes them follow the pattern set out by api/proto and proto.
* Adjust go_package of lib/teleterm Go protobufs
* Use single buf.gen.yaml to generate JS protos
This also entailed changing the location of lib/teleterm protos and changing
the value of their package specifier to match the conventions in other parts
of the codebase. This is a breaking change but that is fine for Connect
as the protos are used locally only and each build ships with matching
protobufs.
* Make web/packages/teleterm use protobufs from gen-proto-js
We used to copy protobufs over to web/packages/teleterm/src/services/tshd
since webapps used to be in a separate repo.
This is no longer the case, so we can just make teleterm use protobufs
from gen-proto-js.
* Move prehog & teleterm protos into proto/teleport/lib
* Generate JS protos to gen/proto/js
* Move lib/teleterm Go protobufs to gen/proto/go
* Move lib/prehog Go protobufs to gen/proto/go
* Rename lib/teleterm proto package
* Re-enable linter rules for teleterm & prehog
* Update prehogv1 path in usagereporter_test.go
* Use except instead of ignore_only to allow Google API-style responses
* Add UNARY_RPC to api/proto & proto
* Ignore gen/ when running addlicense
* buf-js.gen.yaml: Remove comment about lack of go_package for JS
* Move prehog protos to proto/prehog/v1alpha
* Adjust prehog's go_package to match proto package
* Initial pass at lint and test GHA for UI.
* Fix lint
* Add --frozen-lockfile
* Skip the e directory if it doesn't exist while linting.
* Update failing snapshots.
* use a more reasonable filter for eslint to support missing e
* ignore type check on e imports.
* ignore failing file that requires e teleterm file.
* fix lint
* quiet down the log output for prettier-write.
* Improve error message when trying to rename resource
This commit improves the error message when a user tries to rename a
resource (role, auth connector and trusted cluster) using the web UI.
* Fix tests
* gofmt
* resourceExists -> getResource
* Improve comment.
Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>
* Improve error message
Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>
---------
Co-authored-by: Rafał Cieślak <rafal.cieslak@goteleport.com>
* Render loading screen when initialization is in progress
* Wait with showing the window until it is ready to prevent "empty screen" flash
* Add comments
* Remove CLANG_FORMAT from Makefiles
It was used to format protos but we use Buf for that since v10.
* Move installing grpc_node_plugin into Dockerfile
This commit basically takes grpc_node_plugin compilation from
Dockerfile-teleterm and moves it to Dockerfile.
* Replace Dockerfile-teleterm with Dockerfile
After moving grpc_node_plugin compilation to Dockerfile, the only remaining
thing that Dockerfile-teleterm does is installing rpm so that we can make
an RPM package for Connect during tag builds.
Installing this package can be simply moved to Dockerfile.
* Remove grpc-teleterm Make target in favor of grpc
* Add updated protobufs
It looks like they're a result of someone changing protos in lib/prehog
without running `make grpc-teleterm` separately. Which is why we're getting
rid of grpc-teleterm as a separate Make target in the first place. ;)
* Move tsconfig.json to root dir
At the moment, it looks like the TS language server has problems with
recognizing imports when editing files inside e/web.
I figured this is probably because tsconfig.json is in web, so the lang
server doesn't recognize it when editing files from e/web.
* Remove web/Dockerfile and web/Makefile
* Misc updates to readme
* Fix links in readme
The new app access authentication workflow inadvertently preserves the URL
encoded values present in the AWS role ARN, which are then passed directly
to the webapi/sessions endpoint. As a result, Teleport RBAC doesn't properly
match AWS role ARNs, as they contain (in particular) `/` characters encoded as
`%2F`.
By default, eslint outputs warnings as well as errors but doesn't sort
them in any way. When the lint step fails in CI because of an error, it's
hard to find that error among warnings.
The warnings are still useful when they show up in the editor, so let's
add --quiet which makes eslint output only errors and no warnings.
* Simplify the app launcher flow
* Use `X-Cookie-Value` header instead of using a cookie name
* Export AppLauncher as default to allow for lazy loading
* Do not include credentials
* Include the port & credentials when making requests to applications
* Add the subject cookie header
* Update packages/teleport/src/AppLauncher/AppLauncher.tsx
Co-authored-by: Lisa Kim <lisa@goteleport.com>
* Handle the ?path= query param
* Remove `useAppLauncher`
* Improve the error handling
* Remove unused import
Co-authored-by: Lisa Kim <lisa@goteleport.com>