mirror of
https://github.com/coder/coder.git
synced 2025-07-06 15:41:45 +00:00
feat: add keys to organization provision daemons (#14627)
This commit is contained in:
@ -68,6 +68,7 @@ func New() database.Store {
|
||||
notificationPreferences: make([]database.NotificationPreference, 0),
|
||||
parameterSchemas: make([]database.ParameterSchema, 0),
|
||||
provisionerDaemons: make([]database.ProvisionerDaemon, 0),
|
||||
provisionerKeys: make([]database.ProvisionerKey, 0),
|
||||
workspaceAgents: make([]database.WorkspaceAgent, 0),
|
||||
provisionerJobLogs: make([]database.ProvisionerJobLog, 0),
|
||||
workspaceResources: make([]database.WorkspaceResource, 0),
|
||||
@ -108,6 +109,41 @@ func New() database.Store {
|
||||
|
||||
q.defaultProxyDisplayName = "Default"
|
||||
q.defaultProxyIconURL = "/emojis/1f3e1.png"
|
||||
|
||||
_, err = q.InsertProvisionerKey(context.Background(), database.InsertProvisionerKeyParams{
|
||||
ID: uuid.MustParse(codersdk.ProvisionerKeyIDBuiltIn),
|
||||
OrganizationID: defaultOrg.ID,
|
||||
CreatedAt: dbtime.Now(),
|
||||
HashedSecret: []byte{},
|
||||
Name: codersdk.ProvisionerKeyNameBuiltIn,
|
||||
Tags: map[string]string{},
|
||||
})
|
||||
if err != nil {
|
||||
panic(xerrors.Errorf("failed to create built-in provisioner key: %w", err))
|
||||
}
|
||||
_, err = q.InsertProvisionerKey(context.Background(), database.InsertProvisionerKeyParams{
|
||||
ID: uuid.MustParse(codersdk.ProvisionerKeyIDUserAuth),
|
||||
OrganizationID: defaultOrg.ID,
|
||||
CreatedAt: dbtime.Now(),
|
||||
HashedSecret: []byte{},
|
||||
Name: codersdk.ProvisionerKeyNameUserAuth,
|
||||
Tags: map[string]string{},
|
||||
})
|
||||
if err != nil {
|
||||
panic(xerrors.Errorf("failed to create user-auth provisioner key: %w", err))
|
||||
}
|
||||
_, err = q.InsertProvisionerKey(context.Background(), database.InsertProvisionerKeyParams{
|
||||
ID: uuid.MustParse(codersdk.ProvisionerKeyIDPSK),
|
||||
OrganizationID: defaultOrg.ID,
|
||||
CreatedAt: dbtime.Now(),
|
||||
HashedSecret: []byte{},
|
||||
Name: codersdk.ProvisionerKeyNamePSK,
|
||||
Tags: map[string]string{},
|
||||
})
|
||||
if err != nil {
|
||||
panic(xerrors.Errorf("failed to create psk provisioner key: %w", err))
|
||||
}
|
||||
|
||||
return q
|
||||
}
|
||||
|
||||
@ -7582,6 +7618,25 @@ func (q *FakeQuerier) ListProvisionerKeysByOrganization(_ context.Context, organ
|
||||
return keys, nil
|
||||
}
|
||||
|
||||
func (q *FakeQuerier) ListProvisionerKeysByOrganizationExcludeReserved(_ context.Context, organizationID uuid.UUID) ([]database.ProvisionerKey, error) {
|
||||
q.mutex.RLock()
|
||||
defer q.mutex.RUnlock()
|
||||
|
||||
keys := make([]database.ProvisionerKey, 0)
|
||||
for _, key := range q.provisionerKeys {
|
||||
if key.ID.String() == codersdk.ProvisionerKeyIDBuiltIn ||
|
||||
key.ID.String() == codersdk.ProvisionerKeyIDUserAuth ||
|
||||
key.ID.String() == codersdk.ProvisionerKeyIDPSK {
|
||||
continue
|
||||
}
|
||||
if key.OrganizationID == organizationID {
|
||||
keys = append(keys, key)
|
||||
}
|
||||
}
|
||||
|
||||
return keys, nil
|
||||
}
|
||||
|
||||
func (q *FakeQuerier) ListWorkspaceAgentPortShares(_ context.Context, workspaceID uuid.UUID) ([]database.WorkspaceAgentPortShare, error) {
|
||||
q.mutex.Lock()
|
||||
defer q.mutex.Unlock()
|
||||
@ -9311,6 +9366,7 @@ func (q *FakeQuerier) UpsertProvisionerDaemon(_ context.Context, arg database.Up
|
||||
Version: arg.Version,
|
||||
APIVersion: arg.APIVersion,
|
||||
OrganizationID: arg.OrganizationID,
|
||||
KeyID: arg.KeyID,
|
||||
}
|
||||
q.provisionerDaemons = append(q.provisionerDaemons, d)
|
||||
return d, nil
|
||||
|
Reference in New Issue
Block a user