* Add api call
* Extract DropDownButton
* Start adding DropdownButton to Template page
* Move stories to dropdown button
* Format
* Update xservice to delete
* Deletion flow
* Format
* Move ErrorSummary for consistency
* RBAC (unfinished) and style tweak
* Format
* Test rbac
* Format
* Move ErrorSummary under PageHeader in workspace and template
* Format
* Replace hook with onBlur
* Make style arg optional
* Format
* fix: Add coder user to docker group on installation
This makes for a simpler setup, and reduces the likelihood
a user runs into a strange issue.
* Add wgnet
* Add ping
* Add listening
* Finish refactor to make this work
* Add interface for swapping
* Fix conncache with interface
* chore: update gvisor
* fix tailscale types
* linting
* more linting
* Add coordinator
* Add coordinator tests
* Fix coordination
* It compiles!
* Move all connection negotiation in-memory
* Migrate coordinator to use net.conn
* Add closed func
* Fix close listener func
* Make reconnecting PTY work
* Fix reconnecting PTY
* Update CI to Go 1.19
* Add CLI flags for DERP mapping
* Fix Tailnet test
* Rename ConnCoordinator to TailnetCoordinator
* Remove print statement from workspace agent test
* Refactor wsconncache to use tailnet
* Remove STUN from unit tests
* Add migrate back to dump
* chore: Upgrade to Go 1.19
This is required as part of #3505.
* Fix reconnecting PTY tests
* fix: update wireguard-go to fix devtunnel
* fix migration numbers
* linting
* Return early for status if endpoints are empty
* Update cli/server.go
Co-authored-by: Colin Adler <colin1adler@gmail.com>
* Update cli/server.go
Co-authored-by: Colin Adler <colin1adler@gmail.com>
* Fix frontend entites
* Fix agent bicopy
* Fix race condition for the last node
* Fix down migration
* Fix connection RBAC
* Fix migration numbers
* Fix forwarding TCP to a local port
* Implement ping for tailnet
* Rename to ForceHTTP
* Add external derpmapping
* Expose DERP region names to the API
* Add global option to enable Tailscale networking for web
* Mark DERP flags hidden while testing
* Update DERP map on reconnect
* Add close func to workspace agents
* Fix race condition in upstream dependency
* Fix feature columns race condition
Co-authored-by: Colin Adler <colin1adler@gmail.com>
* Update XService
* Add simple wrapper
* Add selector
* Condition page
* Condition link
* Format and lint
* Integration test
* Add username to api call
* Format
* Format
* Fix link name
* Upgrade xstate/react to fix crashing tests
* Fix tests
* Format
* Abstract strings
* Debug test
* Increase timeout
* Add comments and try shorter timeout
* Use PropsWithChildren
* Undo PropsWithChildren, try lower timeout
* Format, lower timeout
* Extract reusable Pill component
* Make icon optional
* Get pills in place
* Rough styling
* Extract Expander component
* Fix alignment
* Put it in action - type error
* Hide banner by default
* Use generated type
* Move PaletteIndex type
* Tweak colors
* Format, another color tweak
* Add stories
* Add tests
* Update site/src/components/Pill/Pill.tsx
Co-authored-by: Kira Pilot <kira@coder.com>
* Update site/src/components/Pill/Pill.tsx
Co-authored-by: Kira Pilot <kira@coder.com>
* Comments
* Remove empty story, improve empty test
* Lint
Co-authored-by: Kira Pilot <kira@coder.com>
This removes the last built by column from the page. It seemed
cluttered to have both on the page, and is simple enough to
click on the workspace to see additional info.
- move OAuth-related fields off of api_keys into a new user_links table
- restrict users to single form of login
- process updates to user email/usernames for OIDC
- added a login_type column to users
This was causing the app to crash with an error. I found this manually
by looking through the obfuscated sources in DevTools. It's a
data-point for #3425 though!
* Initial support for metadata in provisioner API and Terraform provisioner
* add support for nullable metadata fields
* handle metadata fields in provisionerd and API
* Update color palette
* Edit dialog error colors
* Format
* Lighten links
* Lighten link just in ErrorSummary
* Format
* Fix errors in schedule xservice
* Add error summary to form for generic message
* Format
* Extend getFormHelpers to remap field name
* Add mock error and use in storybook
* Format
* chore: Remove line numbers from auto-gen typescript
The line numbers are just extra noise that change when things shift
around. They are not required and usually make CI fail when you
forget to run 'make gen'.
- Rewrites some error messages to better integrate with the frontend (ttl_ms -> time until shutdown)
- Makes codersdk.ValidationError implement the error interface
- Only return validations if the error was a validation error, return detail otherwise (e.g. database error)
This PR adds two buttons to edit the workspace deadline.
- These buttons only appear when a workspace is running and has a non-zero deadline
- Clicking the ➕ button increases the deadline by one hour, to a max of 24 hours in the future
- Clicking the ➖ button decreases the deadline by one hour, to a minimum of 30 minutes in the future (when the warning banner appears)
This commit adds a new filter feature to the Users page.
- adds a filter to the getUsers API call and users state machine.
- adds filter UI to Users page view.
- addresses error handling in the filter component, users page and machine.
- refactors user table code.
- refactors common code for workspace filter.
- adds and updates unit tests and stories.
* fix: Use WebSockets to stream workspace build logs
This was using a streaming HTTP request before, which didn't work
on my version of Chrome. This method seemed less reliable and standard
than a WebSocket, so figured switching would be best.
* Update site/src/xServices/workspaceBuild/workspaceBuildXService.ts
Co-authored-by: Abhineet Jain <AbhineetJain@users.noreply.github.com>
* Update site/src/pages/WorkspaceBuildPage/WorkspaceBuildPage.test.tsx
Co-authored-by: Abhineet Jain <AbhineetJain@users.noreply.github.com>
* Update site/src/api/api.ts
Co-authored-by: Abhineet Jain <AbhineetJain@users.noreply.github.com>
* Remove unused prop
Co-authored-by: Abhineet Jain <AbhineetJain@users.noreply.github.com>
* add reason field for workspace build
* add the reason field to FE via API
* update BuildReasonMember to BuildReasonInitiator
* add unit tests
* add more unit tests
* add error for unknown transition
* fix lint
* add documentation
* fix unit tests
* fix generated types
* remove nested transaction
* rename migration file
* WIP: feat: Update templates also updates parameters
* Insert params for template version update
* Working implementation of inherited params
* Add "--always-prompt" flag and logging info