19d7da3d24
refactor(coderd/database): split Time
and Now
into dbtime
package ( #9482 )
...
Ref: #9380
2023-09-01 16:50:12 +00:00
bc9fdd15f2
fix(enterprise/cli): correctly set default tags for PSK auth ( #9436 )
...
* provisionerd: unconditionally set tag scope to org for psk auth
* provisionerd: add unit tests for MutateTags
* cli: add some informational logging around provisionerd tags
* cli: respect CODER_VERBOSE when initializing logger
2023-09-01 10:37:09 +01:00
ee24260614
feat: allow configuring display apps from template ( #9100 )
2023-08-30 14:53:42 -05:00
90acf998bf
fix: fix null pointer on external provisioner daemons with daily_cost ( #9401 )
...
* fix: fix null pointer on external provisioner daemons with daily_cost
Signed-off-by: Spike Curtis <spike@coder.com >
* Add logging for debounce and job acquire
Signed-off-by: Spike Curtis <spike@coder.com >
* Return error instead of panic
Signed-off-by: Spike Curtis <spike@coder.com >
* remove debounce on external provisioners to fix test flakes
Signed-off-by: Spike Curtis <spike@coder.com >
---------
Signed-off-by: Spike Curtis <spike@coder.com >
2023-08-30 10:48:35 +00:00
a572800d47
chore: rename template restart requirement to autostop requirement ( #9295 )
2023-08-29 18:35:05 +00:00
6ba92ef924
ci: enable gocognit ( #9359 )
...
And, bring the server under 300:
* Removed the undocumented "disable" STUN address in favor of the
--disable-direct flag.
2023-08-27 14:46:44 -05:00
60d5002eb6
refactor: change template archive extraction to be on provisioner ( #9264 )
...
* refactor provisionersdk protocol
Signed-off-by: Spike Curtis <spike@coder.com >
* refactor provisioners to use new protocol
Signed-off-by: Spike Curtis <spike@coder.com >
* refactor provisionerd to use new protocol
Signed-off-by: Spike Curtis <spike@coder.com >
* refactor tests & proto renames
* Fixes from self-review
Signed-off-by: Spike Curtis <spike@coder.com >
* appease fmt & link
Signed-off-by: Spike Curtis <spike@coder.com >
* code review fixes & e2e fixes
Signed-off-by: Spike Curtis <spike@coder.com >
* More fmt
Signed-off-by: Spike Curtis <spike@coder.com >
* Code review fixes
Signed-off-by: Spike Curtis <spike@coder.com >
* new gen; use uuid for session workdir
Signed-off-by: Spike Curtis <spike@coder.com >
* Revert nix-based gen CI task until dogfood is on nix
Signed-off-by: Spike Curtis <spike@coder.com >
* revert deleting dogfood Docker stuff
Signed-off-by: Spike Curtis <spike@coder.com >
* Revert "revert deleting dogfood Docker stuff"
This reverts commit 9762158167
.
---------
Signed-off-by: Spike Curtis <spike@coder.com >
2023-08-25 06:10:15 +00:00
22e781eced
chore: add /v2 to import module path ( #9072 )
...
* chore: add /v2 to import module path
go mod requires semantic versioning with versions greater than 1.x
This was a mechanical update by running:
```
go install github.com/marwan-at-work/mod/cmd/mod@latest
mod upgrade
```
Migrate generated files to import /v2
* Fix gen
2023-08-18 18:55:43 +00:00
de1a7a9210
chore: join user information to workspace_build and template_version ( #8625 )
...
* include minimial user on template version and build
* Add unit test to ensure join is superset
2023-07-25 09:14:38 -04:00
dc8b73168e
feat: add user quiet hours schedule and restart requirement feature flag ( #8115 )
2023-07-20 23:35:41 +10:00
aceedefce3
chore: add template_with_user
view to include user contextual data ( #8568 )
...
* chore: Refactor template sql queries to use new view
* TemplateWithUser -> Template
* Add unit test to enforce good view
2023-07-19 16:07:33 -04:00
ce114a7f9f
chore: upgrade sqlc to 1.19.1 ( #8511 )
2023-07-15 09:07:19 +03:00
7ed17b2605
fix: add some missing workspace updates ( #7790 )
...
* Standardize on function to get workspace channel name
There were two, now there is one.
* Add some missing workspace updates
There are some failure cases where we do not set the type as a workspace
build which causes the workspace update to never be published.
* Make build failures warnings
Otherwise the associated test fails due to the logger fataling on
error messages.
2023-07-14 15:07:48 -08:00
9f2a931eb8
feat(coderd): support ephemeral parameters ( #8367 )
2023-07-10 13:44:03 +02:00
e088303382
feat!: drop LegacyVariableName from coder parameter ( #8360 )
2023-07-07 14:14:29 +02:00
6639c69fad
feat: add "display_order" column to coder_parameter to keep parameters sorted in UI ( #8227 )
2023-06-30 12:41:55 +02:00
8e2422d42c
feat: use named loggers in coderd
( #8148 )
2023-06-22 20:09:33 +02:00
4fb4c9b270
chore: add more rules to ensure logs consistency ( #8104 )
2023-06-21 12:00:38 +02:00
b1d1b63113
chore: ensure logs consistency across Coder ( #8083 )
2023-06-20 12:30:45 +02:00
e4b6f5695b
chore: separate pubsub into a new package ( #8017 )
...
* chore: rename store to dbmock for consistency
* chore: remove redundant dbtype package
This wasn't necessary and forked how we do DB types.
* chore: separate pubsub into a new package
This didn't need to be in database and was bloating it.
2023-06-14 15:34:54 +00:00
660bbb8d38
refactor: deprecate login_before_ready
in favor of startup_script_behavior
( #7837 )
...
Fixes #7758
2023-06-06 11:58:07 +03:00
a7366a8b76
feat!: drop support for legacy parameters ( #7663 )
2023-06-02 11:16:46 +02:00
7c3dbbbe93
fix: stream provisioner logs ( #7712 )
...
* stream provisioner logs
Signed-off-by: Spike Curtis <spike@coder.com >
* Fix imports
Signed-off-by: Spike Curtis <spike@coder.com >
* Better logging, naming, arg order
Signed-off-by: Spike Curtis <spike@coder.com >
---------
Signed-off-by: Spike Curtis <spike@coder.com >
2023-05-31 06:15:58 +00:00
702c9081e0
fix: do not skip parameter validation if min or max = 0 ( #7707 )
2023-05-30 14:57:06 +02:00
ec5ef51b49
feat: add session token injection to provisioner ( #7461 )
2023-05-17 23:29:22 -05:00
8bd9f9c351
feat: unified tracing between coderd<->provisionerd ( #7370 )
2023-05-03 23:02:35 +00:00
a44070e2ec
feat(scaletest): allow scaletests to run using the host credentials ( #7075 )
2023-04-11 19:49:28 +00:00
e33941b7c2
feat: allow disabling autostart and custom autostop for template ( #6933 )
...
API only, frontend in upcoming PR.
2023-04-04 12:48:35 +00:00
633dfbdb2e
feat: rich parameters: introduce display_name ( #6919 )
...
* model
* DB
* fix: DisplayName
* proto
* Proto
* Update go dep
* fixme
* fix format
* config
* fmt
* fix
* Fix
* fix
* chore(UI): redirecting from workspace page if 404 (#6880 )
* model
* CLI: Display parameter
* fix
* update dep
* fix
* fix
* fix
* UI changes
* fmt
---------
Co-authored-by: Kira Pilot <kira@coder.com >
2023-04-03 14:37:47 +02:00
ca4fa81570
feat: add agent metadata ( #6614 )
2023-03-31 15:26:19 -05:00
0ba200c2a1
feat: Enable workspace debug logging ( #6838 )
...
* feat: Enable workspace debug logging
* Fix
* Fix
* Fix
* fix
* fix
* Enable RBAC
* unit tests
* Fix
* fix
* fix
* fix
* more tests
* fix: workspacebuild_test use roles
* fix: swagger comment
* fix: ctx.Done
* fix: address PR comments
* break loop
2023-03-30 16:00:33 +02:00
df31636e72
feat: pass access_token
to coder_git_auth
resource ( #6713 )
...
This allows template authors to leverage git auth to perform
custom actions, like clone repositories.
2023-03-22 19:37:08 +00:00
c3fb1b325f
feat: add owner_oidc_access_token
to coder_workspace
data source ( #6042 )
...
See the discussion in Discord here:
https://discord.com/channels/747933592273027093/1071182088490987542/1071182088490987542
Related provider PR: coder/terraform-provider-coder#91
2023-03-17 15:25:08 -05:00
7587850a1c
feat: import value from legacy variable to build parameter ( #6556 )
2023-03-14 12:02:44 +00:00
7eb2c2ff6d
Revert "chore: Implement joins with golang templates ( #6429 )" ( #6560 )
...
This reverts commit 8b125d6c5d
.
2023-03-10 10:39:02 -06:00
8b125d6c5d
chore: Implement joins with golang templates ( #6429 )
...
* feat: Implement view for workspace builds to include rbac info
* Removes the need to fetch the workspace to run an rbac check.
* chore: Use workspace build as RBAC object
* chore: Use golang templates instead of sqlc files
2023-03-10 09:44:38 -06:00
3b87316ad7
feat: propagate job error codes ( #6507 )
...
* feat: propagate job error_code
* fix
* Fix
* Fix
* Fix
* add errors to typesGenerated
* Address PR comments
* Fix
2023-03-08 16:32:00 +01:00
2d4706ac33
feat: mark coder_parameter as "required" ( #6433 )
...
* Add required column
* Pass through providerd
* Pass the required property down
* Optional
* Fix
* Fix
* Fix
* fix
* CLI create: support for optional fields
* Use HTML API to mark fields required
* Fix
* Improve validation
* more fixes
* make fmt
* Fix
* WIP
* Fix: test
* CLI update tets
* OptionalParameterAdded
* Fix: migration
2023-03-07 16:38:31 +01:00
66a6b590a1
feat: add template max_ttl ( #6114 )
...
Co-authored-by: Bruno Quaresma <bruno@coder.com >
2023-03-07 14:14:58 +00:00
22e3ff96be
feat(agent): Add shutdown lifecycle states and shutdown_script support ( #6139 )
...
* feat(api): Add agent shutdown lifecycle states
* feat(agent): Add shutdown_script support
* feat(agent): Add shutdown_script timeout
* feat(site): Support new agent lifecycle states
---
Co-authored-by: Marcin Tojek <marcin@coder.com >
2023-03-06 21:34:00 +02:00
7f226d4f90
feat: add support for coder_git_auth
data source ( #6334 )
...
* Add git auth providers schema
* Pipe git auth providers to the schema
* Add git auth providers to the API
* Add gitauth endpoint to query authenticated state
* Add endpoint to query git state
* Use BroadcastChannel to automatically authenticate with Git
* Add error validation for submitting the create workspace form
* Fix panic on template dry-run
* Add tests for the template version Git auth endpoint
* Show error if no gitauth is configured
* Add gitauth to cliui
* Fix unused method receiver
* Fix linting errors
* Fix dbauthz querier test
* Fix make gen
* Add JavaScript test for git auth
* Fix bad error message
* Fix provisionerd test race
See https://github.com/coder/coder/actions/runs/4277960646/jobs/7447232814
* Fix requested changes
* Add comment to CreateWorkspacePageView
2023-02-27 10:18:19 -06:00
43e8ba0811
feat(api): add prometheus metric coderd_workspace_builds_total ( #6314 )
...
This PR adds the prometheus metric coderd_workspace_builds_total.
It measures the total number of workspace builds, along with a number of labels intended to be useful for an operator debugging a failed workspace build trying to discover the scope of the issue.
2023-02-23 01:28:10 +00:00
f05609b4da
chore: format Go more aggressively
2023-02-18 18:32:09 -06:00
a69137b1f7
feat: Update CLI to handle managed variables ( #6220 )
...
* WIP
* hcl
* useManagedVariables
* fix
* Fix
* Fix
* fix
* go:build
* Fix
* fix: bool flag
* Insert template variables
* API
* fix
* Expose via API
* More wiring
* CLI for testing purposes
* WIP
* Delete FIXME
* planVars
* WIP
* WIP
* UserVariableValues
* no dry run
* Dry run
* Done FIXME
* Fix
* Fix: CLI
* Fix: migration
* API tests
* Test info
* Tests
* More tests
* fix: lint
* Fix: authz
* Address PR comments
* Fix
* fix
* fix
* CLI: create
* unit tests: create templates with variables
* Use last variables
* Fix
* Fix
* Fix
* Push tests
* fix: variable is required if Default is nil
* WIP
* Redact sensitive values
* Fixes
* Fixes
* Fix: arg description
* Fix
* Variable param
* Fix: gen
* Fix
* Fix: goldens
2023-02-17 09:07:45 +01:00
3b7b96ac28
feat: Expose managed variables via API ( #6134 )
...
* WIP
* hcl
* useManagedVariables
* fix
* Fix
* Fix
* fix
* go:build
* Fix
* fix: bool flag
* Insert template variables
* API
* fix
* Expose via API
* More wiring
* CLI for testing purposes
* WIP
* Delete FIXME
* planVars
* WIP
* WIP
* UserVariableValues
* no dry run
* Dry run
* Done FIXME
* Fix
* Fix: CLI
* Fix: migration
* API tests
* Test info
* Tests
* More tests
* fix: lint
* Fix: authz
* Address PR comments
* Fix
* fix
* fix
2023-02-15 18:24:15 +01:00
f0f39b4892
chore: break down dbauthz.System into smaller roles ( #6218 )
...
- rbac: export rbac.Permissions
- dbauthz: move GetDeploymentDAUs, GetTemplateDAUs,
GetTemplateAverageBuildTime from querier.go to system.go
and removes auth checks
- dbauthz: remove AsSystem(), add individual roles for
autostart, provisionerd, add restricted system role for
everything else
2023-02-15 16:14:37 +00:00
6fb8aff6d0
feat: Add initial AuthzQuerier implementation ( #5919 )
...
feat: Add initial AuthzQuerier implementation
- Adds package database/dbauthz that adds a database.Store implementation where each method goes through AuthZ checks
- Implements all database.Store methods on AuthzQuerier
- Updates and fixes unit tests where required
- Updates coderd initialization to use AuthzQuerier if codersdk.ExperimentAuthzQuerier is enabled
2023-02-14 14:27:06 +00:00
b86bce8494
feat!: Validate monotonic numbers for rich parameters ( #6046 )
...
* Database changes
* protobuf
* Fix: docs
* workspaces_test
* Validation in coderd
* Fix: resources
* omitempty
* UI changes
* UI tests
* fix
2023-02-07 09:36:13 +01:00
8b424f03c2
chore: Rename databasefake --> dbfake ( #6011 )
2023-02-02 19:28:55 -06:00
4a6fc40949
feat: Add database data generator to make fakedbs easier to populate ( #5922 )
...
* feat: Add database data generator to make fakedbs easier to populate
2023-01-31 15:10:03 -06:00