mirror of
https://github.com/coder/coder.git
synced 2026-09-24 15:04:27 +08:00
feat: backend support for creating and storing service accounts (#22698)
Add is_service_account column to users table with CHECK constraints enforcing login_type='none' and empty email for service accounts. Update user creation API to validate service account constraints. Related to: https://linear.app/codercom/issue/PLAT-27/feat-backend-support-for-creating-and-storing-service-accounts
This commit is contained in:
@@ -213,6 +213,20 @@ func TestGenerator(t *testing.T) {
|
||||
require.Equal(t, exp, must(db.GetUserByID(context.Background(), exp.ID)))
|
||||
})
|
||||
|
||||
t.Run("ServiceAccountUser", func(t *testing.T) {
|
||||
t.Parallel()
|
||||
db, _ := dbtestutil.NewDB(t)
|
||||
user := dbgen.User(t, db, database.User{
|
||||
IsServiceAccount: true,
|
||||
Email: "should-be-overridden@coder.com",
|
||||
LoginType: database.LoginTypePassword,
|
||||
})
|
||||
require.True(t, user.IsServiceAccount)
|
||||
require.Empty(t, user.Email)
|
||||
require.Equal(t, database.LoginTypeNone, user.LoginType)
|
||||
require.Equal(t, user, must(db.GetUserByID(context.Background(), user.ID)))
|
||||
})
|
||||
|
||||
t.Run("SSHKey", func(t *testing.T) {
|
||||
t.Parallel()
|
||||
db, _ := dbtestutil.NewDB(t)
|
||||
|
||||
Reference in New Issue
Block a user