diff --git a/internal/connections/db.go b/internal/connections/db.go index 74451bb3b..ef130fadf 100644 --- a/internal/connections/db.go +++ b/internal/connections/db.go @@ -17,15 +17,15 @@ type ( func (db *db) createConnection(ctx context.Context, opts ConnectOptions) error { q := db.Querier(ctx) params := sqlc.InsertRepoConnectionParams{ - VCSProviderID: sql.ID(opts.VCSProviderID), + VCSProviderID: opts.VCSProviderID, RepoPath: sql.String(opts.RepoPath), } switch opts.ConnectionType { case WorkspaceConnection: - params.WorkspaceID = sql.ID(opts.ResourceID) + params.WorkspaceID = opts.ResourceID case ModuleConnection: - params.ModuleID = sql.ID(opts.ResourceID) + params.ModuleID = opts.ResourceID default: return fmt.Errorf("unknown connection type: %v", opts.ConnectionType) } @@ -40,9 +40,9 @@ func (db *db) deleteConnection(ctx context.Context, opts DisconnectOptions) (err q := db.Querier(ctx) switch opts.ConnectionType { case WorkspaceConnection: - _, err = q.DeleteWorkspaceConnectionByID(ctx, sql.ID(opts.ResourceID)) + _, err = q.DeleteWorkspaceConnectionByID(ctx, opts.ResourceID) case ModuleConnection: - _, err = q.DeleteModuleConnectionByID(ctx, sql.ID(opts.ResourceID)) + _, err = q.DeleteModuleConnectionByID(ctx, opts.ResourceID) default: return fmt.Errorf("unknown connection type: %v", opts.ConnectionType) } diff --git a/internal/integration/db_test.go b/internal/integration/db_test.go index 6e803ca5b..5330bee4b 100644 --- a/internal/integration/db_test.go +++ b/internal/integration/db_test.go @@ -50,7 +50,7 @@ func TestTx(t *testing.T) { err = db.Tx(ctx, func(txCtx context.Context, q *sqlc.Queries) error { err := q.InsertOrganization(txCtx, sqlc.InsertOrganizationParams{ - ID: sql.ID(org.ID), + ID: org.ID, CreatedAt: sql.Timestamptz(org.CreatedAt), UpdatedAt: sql.Timestamptz(org.UpdatedAt), Name: sql.String(org.Name), @@ -67,22 +67,22 @@ func TestTx(t *testing.T) { // this should succeed because it is using the same querier from the // same tx - _, err = q.FindOrganizationByID(txCtx, sql.ID(org.ID)) + _, err = q.FindOrganizationByID(txCtx, org.ID) assert.NoError(t, err) // this should succeed because it is using the same ctx from the same tx - _, err = db.Querier(txCtx).FindOrganizationByID(txCtx, sql.ID(org.ID)) + _, err = db.Querier(txCtx).FindOrganizationByID(txCtx, org.ID) assert.NoError(t, err) err = db.Tx(txCtx, func(ctx context.Context, q *sqlc.Queries) error { // this should succeed because it is using a child tx via the // querier - _, err = q.FindOrganizationByID(ctx, sql.ID(org.ID)) + _, err = q.FindOrganizationByID(ctx, org.ID) assert.NoError(t, err) // this should succeed because it is using a child tx via the // context - _, err = db.Querier(ctx).FindOrganizationByID(ctx, sql.ID(org.ID)) + _, err = db.Querier(ctx).FindOrganizationByID(ctx, org.ID) assert.NoError(t, err) return nil @@ -90,7 +90,7 @@ func TestTx(t *testing.T) { require.NoError(t, err) // this should fail because it is using a different ctx - _, err = db.Querier(ctx).FindOrganizationByID(txCtx, sql.ID(org.ID)) + _, err = db.Querier(ctx).FindOrganizationByID(txCtx, org.ID) assert.ErrorIs(t, err, pgx.ErrNoRows) return nil diff --git a/internal/logs/db.go b/internal/logs/db.go index adf1e3c76..9f9e35aa2 100644 --- a/internal/logs/db.go +++ b/internal/logs/db.go @@ -18,7 +18,7 @@ type pgdb struct { func (db *pgdb) put(ctx context.Context, chunk Chunk) error { err := db.Querier(ctx).InsertLogChunk(ctx, sqlc.InsertLogChunkParams{ - RunID: sql.ID(chunk.RunID), + RunID: chunk.RunID, Phase: sql.String(string(chunk.Phase)), Chunk: chunk.Data, Offset: sql.Int4(chunk.Offset), @@ -30,7 +30,7 @@ func (db *pgdb) put(ctx context.Context, chunk Chunk) error { } func (db *pgdb) getChunk(ctx context.Context, chunkID resource.ID) (Chunk, error) { - chunk, err := db.Querier(ctx).FindLogChunkByID(ctx, sql.ID(chunkID)) + chunk, err := db.Querier(ctx).FindLogChunkByID(ctx, chunkID) if err != nil { return Chunk{}, sql.Error(err) } @@ -45,7 +45,7 @@ func (db *pgdb) getChunk(ctx context.Context, chunkID resource.ID) (Chunk, error func (db *pgdb) getLogs(ctx context.Context, runID resource.ID, phase internal.PhaseType) ([]byte, error) { data, err := db.Querier(ctx).FindLogs(ctx, sqlc.FindLogsParams{ - RunID: sql.ID(runID), + RunID: runID, Phase: sql.String(string(phase)), }) if err != nil { diff --git a/internal/module/db.go b/internal/module/db.go index dfdd40b18..5fc076677 100644 --- a/internal/module/db.go +++ b/internal/module/db.go @@ -35,7 +35,7 @@ type ( func (db *pgdb) createModule(ctx context.Context, mod *Module) error { err := db.Querier(ctx).InsertModule(ctx, sqlc.InsertModuleParams{ - ID: sql.ID(mod.ID), + ID: mod.ID, CreatedAt: sql.Timestamptz(mod.CreatedAt), UpdatedAt: sql.Timestamptz(mod.UpdatedAt), Name: sql.String(mod.Name), @@ -49,7 +49,7 @@ func (db *pgdb) createModule(ctx context.Context, mod *Module) error { func (db *pgdb) updateModuleStatus(ctx context.Context, moduleID resource.ID, status ModuleStatus) error { _, err := db.Querier(ctx).UpdateModuleStatusByID(ctx, sqlc.UpdateModuleStatusByIDParams{ Status: sql.String(string(status)), - ModuleID: sql.ID(moduleID), + ModuleID: moduleID, }) if err != nil { return sql.Error(err) @@ -84,7 +84,7 @@ func (db *pgdb) getModule(ctx context.Context, opts GetModuleOptions) (*Module, } func (db *pgdb) getModuleByID(ctx context.Context, id resource.ID) (*Module, error) { - row, err := db.Querier(ctx).FindModuleByID(ctx, sql.ID(id)) + row, err := db.Querier(ctx).FindModuleByID(ctx, id) if err != nil { return nil, sql.Error(err) } @@ -94,7 +94,7 @@ func (db *pgdb) getModuleByID(ctx context.Context, id resource.ID) (*Module, err func (db *pgdb) getModuleByConnection(ctx context.Context, vcsProviderID resource.ID, repoPath string) (*Module, error) { row, err := db.Querier(ctx).FindModuleByConnection(ctx, sqlc.FindModuleByConnectionParams{ - VCSProviderID: sql.ID(vcsProviderID), + VCSProviderID: vcsProviderID, RepoPath: sql.String(repoPath), }) if err != nil { @@ -105,17 +105,17 @@ func (db *pgdb) getModuleByConnection(ctx context.Context, vcsProviderID resourc } func (db *pgdb) delete(ctx context.Context, id resource.ID) error { - _, err := db.Querier(ctx).DeleteModuleByID(ctx, sql.ID(id)) + _, err := db.Querier(ctx).DeleteModuleByID(ctx, id) return sql.Error(err) } func (db *pgdb) createModuleVersion(ctx context.Context, version *ModuleVersion) error { _, err := db.Querier(ctx).InsertModuleVersion(ctx, sqlc.InsertModuleVersionParams{ - ModuleVersionID: sql.ID(version.ID), + ModuleVersionID: version.ID, Version: sql.String(version.Version), CreatedAt: sql.Timestamptz(version.CreatedAt), UpdatedAt: sql.Timestamptz(version.UpdatedAt), - ModuleID: sql.ID(version.ModuleID), + ModuleID: version.ModuleID, Status: sql.String(string(version.Status)), }) if err != nil { @@ -126,7 +126,7 @@ func (db *pgdb) createModuleVersion(ctx context.Context, version *ModuleVersion) func (db *pgdb) updateModuleVersionStatus(ctx context.Context, opts UpdateModuleVersionStatusOptions) error { _, err := db.Querier(ctx).UpdateModuleVersionStatusByID(ctx, sqlc.UpdateModuleVersionStatusByIDParams{ - ModuleVersionID: sql.ID(opts.ID), + ModuleVersionID: opts.ID, Status: sql.String(string(opts.Status)), StatusError: sql.String(opts.Error), }) @@ -134,7 +134,7 @@ func (db *pgdb) updateModuleVersionStatus(ctx context.Context, opts UpdateModule } func (db *pgdb) getModuleByVersionID(ctx context.Context, versionID resource.ID) (*Module, error) { - row, err := db.Querier(ctx).FindModuleByModuleVersionID(ctx, sql.ID(versionID)) + row, err := db.Querier(ctx).FindModuleByModuleVersionID(ctx, versionID) if err != nil { return nil, sql.Error(err) } @@ -142,20 +142,20 @@ func (db *pgdb) getModuleByVersionID(ctx context.Context, versionID resource.ID) } func (db *pgdb) deleteModuleVersion(ctx context.Context, versionID resource.ID) error { - _, err := db.Querier(ctx).DeleteModuleVersionByID(ctx, sql.ID(versionID)) + _, err := db.Querier(ctx).DeleteModuleVersionByID(ctx, versionID) return sql.Error(err) } func (db *pgdb) saveTarball(ctx context.Context, versionID resource.ID, tarball []byte) error { _, err := db.Querier(ctx).InsertModuleTarball(ctx, sqlc.InsertModuleTarballParams{ Tarball: tarball, - ModuleVersionID: sql.ID(versionID), + ModuleVersionID: versionID, }) return sql.Error(err) } func (db *pgdb) getTarball(ctx context.Context, versionID resource.ID) ([]byte, error) { - tarball, err := db.Querier(ctx).FindModuleTarball(ctx, sql.ID(versionID)) + tarball, err := db.Querier(ctx).FindModuleTarball(ctx, versionID) if err != nil { return nil, sql.Error(err) } diff --git a/internal/notifications/db.go b/internal/notifications/db.go index 2bee9c29a..4446a32d5 100644 --- a/internal/notifications/db.go +++ b/internal/notifications/db.go @@ -50,14 +50,14 @@ func (r pgresult) toNotificationConfiguration() *Config { func (db *pgdb) create(ctx context.Context, nc *Config) error { params := sqlc.InsertNotificationConfigurationParams{ - NotificationConfigurationID: sql.ID(nc.ID), + NotificationConfigurationID: nc.ID, CreatedAt: sql.Timestamptz(nc.CreatedAt), UpdatedAt: sql.Timestamptz(nc.UpdatedAt), Name: sql.String(nc.Name), Enabled: sql.Bool(nc.Enabled), DestinationType: sql.String(string(nc.DestinationType)), URL: sql.NullString(), - WorkspaceID: sql.ID(nc.WorkspaceID), + WorkspaceID: nc.WorkspaceID, } for _, t := range nc.Triggers { params.Triggers = append(params.Triggers, sql.String(string(t))) @@ -72,7 +72,7 @@ func (db *pgdb) create(ctx context.Context, nc *Config) error { func (db *pgdb) update(ctx context.Context, id resource.ID, updateFunc func(*Config) error) (*Config, error) { var nc *Config err := db.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { - result, err := q.FindNotificationConfigurationForUpdate(ctx, sql.ID(id)) + result, err := q.FindNotificationConfigurationForUpdate(ctx, id) if err != nil { return sql.Error(err) } @@ -85,7 +85,7 @@ func (db *pgdb) update(ctx context.Context, id resource.ID, updateFunc func(*Con Enabled: sql.Bool(nc.Enabled), Name: sql.String(nc.Name), URL: sql.NullString(), - NotificationConfigurationID: sql.ID(nc.ID), + NotificationConfigurationID: nc.ID, } for _, t := range nc.Triggers { params.Triggers = append(params.Triggers, sql.String(string(t))) @@ -100,7 +100,7 @@ func (db *pgdb) update(ctx context.Context, id resource.ID, updateFunc func(*Con } func (db *pgdb) list(ctx context.Context, workspaceID resource.ID) ([]*Config, error) { - results, err := db.Querier(ctx).FindNotificationConfigurationsByWorkspaceID(ctx, sql.ID(workspaceID)) + results, err := db.Querier(ctx).FindNotificationConfigurationsByWorkspaceID(ctx, workspaceID) if err != nil { return nil, sql.Error(err) } @@ -126,7 +126,7 @@ func (db *pgdb) listAll(ctx context.Context) ([]*Config, error) { } func (db *pgdb) get(ctx context.Context, id resource.ID) (*Config, error) { - row, err := db.Querier(ctx).FindNotificationConfiguration(ctx, sql.ID(id)) + row, err := db.Querier(ctx).FindNotificationConfiguration(ctx, id) if err != nil { return nil, sql.Error(err) } @@ -134,7 +134,7 @@ func (db *pgdb) get(ctx context.Context, id resource.ID) (*Config, error) { } func (db *pgdb) delete(ctx context.Context, id resource.ID) error { - _, err := db.Querier(ctx).DeleteNotificationConfigurationByID(ctx, sql.ID(id)) + _, err := db.Querier(ctx).DeleteNotificationConfigurationByID(ctx, id) if err != nil { return sql.Error(err) } diff --git a/internal/repohooks/db.go b/internal/repohooks/db.go index 9f56c7d05..2ebbfd2ed 100644 --- a/internal/repohooks/db.go +++ b/internal/repohooks/db.go @@ -22,7 +22,7 @@ type ( hookRow struct { RepohookID pgtype.UUID `json:"repohook_id"` VCSID pgtype.Text `json:"vcs_id"` - VCSProviderID pgtype.Text `json:"vcs_provider_id"` + VCSProviderID resource.ID `json:"vcs_provider_id"` Secret pgtype.Text `json:"secret"` RepoPath pgtype.Text `json:"repo_path"` VCSKind pgtype.Text `json:"vcs_kind"` @@ -35,7 +35,7 @@ func (db *db) getOrCreateHook(ctx context.Context, hook *hook) (*hook, error) { q := db.Querier(ctx) result, err := q.FindRepohookByRepoAndProvider(ctx, sqlc.FindRepohookByRepoAndProviderParams{ RepoPath: sql.String(hook.repoPath), - VCSProviderID: sql.ID(hook.vcsProviderID), + VCSProviderID: hook.vcsProviderID, }) if err != nil { return nil, sql.Error(err) @@ -51,7 +51,7 @@ func (db *db) getOrCreateHook(ctx context.Context, hook *hook) (*hook, error) { Secret: sql.String(hook.secret), RepoPath: sql.String(hook.repoPath), VCSID: sql.StringPtr(hook.cloudID), - VCSProviderID: sql.ID(hook.vcsProviderID), + VCSProviderID: hook.vcsProviderID, }) if err != nil { return nil, fmt.Errorf("inserting webhook into db: %w", sql.Error(err)) @@ -127,7 +127,7 @@ func (db *db) deleteHook(ctx context.Context, id uuid.UUID) error { func (db *db) fromRow(row hookRow) (*hook, error) { opts := newRepohookOptions{ id: internal.UUID(row.RepohookID.Bytes), - vcsProviderID: resource.ParseID(row.VCSProviderID.String), + vcsProviderID: row.VCSProviderID, secret: internal.String(row.Secret.String), repoPath: row.RepoPath.String, cloud: vcs.Kind(row.VCSKind.String), diff --git a/internal/run/service.go b/internal/run/service.go index 3958727e3..ec519830d 100644 --- a/internal/run/service.go +++ b/internal/run/service.go @@ -597,7 +597,7 @@ func (s *Service) createApplyReport(ctx context.Context, runID resource.ID) (Rep func (s *Service) getLogs(ctx context.Context, runID resource.ID, phase internal.PhaseType) ([]byte, error) { data, err := s.db.Querier(ctx).FindLogs(ctx, sqlc.FindLogsParams{ - RunID: sql.ID(runID), + RunID: runID, Phase: sql.String(string(phase)), }) if err != nil { diff --git a/internal/runner/db.go b/internal/runner/db.go index 453ee8812..0f7151215 100644 --- a/internal/runner/db.go +++ b/internal/runner/db.go @@ -193,8 +193,8 @@ func (r jobResult) toJob() *Job { func (db *db) createJob(ctx context.Context, job *Job) error { err := db.Querier(ctx).InsertJob(ctx, sqlc.InsertJobParams{ - JobID: sql.ID(job.ID), - RunID: sql.ID(job.RunID), + JobID: job.ID, + RunID: job.RunID, Phase: sql.String(string(job.Phase)), Status: sql.String(string(job.Status)), }) @@ -202,11 +202,11 @@ func (db *db) createJob(ctx context.Context, job *Job) error { } func (db *db) getAllocatedAndSignaledJobs(ctx context.Context, runnerID resource.ID) ([]*Job, error) { - allocated, err := db.Querier(ctx).FindAllocatedJobs(ctx, sql.ID(runnerID)) + allocated, err := db.Querier(ctx).FindAllocatedJobs(ctx, runnerID) if err != nil { return nil, sql.Error(err) } - signaled, err := db.Querier(ctx).FindAndUpdateSignaledJobs(ctx, sql.ID(runnerID)) + signaled, err := db.Querier(ctx).FindAndUpdateSignaledJobs(ctx, runnerID) if err != nil { return nil, sql.Error(err) } @@ -221,7 +221,7 @@ func (db *db) getAllocatedAndSignaledJobs(ctx context.Context, runnerID resource } func (db *db) getJob(ctx context.Context, jobID resource.ID) (*Job, error) { - result, err := db.Querier(ctx).FindJob(ctx, sql.ID(jobID)) + result, err := db.Querier(ctx).FindJob(ctx, jobID) if err != nil { return nil, sql.Error(err) } @@ -243,7 +243,7 @@ func (db *db) listJobs(ctx context.Context) ([]*Job, error) { func (db *db) updateJob(ctx context.Context, jobID resource.ID, fn func(*Job) error) (*Job, error) { var job *Job err := db.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { - result, err := q.FindJobForUpdate(ctx, sql.ID(jobID)) + result, err := q.FindJobForUpdate(ctx, jobID) if err != nil { return err } @@ -272,7 +272,7 @@ func (db *db) updateJobByRunPhase(ctx context.Context, runID resource.ID, runPha var job *Job err := db.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { result, err := q.FindJobForUpdateByRunPhase(ctx, sqlc.FindJobForUpdateByRunPhaseParams{ - RunID: sql.ID(runID), + RunID: runID, Phase: sql.String(string(runPhase)), }) if err != nil { @@ -319,15 +319,15 @@ func (row agentTokenRow) toAgentToken() *agentToken { func (db *db) createAgentToken(ctx context.Context, token *agentToken) error { return db.Querier(ctx).InsertAgentToken(ctx, sqlc.InsertAgentTokenParams{ - AgentTokenID: sql.ID(token.ID), + AgentTokenID: token.ID, Description: sql.String(token.Description), - AgentPoolID: sql.ID(token.AgentPoolID), + AgentPoolID: token.AgentPoolID, CreatedAt: sql.Timestamptz(token.CreatedAt.UTC()), }) } func (db *db) getAgentTokenByID(ctx context.Context, id resource.ID) (*agentToken, error) { - r, err := db.Querier(ctx).FindAgentTokenByID(ctx, sql.ID(id)) + r, err := db.Querier(ctx).FindAgentTokenByID(ctx, id) if err != nil { return nil, sql.Error(err) } @@ -335,7 +335,7 @@ func (db *db) getAgentTokenByID(ctx context.Context, id resource.ID) (*agentToke } func (db *db) listAgentTokens(ctx context.Context, poolID resource.ID) ([]*agentToken, error) { - rows, err := db.Querier(ctx).FindAgentTokensByAgentPoolID(ctx, sql.ID(poolID)) + rows, err := db.Querier(ctx).FindAgentTokensByAgentPoolID(ctx, poolID) if err != nil { return nil, sql.Error(err) } @@ -347,7 +347,7 @@ func (db *db) listAgentTokens(ctx context.Context, poolID resource.ID) ([]*agent } func (db *db) deleteAgentToken(ctx context.Context, id resource.ID) error { - _, err := db.Querier(ctx).DeleteAgentTokenByID(ctx, sql.ID(id)) + _, err := db.Querier(ctx).DeleteAgentTokenByID(ctx, id) if err != nil { return sql.Error(err) } @@ -399,8 +399,8 @@ func (db *db) createPool(ctx context.Context, pool *Pool) error { } for _, workspaceID := range pool.AllowedWorkspaces { err := q.InsertAgentPoolAllowedWorkspace(ctx, sqlc.InsertAgentPoolAllowedWorkspaceParams{ - PoolID: sql.ID(pool.ID), - WorkspaceID: sql.ID(workspaceID), + PoolID: pool.ID, + WorkspaceID: workspaceID, }) if err != nil { return err @@ -428,8 +428,8 @@ func (db *db) updatePool(ctx context.Context, pool *Pool) error { func (db *db) addAgentPoolAllowedWorkspace(ctx context.Context, poolID, workspaceID resource.ID) error { err := db.Querier(ctx).InsertAgentPoolAllowedWorkspace(ctx, sqlc.InsertAgentPoolAllowedWorkspaceParams{ - PoolID: sql.ID(poolID), - WorkspaceID: sql.ID(workspaceID), + PoolID: poolID, + WorkspaceID: workspaceID, }) if err != nil { return err @@ -439,8 +439,8 @@ func (db *db) addAgentPoolAllowedWorkspace(ctx context.Context, poolID, workspac func (db *db) deleteAgentPoolAllowedWorkspace(ctx context.Context, poolID, workspaceID resource.ID) error { err := db.Querier(ctx).DeleteAgentPoolAllowedWorkspace(ctx, sqlc.DeleteAgentPoolAllowedWorkspaceParams{ - PoolID: sql.ID(poolID), - WorkspaceID: sql.ID(workspaceID), + PoolID: poolID, + WorkspaceID: workspaceID, }) if err != nil { return err @@ -457,7 +457,7 @@ func (db *db) getPool(ctx context.Context, poolID resource.ID) (*Pool, error) { } func (db *db) getPoolByTokenID(ctx context.Context, tokenID resource.ID) (*Pool, error) { - result, err := db.Querier(ctx).FindAgentPoolByAgentTokenID(ctx, sql.ID(tokenID)) + result, err := db.Querier(ctx).FindAgentPoolByAgentTokenID(ctx, tokenID) if err != nil { return nil, sql.Error(err) } diff --git a/internal/sql/queries/repohook.sql b/internal/sql/queries/repohook.sql index d3aa8dd27..42f70693b 100644 --- a/internal/sql/queries/repohook.sql +++ b/internal/sql/queries/repohook.sql @@ -18,7 +18,7 @@ WITH inserted AS ( SELECT w.repohook_id, w.vcs_id, - w.vcs_provider_id, + v.vcs_provider_id, w.secret, w.repo_path, v.vcs_kind diff --git a/internal/sql/sqlc/models.go b/internal/sql/sqlc/models.go index a075b0143..d62f97e53 100644 --- a/internal/sql/sqlc/models.go +++ b/internal/sql/sqlc/models.go @@ -320,7 +320,7 @@ type StateVersionStatus struct { } type Tag struct { - TagID pgtype.Text + TagID resource.ID Name pgtype.Text OrganizationName pgtype.Text } @@ -440,7 +440,7 @@ type Workspace struct { LatestRunID *resource.ID OrganizationName pgtype.Text Branch pgtype.Text - CurrentStateVersionID pgtype.Text + CurrentStateVersionID *resource.ID TriggerPatterns []pgtype.Text VCSTagsRegex pgtype.Text AllowCLIApply pgtype.Bool diff --git a/internal/sql/sqlc/repohook.sql.go b/internal/sql/sqlc/repohook.sql.go index d519797d8..5e2b5b719 100644 --- a/internal/sql/sqlc/repohook.sql.go +++ b/internal/sql/sqlc/repohook.sql.go @@ -244,7 +244,7 @@ WITH inserted AS ( SELECT w.repohook_id, w.vcs_id, - w.vcs_provider_id, + v.vcs_provider_id, w.secret, w.repo_path, v.vcs_kind @@ -263,7 +263,7 @@ type InsertRepohookParams struct { type InsertRepohookRow struct { RepohookID pgtype.UUID VCSID pgtype.Text - VCSProviderID pgtype.Text + VCSProviderID resource.ID Secret pgtype.Text RepoPath pgtype.Text VCSKind pgtype.Text diff --git a/internal/sql/sqlc/tags.sql.go b/internal/sql/sqlc/tags.sql.go index 567c57564..4035c1d8d 100644 --- a/internal/sql/sqlc/tags.sql.go +++ b/internal/sql/sqlc/tags.sql.go @@ -47,13 +47,13 @@ RETURNING tag_id ` type DeleteTagParams struct { - TagID pgtype.Text + TagID resource.ID OrganizationName pgtype.Text } -func (q *Queries) DeleteTag(ctx context.Context, arg DeleteTagParams) (pgtype.Text, error) { +func (q *Queries) DeleteTag(ctx context.Context, arg DeleteTagParams) (resource.ID, error) { row := q.db.QueryRow(ctx, deleteTag, arg.TagID, arg.OrganizationName) - var tag_id pgtype.Text + var tag_id resource.ID err := row.Scan(&tag_id) return tag_id, err } @@ -92,12 +92,12 @@ AND t.organization_name = $2 ` type FindTagByIDParams struct { - TagID pgtype.Text + TagID resource.ID OrganizationName pgtype.Text } type FindTagByIDRow struct { - TagID pgtype.Text + TagID resource.ID Name pgtype.Text OrganizationName pgtype.Text InstanceCount int64 @@ -134,7 +134,7 @@ type FindTagByNameParams struct { } type FindTagByNameRow struct { - TagID pgtype.Text + TagID resource.ID Name pgtype.Text OrganizationName pgtype.Text InstanceCount int64 @@ -173,7 +173,7 @@ type FindTagsParams struct { } type FindTagsRow struct { - TagID pgtype.Text + TagID resource.ID Name pgtype.Text OrganizationName pgtype.Text InstanceCount int64 @@ -226,7 +226,7 @@ type FindWorkspaceTagsParams struct { } type FindWorkspaceTagsRow struct { - TagID pgtype.Text + TagID resource.ID Name pgtype.Text OrganizationName pgtype.Text InstanceCount int64 @@ -270,7 +270,7 @@ INSERT INTO tags ( ` type InsertTagParams struct { - TagID pgtype.Text + TagID resource.ID Name pgtype.Text OrganizationName pgtype.Text } diff --git a/internal/sql/sqlc/workspace.sql.go b/internal/sql/sqlc/workspace.sql.go index 3dfc59296..c33799897 100644 --- a/internal/sql/sqlc/workspace.sql.go +++ b/internal/sql/sqlc/workspace.sql.go @@ -117,7 +117,7 @@ type FindWorkspaceByIDRow struct { LatestRunID *resource.ID OrganizationName pgtype.Text Branch pgtype.Text - CurrentStateVersionID pgtype.Text + CurrentStateVersionID *resource.ID TriggerPatterns []pgtype.Text VCSTagsRegex pgtype.Text AllowCLIApply pgtype.Bool @@ -215,7 +215,7 @@ type FindWorkspaceByIDForUpdateRow struct { LatestRunID *resource.ID OrganizationName pgtype.Text Branch pgtype.Text - CurrentStateVersionID pgtype.Text + CurrentStateVersionID *resource.ID TriggerPatterns []pgtype.Text VCSTagsRegex pgtype.Text AllowCLIApply pgtype.Bool @@ -319,7 +319,7 @@ type FindWorkspaceByNameRow struct { LatestRunID *resource.ID OrganizationName pgtype.Text Branch pgtype.Text - CurrentStateVersionID pgtype.Text + CurrentStateVersionID *resource.ID TriggerPatterns []pgtype.Text VCSTagsRegex pgtype.Text AllowCLIApply pgtype.Bool @@ -432,7 +432,7 @@ type FindWorkspacesRow struct { LatestRunID *resource.ID OrganizationName pgtype.Text Branch pgtype.Text - CurrentStateVersionID pgtype.Text + CurrentStateVersionID *resource.ID TriggerPatterns []pgtype.Text VCSTagsRegex pgtype.Text AllowCLIApply pgtype.Bool @@ -554,7 +554,7 @@ type FindWorkspacesByConnectionRow struct { LatestRunID *resource.ID OrganizationName pgtype.Text Branch pgtype.Text - CurrentStateVersionID pgtype.Text + CurrentStateVersionID *resource.ID TriggerPatterns []pgtype.Text VCSTagsRegex pgtype.Text AllowCLIApply pgtype.Bool @@ -679,7 +679,7 @@ type FindWorkspacesByUsernameRow struct { LatestRunID *resource.ID OrganizationName pgtype.Text Branch pgtype.Text - CurrentStateVersionID pgtype.Text + CurrentStateVersionID *resource.ID TriggerPatterns []pgtype.Text VCSTagsRegex pgtype.Text AllowCLIApply pgtype.Bool @@ -952,7 +952,7 @@ RETURNING workspace_id ` type UpdateWorkspaceCurrentStateVersionIDParams struct { - StateVersionID pgtype.Text + StateVersionID *resource.ID WorkspaceID resource.ID } diff --git a/internal/state/db.go b/internal/state/db.go index f1d3d893a..1ac189c78 100644 --- a/internal/state/db.go +++ b/internal/state/db.go @@ -19,11 +19,11 @@ type ( // pgRow is a row from a postgres query for a state version. pgRow struct { - StateVersionID pgtype.Text `json:"state_version_id"` + StateVersionID resource.ID `json:"state_version_id"` CreatedAt pgtype.Timestamptz `json:"created_at"` Serial pgtype.Int4 `json:"serial"` State []byte `json:"state"` - WorkspaceID pgtype.Text `json:"workspace_id"` + WorkspaceID resource.ID `json:"workspace_id"` Status pgtype.Text `json:"status"` StateVersionOutputs []sqlc.StateVersionOutput `json:"state_version_outputs"` } @@ -31,12 +31,12 @@ type ( func (row pgRow) toVersion() *Version { sv := Version{ - ID: resource.ParseID(row.StateVersionID.String), + ID: row.StateVersionID, CreatedAt: row.CreatedAt.Time.UTC(), Serial: int64(row.Serial.Int32), State: row.State, Status: Status(row.Status.String), - WorkspaceID: resource.ParseID(row.WorkspaceID.String), + WorkspaceID: row.WorkspaceID, Outputs: make(map[string]*Output, len(row.StateVersionOutputs)), } for _, r := range row.StateVersionOutputs { @@ -48,12 +48,12 @@ func (row pgRow) toVersion() *Version { func (db *pgdb) createVersion(ctx context.Context, v *Version) error { return db.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { err := q.InsertStateVersion(ctx, sqlc.InsertStateVersionParams{ - ID: sql.ID(v.ID), + ID: v.ID, CreatedAt: sql.Timestamptz(v.CreatedAt), Serial: sql.Int4(int(v.Serial)), State: v.State, Status: sql.String(string(v.Status)), - WorkspaceID: sql.ID(v.WorkspaceID), + WorkspaceID: v.WorkspaceID, }) if err != nil { return err @@ -61,12 +61,12 @@ func (db *pgdb) createVersion(ctx context.Context, v *Version) error { for _, svo := range v.Outputs { err := q.InsertStateVersionOutput(ctx, sqlc.InsertStateVersionOutputParams{ - ID: sql.ID(svo.ID), + ID: svo.ID, Name: sql.String(svo.Name), Sensitive: sql.Bool(svo.Sensitive), Type: sql.String(svo.Type), Value: svo.Value, - StateVersionID: sql.ID(v.ID), + StateVersionID: v.ID, }) if err != nil { return err @@ -80,12 +80,12 @@ func (db *pgdb) createOutputs(ctx context.Context, outputs []*Output) error { return db.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { for _, svo := range outputs { err := q.InsertStateVersionOutput(ctx, sqlc.InsertStateVersionOutputParams{ - ID: sql.ID(svo.ID), + ID: svo.ID, Name: sql.String(svo.Name), Sensitive: sql.Bool(svo.Sensitive), Type: sql.String(svo.Type), Value: svo.Value, - StateVersionID: sql.ID(svo.StateVersionID), + StateVersionID: svo.StateVersionID, }) if err != nil { return err @@ -98,7 +98,7 @@ func (db *pgdb) createOutputs(ctx context.Context, outputs []*Output) error { func (db *pgdb) uploadStateAndFinalize(ctx context.Context, svID resource.ID, state []byte) error { err := db.Querier(ctx).UpdateState(ctx, sqlc.UpdateStateParams{ State: state, - StateVersionID: sql.ID(svID), + StateVersionID: svID, }) return sql.Error(err) } @@ -107,7 +107,7 @@ func (db *pgdb) listVersions(ctx context.Context, workspaceID resource.ID, opts q := db.Querier(ctx) rows, err := q.FindStateVersionsByWorkspaceID(ctx, sqlc.FindStateVersionsByWorkspaceIDParams{ - WorkspaceID: sql.ID(workspaceID), + WorkspaceID: workspaceID, Limit: sql.GetLimit(opts), Offset: sql.GetOffset(opts), }) @@ -115,7 +115,7 @@ func (db *pgdb) listVersions(ctx context.Context, workspaceID resource.ID, opts return nil, err } - count, err := q.CountStateVersionsByWorkspaceID(ctx, sql.ID(workspaceID)) + count, err := q.CountStateVersionsByWorkspaceID(ctx, workspaceID) if err != nil { return nil, err } @@ -128,7 +128,7 @@ func (db *pgdb) listVersions(ctx context.Context, workspaceID resource.ID, opts } func (db *pgdb) getVersion(ctx context.Context, svID resource.ID) (*Version, error) { - result, err := db.Querier(ctx).FindStateVersionByID(ctx, sql.ID(svID)) + result, err := db.Querier(ctx).FindStateVersionByID(ctx, svID) if err != nil { return nil, sql.Error(err) } @@ -136,7 +136,7 @@ func (db *pgdb) getVersion(ctx context.Context, svID resource.ID) (*Version, err } func (db *pgdb) getVersionForUpdate(ctx context.Context, svID resource.ID) (*Version, error) { - result, err := db.Querier(ctx).FindStateVersionByIDForUpdate(ctx, sql.ID(svID)) + result, err := db.Querier(ctx).FindStateVersionByIDForUpdate(ctx, svID) if err != nil { return nil, sql.Error(err) } @@ -144,7 +144,7 @@ func (db *pgdb) getVersionForUpdate(ctx context.Context, svID resource.ID) (*Ver } func (db *pgdb) getCurrentVersion(ctx context.Context, workspaceID resource.ID) (*Version, error) { - result, err := db.Querier(ctx).FindCurrentStateVersionByWorkspaceID(ctx, sql.ID(workspaceID)) + result, err := db.Querier(ctx).FindCurrentStateVersionByWorkspaceID(ctx, workspaceID) if err != nil { return nil, sql.Error(err) } @@ -152,12 +152,12 @@ func (db *pgdb) getCurrentVersion(ctx context.Context, workspaceID resource.ID) } func (db *pgdb) getState(ctx context.Context, id resource.ID) ([]byte, error) { - return db.Querier(ctx).FindStateVersionStateByID(ctx, sql.ID(id)) + return db.Querier(ctx).FindStateVersionStateByID(ctx, id) } // deleteVersion deletes a state version from the DB func (db *pgdb) deleteVersion(ctx context.Context, id resource.ID) error { - _, err := db.Querier(ctx).DeleteStateVersionByID(ctx, sql.ID(id)) + _, err := db.Querier(ctx).DeleteStateVersionByID(ctx, id) if err != nil { err = sql.Error(err) var fkerr *internal.ForeignKeyError @@ -173,8 +173,8 @@ func (db *pgdb) deleteVersion(ctx context.Context, id resource.ID) error { func (db *pgdb) updateCurrentVersion(ctx context.Context, workspaceID, svID resource.ID) error { _, err := db.Querier(ctx).UpdateWorkspaceCurrentStateVersionID(ctx, sqlc.UpdateWorkspaceCurrentStateVersionIDParams{ - StateVersionID: sql.ID(svID), - WorkspaceID: sql.ID(workspaceID), + StateVersionID: svID, + WorkspaceID: workspaceID, }) if err != nil { return sql.Error(err) @@ -183,7 +183,7 @@ func (db *pgdb) updateCurrentVersion(ctx context.Context, workspaceID, svID reso } func (db *pgdb) discardPending(ctx context.Context, workspaceID resource.ID) error { - err := db.Querier(ctx).DiscardPendingStateVersionsByWorkspaceID(ctx, sql.ID(workspaceID)) + err := db.Querier(ctx).DiscardPendingStateVersionsByWorkspaceID(ctx, workspaceID) if err != nil { return sql.Error(err) } diff --git a/internal/state/output_db.go b/internal/state/output_db.go index 42a382170..5d3acfdf3 100644 --- a/internal/state/output_db.go +++ b/internal/state/output_db.go @@ -9,29 +9,29 @@ import ( ) type outputRow struct { - StateVersionOutputID pgtype.Text `json:"state_version_output_id"` + StateVersionOutputID resource.ID `json:"state_version_output_id"` Name pgtype.Text `json:"name"` Sensitive pgtype.Bool `json:"sensitive"` Type pgtype.Text `json:"type"` Value []byte `json:"value"` - StateVersionID pgtype.Text `json:"state_version_id"` + StateVersionID resource.ID `json:"state_version_id"` } // unmarshalVersionOutputRow unmarshals a database row into a state version // output. func (row outputRow) toOutput() *Output { return &Output{ - ID: resource.ParseID(row.StateVersionOutputID.String), + ID: row.StateVersionOutputID, Sensitive: row.Sensitive.Bool, Type: row.Type.String, Value: row.Value, Name: row.Name.String, - StateVersionID: resource.ParseID(row.StateVersionID.String), + StateVersionID: row.StateVersionID, } } func (db *pgdb) getOutput(ctx context.Context, outputID resource.ID) (*Output, error) { - result, err := db.Querier(ctx).FindStateVersionOutputByID(ctx, sql.ID(outputID)) + result, err := db.Querier(ctx).FindStateVersionOutputByID(ctx, outputID) if err != nil { return nil, sql.Error(err) } diff --git a/internal/variable/db.go b/internal/variable/db.go index b154b6152..674962f7d 100644 --- a/internal/variable/db.go +++ b/internal/variable/db.go @@ -225,8 +225,8 @@ func (pdb *pgdb) createVariableSetWorkspaces(ctx context.Context, setID resource err := pdb.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { for _, wid := range workspaceIDs { err := pdb.Querier(ctx).InsertVariableSetWorkspace(ctx, sqlc.InsertVariableSetWorkspaceParams{ - VariableSetID: sql.ID(setID), - WorkspaceID: sql.ID(wid), + VariableSetID: setID, + WorkspaceID: wid, }) if err != nil { return err @@ -238,7 +238,7 @@ func (pdb *pgdb) createVariableSetWorkspaces(ctx context.Context, setID resource } func (pdb *pgdb) deleteAllVariableSetWorkspaces(ctx context.Context, setID resource.ID) error { - err := pdb.Querier(ctx).DeleteVariableSetWorkspaces(ctx, sql.ID(setID)) + err := pdb.Querier(ctx).DeleteVariableSetWorkspaces(ctx, setID) return sql.Error(err) } @@ -246,8 +246,8 @@ func (pdb *pgdb) deleteVariableSetWorkspaces(ctx context.Context, setID resource err := pdb.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { for _, wid := range workspaceIDs { _, err := pdb.Querier(ctx).DeleteVariableSetWorkspace(ctx, sqlc.DeleteVariableSetWorkspaceParams{ - VariableSetID: sql.ID(setID), - WorkspaceID: sql.ID(wid), + VariableSetID: setID, + WorkspaceID: wid, }) if err != nil { return err @@ -260,7 +260,7 @@ func (pdb *pgdb) deleteVariableSetWorkspaces(ctx context.Context, setID resource func (pdb *pgdb) createVariable(ctx context.Context, v *Variable) error { err := pdb.Querier(ctx).InsertVariable(ctx, sqlc.InsertVariableParams{ - VariableID: sql.ID(v.ID), + VariableID: v.ID, Key: sql.String(v.Key), Value: sql.String(v.Value), Description: sql.String(v.Description), @@ -274,7 +274,7 @@ func (pdb *pgdb) createVariable(ctx context.Context, v *Variable) error { func (pdb *pgdb) updateVariable(ctx context.Context, v *Variable) error { _, err := pdb.Querier(ctx).UpdateVariableByID(ctx, sqlc.UpdateVariableByIDParams{ - VariableID: sql.ID(v.ID), + VariableID: v.ID, Key: sql.String(v.Key), Value: sql.String(v.Value), Description: sql.String(v.Description), @@ -287,6 +287,6 @@ func (pdb *pgdb) updateVariable(ctx context.Context, v *Variable) error { } func (pdb *pgdb) deleteVariable(ctx context.Context, variableID resource.ID) error { - _, err := pdb.Querier(ctx).DeleteVariableByID(ctx, sql.ID(variableID)) + _, err := pdb.Querier(ctx).DeleteVariableByID(ctx, variableID) return sql.Error(err) } diff --git a/internal/vcsprovider/db.go b/internal/vcsprovider/db.go index 3ab294a13..2ecfe7b70 100644 --- a/internal/vcsprovider/db.go +++ b/internal/vcsprovider/db.go @@ -20,7 +20,7 @@ type ( } // pgRow represents a database row for a vcs provider pgRow struct { - VCSProviderID pgtype.Text + VCSProviderID resource.ID Token pgtype.Text CreatedAt pgtype.Timestamptz Name pgtype.Text @@ -35,7 +35,7 @@ type ( func (db *pgdb) create(ctx context.Context, provider *VCSProvider) error { err := db.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { params := sqlc.InsertVCSProviderParams{ - VCSProviderID: sql.ID(provider.ID), + VCSProviderID: provider.ID, Name: sql.String(provider.Name), VCSKind: sql.String(string(provider.Kind)), OrganizationName: sql.String(provider.Organization), @@ -54,7 +54,7 @@ func (db *pgdb) create(ctx context.Context, provider *VCSProvider) error { InstallID: pgtype.Int8{Int64: provider.GithubApp.ID, Valid: true}, Username: sql.StringPtr(provider.GithubApp.User), Organization: sql.StringPtr(provider.GithubApp.Organization), - VCSProviderID: sql.ID(provider.ID), + VCSProviderID: provider.ID, }) if err != nil { return err @@ -68,7 +68,7 @@ func (db *pgdb) create(ctx context.Context, provider *VCSProvider) error { func (db *pgdb) update(ctx context.Context, id resource.ID, fn func(*VCSProvider) error) error { var provider *VCSProvider err := db.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { - row, err := q.FindVCSProviderForUpdate(ctx, sql.ID(id)) + row, err := q.FindVCSProviderForUpdate(ctx, id) if err != nil { return sql.Error(err) } @@ -80,7 +80,7 @@ func (db *pgdb) update(ctx context.Context, id resource.ID, fn func(*VCSProvider return err } _, err = q.UpdateVCSProvider(ctx, sqlc.UpdateVCSProviderParams{ - VCSProviderID: sql.ID(id), + VCSProviderID: id, Token: sql.StringPtr(provider.Token), Name: sql.String(provider.Name), }) @@ -93,7 +93,7 @@ func (db *pgdb) update(ctx context.Context, id resource.ID, fn func(*VCSProvider } func (db *pgdb) get(ctx context.Context, id resource.ID) (*VCSProvider, error) { - row, err := db.Querier(ctx).FindVCSProvider(ctx, sql.ID(id)) + row, err := db.Querier(ctx).FindVCSProvider(ctx, id) if err != nil { return nil, sql.Error(err) } @@ -151,7 +151,7 @@ func (db *pgdb) listByGithubAppInstall(ctx context.Context, installID int64) ([] } func (db *pgdb) delete(ctx context.Context, id resource.ID) error { - _, err := db.Querier(ctx).DeleteVCSProviderByID(ctx, sql.ID(id)) + _, err := db.Querier(ctx).DeleteVCSProviderByID(ctx, id) if err != nil { return sql.Error(err) } @@ -186,5 +186,5 @@ func (db *pgdb) toProvider(ctx context.Context, row pgRow) (*VCSProvider, error) creds.Organization = &row.GithubAppInstall.Organization.String } } - return db.fromDB(ctx, opts, creds, resource.ParseID(row.VCSProviderID.String), row.CreatedAt.Time.UTC()) + return db.fromDB(ctx, opts, creds, row.VCSProviderID, row.CreatedAt.Time.UTC()) } diff --git a/internal/workspace/lock_db.go b/internal/workspace/lock_db.go index 2180a2734..8890e56fc 100644 --- a/internal/workspace/lock_db.go +++ b/internal/workspace/lock_db.go @@ -13,7 +13,7 @@ func (db *pgdb) toggleLock(ctx context.Context, workspaceID resource.ID, togglef var ws *Workspace err := db.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { // retrieve workspace - result, err := q.FindWorkspaceByIDForUpdate(ctx, sql.ID(workspaceID)) + result, err := q.FindWorkspaceByIDForUpdate(ctx, workspaceID) if err != nil { return err } @@ -26,7 +26,7 @@ func (db *pgdb) toggleLock(ctx context.Context, workspaceID resource.ID, togglef } // persist to db params := sqlc.UpdateWorkspaceLockByIDParams{ - WorkspaceID: sql.ID(ws.ID), + WorkspaceID: ws.ID, } if ws.Locked() { switch ws.Lock.Kind { diff --git a/internal/workspace/permissions_db.go b/internal/workspace/permissions_db.go index 7ec68ac35..93ad69db9 100644 --- a/internal/workspace/permissions_db.go +++ b/internal/workspace/permissions_db.go @@ -12,8 +12,8 @@ import ( func (db *pgdb) SetWorkspacePermission(ctx context.Context, workspaceID, teamID resource.ID, role rbac.Role) error { err := db.Querier(ctx).UpsertWorkspacePermission(ctx, sqlc.UpsertWorkspacePermissionParams{ - WorkspaceID: sql.ID(workspaceID), - TeamID: sql.ID(teamID), + WorkspaceID: workspaceID, + TeamID: teamID, Role: sql.String(role.String()), }) if err != nil { @@ -28,11 +28,11 @@ func (db *pgdb) GetWorkspacePolicy(ctx context.Context, workspaceID resource.ID) // Retrieve not only permissions but the workspace too, so that: // (1) we ensure that workspace exists and return not found if not // (2) we retrieve the name of the organization, which is part of a policy - ws, err := q.FindWorkspaceByID(ctx, sql.ID(workspaceID)) + ws, err := q.FindWorkspaceByID(ctx, workspaceID) if err != nil { return authz.WorkspacePolicy{}, sql.Error(err) } - perms, err := q.FindWorkspacePermissionsByWorkspaceID(ctx, sql.ID(workspaceID)) + perms, err := q.FindWorkspacePermissionsByWorkspaceID(ctx, workspaceID) if err != nil { return authz.WorkspacePolicy{}, sql.Error(err) } @@ -57,8 +57,8 @@ func (db *pgdb) GetWorkspacePolicy(ctx context.Context, workspaceID resource.ID) func (db *pgdb) UnsetWorkspacePermission(ctx context.Context, workspaceID, teamID resource.ID) error { err := db.Querier(ctx).DeleteWorkspacePermissionByID(ctx, sqlc.DeleteWorkspacePermissionByIDParams{ - WorkspaceID: sql.ID(workspaceID), - TeamID: sql.ID(teamID), + WorkspaceID: workspaceID, + TeamID: teamID, }) if err != nil { return sql.Error(err) diff --git a/internal/workspace/tag_db.go b/internal/workspace/tag_db.go index 4f9b52aa9..82adce9eb 100644 --- a/internal/workspace/tag_db.go +++ b/internal/workspace/tag_db.go @@ -13,7 +13,7 @@ import ( type ( // pgresult represents the result of a database query for a tag. tagresult struct { - TagID pgtype.Text + TagID resource.ID Name pgtype.Text OrganizationName pgtype.Text InstanceCount int64 @@ -23,7 +23,7 @@ type ( // toTag converts a database result into a tag func (r tagresult) toTag() *Tag { return &Tag{ - ID: resource.ParseID(r.TagID.String), + ID: r.TagID, Name: r.Name.String, Organization: r.OrganizationName.String, InstanceCount: int(r.InstanceCount), @@ -57,7 +57,7 @@ func (db *pgdb) deleteTags(ctx context.Context, organization string, tagIDs []re err := db.Tx(ctx, func(ctx context.Context, q *sqlc.Queries) error { for _, tid := range tagIDs { _, err := q.DeleteTag(ctx, sqlc.DeleteTagParams{ - TagID: sql.ID(tid), + TagID: tid, OrganizationName: sql.String(organization), }) if err != nil { @@ -71,7 +71,7 @@ func (db *pgdb) deleteTags(ctx context.Context, organization string, tagIDs []re func (db *pgdb) addTag(ctx context.Context, organization, name string, tagID resource.ID) error { err := db.Querier(ctx).InsertTag(ctx, sqlc.InsertTagParams{ - TagID: sql.ID(tagID), + TagID: tagID, Name: sql.String(name), OrganizationName: sql.String(organization), }) @@ -94,7 +94,7 @@ func (db *pgdb) findTagByName(ctx context.Context, organization string, name str func (db *pgdb) findTagByID(ctx context.Context, organization string, id resource.ID) (*Tag, error) { tag, err := db.Querier(ctx).FindTagByID(ctx, sqlc.FindTagByIDParams{ - TagID: sql.ID(id), + TagID: id, OrganizationName: sql.String(organization), }) if err != nil { @@ -105,8 +105,8 @@ func (db *pgdb) findTagByID(ctx context.Context, organization string, id resourc func (db *pgdb) tagWorkspace(ctx context.Context, workspaceID, tagID resource.ID) error { _, err := db.Querier(ctx).InsertWorkspaceTag(ctx, sqlc.InsertWorkspaceTagParams{ - TagID: sql.ID(tagID), - WorkspaceID: sql.ID(workspaceID), + TagID: tagID, + WorkspaceID: workspaceID, }) if err != nil { return sql.Error(err) @@ -116,8 +116,8 @@ func (db *pgdb) tagWorkspace(ctx context.Context, workspaceID, tagID resource.ID func (db *pgdb) deleteWorkspaceTag(ctx context.Context, workspaceID, tagID resource.ID) error { _, err := db.Querier(ctx).DeleteWorkspaceTag(ctx, sqlc.DeleteWorkspaceTagParams{ - WorkspaceID: sql.ID(workspaceID), - TagID: sql.ID(tagID), + WorkspaceID: workspaceID, + TagID: tagID, }) if err != nil { return sql.Error(err) @@ -129,14 +129,14 @@ func (db *pgdb) listWorkspaceTags(ctx context.Context, workspaceID resource.ID, q := db.Querier(ctx) rows, err := q.FindWorkspaceTags(ctx, sqlc.FindWorkspaceTagsParams{ - WorkspaceID: sql.ID(workspaceID), + WorkspaceID: workspaceID, Limit: sql.GetLimit(opts.PageOptions), Offset: sql.GetOffset(opts.PageOptions), }) if err != nil { return nil, sql.Error(err) } - count, err := q.CountTags(ctx, sql.ID(workspaceID)) + count, err := q.CountWorkspaceTags(ctx, workspaceID) if err != nil { return nil, sql.Error(err) } diff --git a/sqlc.yaml b/sqlc.yaml index 2984792a1..41eb03d99 100644 --- a/sqlc.yaml +++ b/sqlc.yaml @@ -229,6 +229,10 @@ sql: go_type: import: "github.com/leg100/otf/internal/resource" type: "ID" + - column: "tags.tag_id" + go_type: + import: "github.com/leg100/otf/internal/resource" + type: "ID" - column: "team_memberships.team_id" go_type: import: "github.com/leg100/otf/internal/resource" @@ -290,6 +294,11 @@ sql: import: "github.com/leg100/otf/internal/resource" type: "ID" pointer: true + - column: "workspaces.current_state_version_id" + go_type: + import: "github.com/leg100/otf/internal/resource" + type: "ID" + pointer: true - column: "workspaces.lock_run_id" go_type: import: "github.com/leg100/otf/internal/resource"