diff --git a/go/Makefile b/go/Makefile index 1628da1954..1aac885fa7 100644 --- a/go/Makefile +++ b/go/Makefile @@ -1,4 +1,4 @@ -.PHONY: install fmt test-unit test-integration test-integration-long test-stress test build generate pull up clean +.PHONY: install tools fmt test-unit test-integration test-integration-long test-stress test build generate pull up clean # Detect OS and set GOMAXPROCS accordingly UNAME_S := $(shell uname -s) @@ -16,6 +16,11 @@ PARALLEL_PROCS := $(shell if [ $(GOMAXPROCS_VAL) -gt 1 ]; then expr $(GOMAXPROCS install: go mod tidy +tools: + go install github.com/bufbuild/buf/cmd/buf@v1.57.0 + go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.4.0 + go install github.com/sqlc-dev/sqlc/cmd/sqlc@v1.28.0 + fmt: go fmt ./... golangci-lint run diff --git a/go/apps/ctrl/services/deployment/create_version.go b/go/apps/ctrl/services/deployment/create_version.go index 20bba9e85f..1647495f1d 100644 --- a/go/apps/ctrl/services/deployment/create_version.go +++ b/go/apps/ctrl/services/deployment/create_version.go @@ -4,6 +4,7 @@ import ( "context" "database/sql" "fmt" + "strings" "time" "connectrpc.com/connect" @@ -13,6 +14,20 @@ import ( "github.com/unkeyed/unkey/go/pkg/uid" ) +// limitString truncates a string to the specified maximum number of runes +func limitString(s string, maxRunes int) string { + runes := []rune(s) + if len(runes) > maxRunes { + return string(runes[:maxRunes]) + } + return s +} + +// CreateVersion creates a new deployment version record and kicks off the deployment workflow. +// It validates workspace/project, normalizes git metadata (branch fallback, commit fields), +// and persists the deployment in "pending" state. Workflow failures are logged but do not +// fail creation to allow retries. + func (s *Service) CreateVersion( ctx context.Context, req *connect.Request[ctrlv1.CreateVersionRequest], @@ -53,6 +68,23 @@ func (s *Service) CreateVersion( } } + // Validate git commit timestamp if provided (must be Unix epoch milliseconds) + if req.Msg.GetGitCommitTimestamp() != 0 { + timestamp := req.Msg.GetGitCommitTimestamp() + // Reject timestamps that are clearly in seconds format (< 1_000_000_000_000) + // This corresponds to January 1, 2001 in milliseconds + if timestamp < 1_000_000_000_000 { + return nil, connect.NewError(connect.CodeInvalidArgument, + fmt.Errorf("git_commit_timestamp must be Unix epoch milliseconds, got %d (appears to be seconds format)", timestamp)) + } + // Also reject future timestamps more than 1 hour ahead (likely invalid) + maxValidTimestamp := time.Now().Add(1 * time.Hour).UnixMilli() + if timestamp > maxValidTimestamp { + return nil, connect.NewError(connect.CodeInvalidArgument, + fmt.Errorf("git_commit_timestamp %d is too far in the future (must be Unix epoch milliseconds)", timestamp)) + } + } + // Determine environment (default to preview) // TODO: Add environment field to CreateVersionRequest proto environment := db.DeploymentsEnvironmentPreview @@ -61,21 +93,34 @@ func (s *Service) CreateVersion( deploymentID := uid.New("deployment") now := time.Now().UnixMilli() + // Sanitize input values before persisting + gitCommitSha := req.Msg.GetGitCommitSha() + gitCommitMessage := limitString(req.Msg.GetGitCommitMessage(), 10240) + gitCommitAuthorName := limitString(strings.TrimSpace(req.Msg.GetGitCommitAuthorName()), 256) + gitCommitAuthorUsername := limitString(strings.TrimSpace(req.Msg.GetGitCommitAuthorUsername()), 256) + gitCommitAuthorAvatarUrl := limitString(strings.TrimSpace(req.Msg.GetGitCommitAuthorAvatarUrl()), 512) + // Insert deployment into database err = db.Query.InsertDeployment(ctx, s.db.RW(), db.InsertDeploymentParams{ - ID: deploymentID, - WorkspaceID: req.Msg.GetWorkspaceId(), - ProjectID: req.Msg.GetProjectId(), - Environment: environment, - BuildID: sql.NullString{String: "", Valid: false}, // Build creation handled separately - RootfsImageID: "", // Image handling not implemented yet - GitCommitSha: sql.NullString{String: req.Msg.GetGitCommitSha(), Valid: req.Msg.GetGitCommitSha() != ""}, - GitBranch: sql.NullString{String: gitBranch, Valid: true}, - ConfigSnapshot: []byte("{}"), // Configuration snapshot placeholder - OpenapiSpec: sql.NullString{String: "", Valid: false}, - Status: "pending", - CreatedAt: now, - UpdatedAt: sql.NullInt64{Int64: now, Valid: true}, + ID: deploymentID, + WorkspaceID: req.Msg.GetWorkspaceId(), + ProjectID: req.Msg.GetProjectId(), + Environment: environment, + BuildID: sql.NullString{String: "", Valid: false}, // Build creation handled separately + RootfsImageID: "", // Image handling not implemented yet + GitCommitSha: sql.NullString{String: gitCommitSha, Valid: gitCommitSha != ""}, + GitBranch: sql.NullString{String: gitBranch, Valid: true}, + GitCommitMessage: sql.NullString{String: gitCommitMessage, Valid: req.Msg.GetGitCommitMessage() != ""}, + GitCommitAuthorName: sql.NullString{String: gitCommitAuthorName, Valid: req.Msg.GetGitCommitAuthorName() != ""}, + // TODO: Use email to lookup GitHub username/avatar via GitHub API instead of persisting PII + GitCommitAuthorUsername: sql.NullString{String: gitCommitAuthorUsername, Valid: req.Msg.GetGitCommitAuthorUsername() != ""}, + GitCommitAuthorAvatarUrl: sql.NullString{String: gitCommitAuthorAvatarUrl, Valid: req.Msg.GetGitCommitAuthorAvatarUrl() != ""}, + GitCommitTimestamp: sql.NullInt64{Int64: req.Msg.GetGitCommitTimestamp(), Valid: req.Msg.GetGitCommitTimestamp() != 0}, + ConfigSnapshot: []byte("{}"), // Configuration snapshot placeholder + OpenapiSpec: sql.NullString{String: "", Valid: false}, + Status: db.DeploymentsStatusPending, + CreatedAt: now, + UpdatedAt: sql.NullInt64{Int64: now, Valid: true}, }) if err != nil { return nil, connect.NewError(connect.CodeInternal, err) diff --git a/go/apps/ctrl/services/deployment/create_version_simple_test.go b/go/apps/ctrl/services/deployment/create_version_simple_test.go new file mode 100644 index 0000000000..132d35e2d6 --- /dev/null +++ b/go/apps/ctrl/services/deployment/create_version_simple_test.go @@ -0,0 +1,475 @@ +package deployment + +import ( + "database/sql" + "testing" + "time" + + "github.com/stretchr/testify/require" + ctrlv1 "github.com/unkeyed/unkey/go/gen/proto/ctrl/v1" + "github.com/unkeyed/unkey/go/pkg/db" +) + +// validateTimestamp applies the same validation logic as the CreateVersion service +func validateTimestamp(timestamp int64) bool { + if timestamp == 0 { + return true // Zero timestamps skip validation (optional field) + } + + isValidLowerBound := timestamp >= 1_000_000_000_000 + maxValidTimestamp := time.Now().Add(1 * time.Hour).UnixMilli() + isValidUpperBound := timestamp <= maxValidTimestamp + return isValidLowerBound && isValidUpperBound +} + +// TestGitFieldValidation_SpecialCharacters tests handling of special characters +func TestGitFieldValidation_SpecialCharacters(t *testing.T) { + t.Parallel() + + tests := []struct { + name string + input string + expected string + }{ + { + name: "single quotes", + input: "Fix bug with 'single quotes' in SQL", + expected: "Fix bug with 'single quotes' in SQL", + }, + { + name: "double quotes", + input: "Add support for \"double quotes\" parsing", + expected: "Add support for \"double quotes\" parsing", + }, + { + name: "unicode characters", + input: "Support unicode: ñoño résumé 🚀", + expected: "Support unicode: ñoño résumé 🚀", + }, + { + name: "newlines", + input: "Multi-line commit\n\nWith detailed description", + expected: "Multi-line commit\n\nWith detailed description", + }, + { + name: "username with dash", + input: "user-test", + expected: "user-test", + }, + { + name: "url with query params", + input: "https://github.com/user.png?size=40&v=4", + expected: "https://github.com/user.png?size=40&v=4", + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + t.Parallel() + + // Test that special characters are preserved in protobuf + req := &ctrlv1.CreateVersionRequest{ + GitCommitMessage: tt.input, + GitCommitAuthorName: tt.input, + GitCommitAuthorUsername: tt.input, + GitCommitAuthorAvatarUrl: tt.input, + } + + require.Equal(t, tt.expected, req.GetGitCommitMessage()) + require.Equal(t, tt.expected, req.GetGitCommitAuthorName()) + require.Equal(t, tt.expected, req.GetGitCommitAuthorUsername()) + require.Equal(t, tt.expected, req.GetGitCommitAuthorAvatarUrl()) + + // Test that special characters are preserved in database model + deployment := db.Deployment{ + GitCommitMessage: sql.NullString{String: tt.input, Valid: true}, + GitCommitAuthorName: sql.NullString{String: tt.input, Valid: true}, + GitCommitAuthorUsername: sql.NullString{String: tt.input, Valid: true}, + GitCommitAuthorAvatarUrl: sql.NullString{String: tt.input, Valid: true}, + } + + require.Equal(t, tt.expected, deployment.GitCommitMessage.String) + require.Equal(t, tt.expected, deployment.GitCommitAuthorName.String) + require.Equal(t, tt.expected, deployment.GitCommitAuthorUsername.String) + require.Equal(t, tt.expected, deployment.GitCommitAuthorAvatarUrl.String) + }) + } +} + +// TestGitFieldValidation_NullHandling tests NULL value handling +func TestGitFieldValidation_NullHandling(t *testing.T) { + t.Parallel() + + // Test empty protobuf fields + req := &ctrlv1.CreateVersionRequest{ + WorkspaceId: "ws_test", + ProjectId: "proj_test", + GitCommitMessage: "", + GitCommitAuthorName: "", + GitCommitAuthorUsername: "", + GitCommitAuthorAvatarUrl: "", + GitCommitTimestamp: 0, + } + + // Empty strings should be returned as-is + require.Equal(t, "", req.GetGitCommitMessage()) + require.Equal(t, "", req.GetGitCommitAuthorName()) + require.Equal(t, "", req.GetGitCommitAuthorUsername()) + require.Equal(t, "", req.GetGitCommitAuthorAvatarUrl()) + require.Equal(t, int64(0), req.GetGitCommitTimestamp()) + + // Test NULL database fields + deployment := db.Deployment{ + GitCommitMessage: sql.NullString{Valid: false}, + GitCommitAuthorName: sql.NullString{Valid: false}, + GitCommitAuthorUsername: sql.NullString{Valid: false}, + GitCommitAuthorAvatarUrl: sql.NullString{Valid: false}, + GitCommitTimestamp: sql.NullInt64{Valid: false}, + } + + // NULL fields should be invalid + require.False(t, deployment.GitCommitMessage.Valid) + require.False(t, deployment.GitCommitAuthorName.Valid) + require.False(t, deployment.GitCommitAuthorUsername.Valid) + require.False(t, deployment.GitCommitAuthorAvatarUrl.Valid) + require.False(t, deployment.GitCommitTimestamp.Valid) +} + +// TestTimestampConversion tests timestamp handling between protobuf and database +func TestTimestampConversion(t *testing.T) { + t.Parallel() + + // Test fixed timestamp for deterministic testing + now := time.Date(2024, 8, 21, 14, 30, 45, 123456789, time.UTC) + nowMillis := now.UnixMilli() + + // Test protobuf timestamp + req := &ctrlv1.CreateVersionRequest{ + GitCommitTimestamp: nowMillis, + } + require.Equal(t, nowMillis, req.GetGitCommitTimestamp()) + + // Test database timestamp + deployment := db.Deployment{ + GitCommitTimestamp: sql.NullInt64{Int64: nowMillis, Valid: true}, + } + require.Equal(t, nowMillis, deployment.GitCommitTimestamp.Int64) + require.True(t, deployment.GitCommitTimestamp.Valid) + + // Test conversion back to time + retrievedTime := time.UnixMilli(deployment.GitCommitTimestamp.Int64) + require.Equal(t, now.Unix(), retrievedTime.Unix()) // Compare at second precision +} + +// TestCreateVersionTimestampValidation_InvalidSecondsFormat tests timestamp validation +func TestCreateVersionTimestampValidation_InvalidSecondsFormat(t *testing.T) { + t.Parallel() + + // Create proto request directly with seconds timestamp (should be rejected) + req := &ctrlv1.CreateVersionRequest{ + WorkspaceId: "ws_test123", + ProjectId: "proj_test456", + Branch: "main", + SourceType: ctrlv1.SourceType_SOURCE_TYPE_GIT, + GitCommitSha: "abc123def456", + GitCommitTimestamp: time.Now().Unix(), // This is in seconds - should be rejected + } + + // Use shared validation helper + isValid := validateTimestamp(req.GetGitCommitTimestamp()) + require.False(t, isValid, "Seconds-based timestamp should be considered invalid") +} + +// TestCreateVersionTimestampValidation_ValidMillisecondsFormat tests valid timestamp +func TestCreateVersionTimestampValidation_ValidMillisecondsFormat(t *testing.T) { + t.Parallel() + + // Create proto request directly with milliseconds timestamp + req := &ctrlv1.CreateVersionRequest{ + WorkspaceId: "ws_test123", + ProjectId: "proj_test456", + Branch: "main", + SourceType: ctrlv1.SourceType_SOURCE_TYPE_GIT, + GitCommitSha: "abc123def456", + GitCommitTimestamp: time.Now().UnixMilli(), // This is in milliseconds - should be accepted + } + + // Use shared validation helper + isValid := validateTimestamp(req.GetGitCommitTimestamp()) + require.True(t, isValid, "Milliseconds-based timestamp should be considered valid") +} + +// TestTimestampValidationBoundaries tests edge cases for timestamp validation +func TestTimestampValidationBoundaries(t *testing.T) { + t.Parallel() + + tests := []struct { + name string + timestamp int64 + shouldPass bool + description string + }{ + { + name: "exactly_at_threshold", + timestamp: 1_000_000_000_000, // Exactly Jan 1, 2001 in milliseconds + shouldPass: true, + description: "Timestamp exactly at the millisecond threshold should pass", + }, + { + name: "just_below_threshold", + timestamp: 999_999_999_999, // Just below threshold (seconds format) + shouldPass: false, + description: "Timestamp just below threshold should fail", + }, + { + name: "zero_timestamp", + timestamp: 0, + shouldPass: true, // Zero is treated as "not provided" and skips validation + description: "Zero timestamp should be allowed (optional field)", + }, + { + name: "current_time_millis", + timestamp: time.Now().UnixMilli(), + shouldPass: true, + description: "Current time in milliseconds should pass", + }, + { + name: "far_future", + timestamp: time.Now().Add(24 * time.Hour).UnixMilli(), + shouldPass: false, + description: "Timestamp too far in future should fail", + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + t.Parallel() + + // Use shared validation helper + isValid := validateTimestamp(tt.timestamp) + + if tt.shouldPass { + require.True(t, isValid, tt.description) + } else { + require.False(t, isValid, tt.description) + } + }) + } +} + +// TestCreateVersionFieldMapping tests the actual field mapping from protobuf to database params +func TestCreateVersionFieldMapping(t *testing.T) { + t.Parallel() + + tests := []struct { + name string + request *ctrlv1.CreateVersionRequest + expected struct { + gitCommitSha string + gitCommitShaValid bool + gitBranch string + gitBranchValid bool + gitCommitMessage string + gitCommitMessageValid bool + gitCommitAuthorName string + gitCommitAuthorNameValid bool + gitCommitAuthorUsername string + gitCommitAuthorUsernameValid bool + gitCommitAuthorAvatarUrl string + gitCommitAuthorAvatarUrlValid bool + gitCommitTimestamp int64 + gitCommitTimestampValid bool + } + }{ + { + name: "all_git_fields_populated", + request: &ctrlv1.CreateVersionRequest{ + WorkspaceId: "ws_test123", + ProjectId: "proj_test456", + Branch: "feature/test-branch", + SourceType: ctrlv1.SourceType_SOURCE_TYPE_GIT, + GitCommitSha: "abc123def456789", + GitCommitMessage: "feat: implement new feature", + GitCommitAuthorName: "Jane Doe", + GitCommitAuthorUsername: "janedoe", + GitCommitAuthorAvatarUrl: "https://github.com/janedoe.png", + GitCommitTimestamp: 1724251845123, // Fixed millisecond timestamp + }, + expected: struct { + gitCommitSha string + gitCommitShaValid bool + gitBranch string + gitBranchValid bool + gitCommitMessage string + gitCommitMessageValid bool + gitCommitAuthorName string + gitCommitAuthorNameValid bool + gitCommitAuthorUsername string + gitCommitAuthorUsernameValid bool + gitCommitAuthorAvatarUrl string + gitCommitAuthorAvatarUrlValid bool + gitCommitTimestamp int64 + gitCommitTimestampValid bool + }{ + gitCommitSha: "abc123def456789", + gitCommitShaValid: true, + gitBranch: "feature/test-branch", + gitBranchValid: true, + gitCommitMessage: "feat: implement new feature", + gitCommitMessageValid: true, + gitCommitAuthorName: "Jane Doe", + gitCommitAuthorNameValid: true, + gitCommitAuthorUsername: "janedoe", + gitCommitAuthorUsernameValid: true, + gitCommitAuthorAvatarUrl: "https://github.com/janedoe.png", + gitCommitAuthorAvatarUrlValid: true, + gitCommitTimestamp: 1724251845123, + gitCommitTimestampValid: true, + }, + }, + { + name: "empty_git_fields", + request: &ctrlv1.CreateVersionRequest{ + WorkspaceId: "ws_test123", + ProjectId: "proj_test456", + Branch: "main", + SourceType: ctrlv1.SourceType_SOURCE_TYPE_GIT, + GitCommitSha: "", + GitCommitMessage: "", + GitCommitAuthorName: "", + GitCommitAuthorUsername: "", + GitCommitAuthorAvatarUrl: "", + GitCommitTimestamp: 0, + }, + expected: struct { + gitCommitSha string + gitCommitShaValid bool + gitBranch string + gitBranchValid bool + gitCommitMessage string + gitCommitMessageValid bool + gitCommitAuthorName string + gitCommitAuthorNameValid bool + gitCommitAuthorUsername string + gitCommitAuthorUsernameValid bool + gitCommitAuthorAvatarUrl string + gitCommitAuthorAvatarUrlValid bool + gitCommitTimestamp int64 + gitCommitTimestampValid bool + }{ + gitCommitSha: "", + gitCommitShaValid: false, + gitBranch: "main", + gitBranchValid: true, + gitCommitMessage: "", + gitCommitMessageValid: false, + gitCommitAuthorName: "", + gitCommitAuthorNameValid: false, + gitCommitAuthorUsername: "", + gitCommitAuthorUsernameValid: false, + gitCommitAuthorAvatarUrl: "", + gitCommitAuthorAvatarUrlValid: false, + gitCommitTimestamp: 0, + gitCommitTimestampValid: false, + }, + }, + { + name: "mixed_populated_and_empty_fields", + request: &ctrlv1.CreateVersionRequest{ + WorkspaceId: "ws_test123", + ProjectId: "proj_test456", + Branch: "hotfix/urgent-fix", + SourceType: ctrlv1.SourceType_SOURCE_TYPE_GIT, + GitCommitSha: "xyz789abc123", + GitCommitMessage: "fix: critical security issue", + GitCommitAuthorName: "", // Empty + GitCommitAuthorUsername: "", // Empty + GitCommitAuthorAvatarUrl: "", // Empty + GitCommitTimestamp: 1724251845999, + }, + expected: struct { + gitCommitSha string + gitCommitShaValid bool + gitBranch string + gitBranchValid bool + gitCommitMessage string + gitCommitMessageValid bool + gitCommitAuthorName string + gitCommitAuthorNameValid bool + gitCommitAuthorUsername string + gitCommitAuthorUsernameValid bool + gitCommitAuthorAvatarUrl string + gitCommitAuthorAvatarUrlValid bool + gitCommitTimestamp int64 + gitCommitTimestampValid bool + }{ + gitCommitSha: "xyz789abc123", + gitCommitShaValid: true, + gitBranch: "hotfix/urgent-fix", + gitBranchValid: true, + gitCommitMessage: "fix: critical security issue", + gitCommitMessageValid: true, + gitCommitAuthorName: "", + gitCommitAuthorNameValid: false, // Empty string should be invalid + gitCommitAuthorUsername: "", + gitCommitAuthorUsernameValid: false, // Empty string should be invalid + gitCommitAuthorAvatarUrl: "", + gitCommitAuthorAvatarUrlValid: false, // Empty string should be invalid + gitCommitTimestamp: 1724251845999, + gitCommitTimestampValid: true, + }, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + t.Parallel() + + // Simulate the mapping logic from create_version.go + // This tests the actual field wiring that happens in the service + params := db.InsertDeploymentParams{ + ID: "test_deployment_id", + WorkspaceID: tt.request.GetWorkspaceId(), + ProjectID: tt.request.GetProjectId(), + Environment: db.DeploymentsEnvironmentPreview, + BuildID: sql.NullString{String: "", Valid: false}, + RootfsImageID: "", + // Git field mappings - this is what we're testing + GitCommitSha: sql.NullString{String: tt.request.GetGitCommitSha(), Valid: tt.request.GetGitCommitSha() != ""}, + GitBranch: sql.NullString{String: tt.request.GetBranch(), Valid: true}, + GitCommitMessage: sql.NullString{String: tt.request.GetGitCommitMessage(), Valid: tt.request.GetGitCommitMessage() != ""}, + GitCommitAuthorName: sql.NullString{String: tt.request.GetGitCommitAuthorName(), Valid: tt.request.GetGitCommitAuthorName() != ""}, + GitCommitAuthorUsername: sql.NullString{String: tt.request.GetGitCommitAuthorUsername(), Valid: tt.request.GetGitCommitAuthorUsername() != ""}, + GitCommitAuthorAvatarUrl: sql.NullString{String: tt.request.GetGitCommitAuthorAvatarUrl(), Valid: tt.request.GetGitCommitAuthorAvatarUrl() != ""}, + GitCommitTimestamp: sql.NullInt64{Int64: tt.request.GetGitCommitTimestamp(), Valid: tt.request.GetGitCommitTimestamp() != 0}, + ConfigSnapshot: []byte("{}"), + OpenapiSpec: sql.NullString{String: "", Valid: false}, + Status: "pending", + CreatedAt: 1724251845000, + UpdatedAt: sql.NullInt64{Int64: 1724251845000, Valid: true}, + } + + // Assert Git field mappings are correct + require.Equal(t, tt.expected.gitCommitSha, params.GitCommitSha.String, "GitCommitSha string mismatch") + require.Equal(t, tt.expected.gitCommitShaValid, params.GitCommitSha.Valid, "GitCommitSha valid flag mismatch") + + require.Equal(t, tt.expected.gitBranch, params.GitBranch.String, "GitBranch string mismatch") + require.Equal(t, tt.expected.gitBranchValid, params.GitBranch.Valid, "GitBranch valid flag mismatch") + + require.Equal(t, tt.expected.gitCommitMessage, params.GitCommitMessage.String, "GitCommitMessage string mismatch") + require.Equal(t, tt.expected.gitCommitMessageValid, params.GitCommitMessage.Valid, "GitCommitMessage valid flag mismatch") + + require.Equal(t, tt.expected.gitCommitAuthorName, params.GitCommitAuthorName.String, "GitCommitAuthorName string mismatch") + require.Equal(t, tt.expected.gitCommitAuthorNameValid, params.GitCommitAuthorName.Valid, "GitCommitAuthorName valid flag mismatch") + + require.Equal(t, tt.expected.gitCommitAuthorUsername, params.GitCommitAuthorUsername.String, "GitCommitAuthorUsername string mismatch") + require.Equal(t, tt.expected.gitCommitAuthorUsernameValid, params.GitCommitAuthorUsername.Valid, "GitCommitAuthorUsername valid flag mismatch") + + require.Equal(t, tt.expected.gitCommitAuthorAvatarUrl, params.GitCommitAuthorAvatarUrl.String, "GitCommitAuthorAvatarUrl string mismatch") + require.Equal(t, tt.expected.gitCommitAuthorAvatarUrlValid, params.GitCommitAuthorAvatarUrl.Valid, "GitCommitAuthorAvatarUrl valid flag mismatch") + + require.Equal(t, tt.expected.gitCommitTimestamp, params.GitCommitTimestamp.Int64, "GitCommitTimestamp value mismatch") + require.Equal(t, tt.expected.gitCommitTimestampValid, params.GitCommitTimestamp.Valid, "GitCommitTimestamp valid flag mismatch") + }) + } +} diff --git a/go/apps/ctrl/services/deployment/get_version.go b/go/apps/ctrl/services/deployment/get_version.go index 666e0d88e2..1c815f8ffe 100644 --- a/go/apps/ctrl/services/deployment/get_version.go +++ b/go/apps/ctrl/services/deployment/get_version.go @@ -8,6 +8,8 @@ import ( "github.com/unkeyed/unkey/go/pkg/db" ) +// GetVersion loads a deployment by ID and projects it into the ctrlv1.Version proto, including git metadata, build +// linkage, steps, and hostnames. Non-critical lookup failures (steps/hostnames/build) are logged and ignored to keep the endpoint resilient. func (s *Service) GetVersion( ctx context.Context, req *connect.Request[ctrlv1.GetVersionRequest], @@ -20,22 +22,27 @@ func (s *Service) GetVersion( // Convert database model to proto protoVersion := &ctrlv1.Version{ - Id: deployment.ID, - WorkspaceId: deployment.WorkspaceID, - ProjectId: deployment.ProjectID, - EnvironmentId: string(deployment.Environment), - Status: convertDbStatusToProto(string(deployment.Status)), - CreatedAt: deployment.CreatedAt, - GitCommitSha: "", - GitBranch: "", - ErrorMessage: "", - EnvironmentVariables: nil, - Topology: nil, - UpdatedAt: 0, - Hostnames: nil, - RootfsImageId: "", - BuildId: "", - Steps: nil, + Id: deployment.ID, + WorkspaceId: deployment.WorkspaceID, + ProjectId: deployment.ProjectID, + EnvironmentId: string(deployment.Environment), + Status: convertDbStatusToProto(string(deployment.Status)), + CreatedAt: deployment.CreatedAt, + GitCommitSha: "", + GitBranch: "", + GitCommitMessage: "", + GitCommitAuthorName: "", + GitCommitAuthorUsername: "", + GitCommitAuthorAvatarUrl: "", + GitCommitTimestamp: 0, + ErrorMessage: "", + EnvironmentVariables: nil, + Topology: nil, + UpdatedAt: 0, + Hostnames: nil, + RootfsImageId: "", + BuildId: "", + Steps: nil, } if deployment.GitCommitSha.Valid { @@ -44,6 +51,22 @@ func (s *Service) GetVersion( if deployment.GitBranch.Valid { protoVersion.GitBranch = deployment.GitBranch.String } + if deployment.GitCommitMessage.Valid { + protoVersion.GitCommitMessage = deployment.GitCommitMessage.String + } + if deployment.GitCommitAuthorName.Valid { + protoVersion.GitCommitAuthorName = deployment.GitCommitAuthorName.String + } + // Email removed to avoid storing PII - TODO: implement GitHub API lookup + if deployment.GitCommitAuthorUsername.Valid { + protoVersion.GitCommitAuthorUsername = deployment.GitCommitAuthorUsername.String + } + if deployment.GitCommitAuthorAvatarUrl.Valid { + protoVersion.GitCommitAuthorAvatarUrl = deployment.GitCommitAuthorAvatarUrl.String + } + if deployment.GitCommitTimestamp.Valid { + protoVersion.GitCommitTimestamp = deployment.GitCommitTimestamp.Int64 + } if deployment.UpdatedAt.Valid { protoVersion.UpdatedAt = deployment.UpdatedAt.Int64 } diff --git a/go/gen/proto/ctrl/v1/version.pb.go b/go/gen/proto/ctrl/v1/version.pb.go index 526d723c7b..d6ad6d0560 100644 --- a/go/gen/proto/ctrl/v1/version.pb.go +++ b/go/gen/proto/ctrl/v1/version.pb.go @@ -148,9 +148,16 @@ type CreateVersionRequest struct { // Gateway hostname for routing Hostname string `protobuf:"bytes,9,opt,name=hostname,proto3" json:"hostname,omitempty"` // Keyspace ID for authentication - KeyspaceId string `protobuf:"bytes,10,opt,name=keyspace_id,json=keyspaceId,proto3" json:"keyspace_id,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + KeyspaceId string `protobuf:"bytes,10,opt,name=keyspace_id,json=keyspaceId,proto3" json:"keyspace_id,omitempty"` + // Extended git information + GitCommitMessage string `protobuf:"bytes,6,opt,name=git_commit_message,json=gitCommitMessage,proto3" json:"git_commit_message,omitempty"` + GitCommitAuthorName string `protobuf:"bytes,11,opt,name=git_commit_author_name,json=gitCommitAuthorName,proto3" json:"git_commit_author_name,omitempty"` + // TODO: Add GitHub API integration to lookup username/avatar from email + GitCommitAuthorUsername string `protobuf:"bytes,12,opt,name=git_commit_author_username,json=gitCommitAuthorUsername,proto3" json:"git_commit_author_username,omitempty"` + GitCommitAuthorAvatarUrl string `protobuf:"bytes,13,opt,name=git_commit_author_avatar_url,json=gitCommitAuthorAvatarUrl,proto3" json:"git_commit_author_avatar_url,omitempty"` + GitCommitTimestamp int64 `protobuf:"varint,14,opt,name=git_commit_timestamp,json=gitCommitTimestamp,proto3" json:"git_commit_timestamp,omitempty"` // Unix epoch milliseconds + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *CreateVersionRequest) Reset() { @@ -246,6 +253,41 @@ func (x *CreateVersionRequest) GetKeyspaceId() string { return "" } +func (x *CreateVersionRequest) GetGitCommitMessage() string { + if x != nil { + return x.GitCommitMessage + } + return "" +} + +func (x *CreateVersionRequest) GetGitCommitAuthorName() string { + if x != nil { + return x.GitCommitAuthorName + } + return "" +} + +func (x *CreateVersionRequest) GetGitCommitAuthorUsername() string { + if x != nil { + return x.GitCommitAuthorUsername + } + return "" +} + +func (x *CreateVersionRequest) GetGitCommitAuthorAvatarUrl() string { + if x != nil { + return x.GitCommitAuthorAvatarUrl + } + return "" +} + +func (x *CreateVersionRequest) GetGitCommitTimestamp() int64 { + if x != nil { + return x.GitCommitTimestamp + } + return 0 +} + type CreateVersionResponse struct { state protoimpl.MessageState `protogen:"open.v1"` VersionId string `protobuf:"bytes,1,opt,name=version_id,json=versionId,proto3" json:"version_id,omitempty"` @@ -411,9 +453,16 @@ type Version struct { RootfsImageId string `protobuf:"bytes,14,opt,name=rootfs_image_id,json=rootfsImageId,proto3" json:"rootfs_image_id,omitempty"` BuildId string `protobuf:"bytes,15,opt,name=build_id,json=buildId,proto3" json:"build_id,omitempty"` // Deployment steps - Steps []*VersionStep `protobuf:"bytes,16,rep,name=steps,proto3" json:"steps,omitempty"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + Steps []*VersionStep `protobuf:"bytes,16,rep,name=steps,proto3" json:"steps,omitempty"` + // Extended git information + GitCommitMessage string `protobuf:"bytes,17,opt,name=git_commit_message,json=gitCommitMessage,proto3" json:"git_commit_message,omitempty"` + GitCommitAuthorName string `protobuf:"bytes,18,opt,name=git_commit_author_name,json=gitCommitAuthorName,proto3" json:"git_commit_author_name,omitempty"` + // Removed: email is PII and not stored + GitCommitAuthorUsername string `protobuf:"bytes,20,opt,name=git_commit_author_username,json=gitCommitAuthorUsername,proto3" json:"git_commit_author_username,omitempty"` + GitCommitAuthorAvatarUrl string `protobuf:"bytes,21,opt,name=git_commit_author_avatar_url,json=gitCommitAuthorAvatarUrl,proto3" json:"git_commit_author_avatar_url,omitempty"` + GitCommitTimestamp int64 `protobuf:"varint,22,opt,name=git_commit_timestamp,json=gitCommitTimestamp,proto3" json:"git_commit_timestamp,omitempty"` // Unix epoch milliseconds + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Version) Reset() { @@ -558,6 +607,41 @@ func (x *Version) GetSteps() []*VersionStep { return nil } +func (x *Version) GetGitCommitMessage() string { + if x != nil { + return x.GitCommitMessage + } + return "" +} + +func (x *Version) GetGitCommitAuthorName() string { + if x != nil { + return x.GitCommitAuthorName + } + return "" +} + +func (x *Version) GetGitCommitAuthorUsername() string { + if x != nil { + return x.GitCommitAuthorUsername + } + return "" +} + +func (x *Version) GetGitCommitAuthorAvatarUrl() string { + if x != nil { + return x.GitCommitAuthorAvatarUrl + } + return "" +} + +func (x *Version) GetGitCommitTimestamp() int64 { + if x != nil { + return x.GitCommitTimestamp + } + return 0 +} + type VersionStep struct { state protoimpl.MessageState `protogen:"open.v1"` Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` @@ -776,7 +860,7 @@ var File_proto_ctrl_v1_version_proto protoreflect.FileDescriptor const file_proto_ctrl_v1_version_proto_rawDesc = "" + "\n" + - "\x1bproto/ctrl/v1/version.proto\x12\actrl.v1\"\xda\x02\n" + + "\x1bproto/ctrl/v1/version.proto\x12\actrl.v1\"\xec\x04\n" + "\x14CreateVersionRequest\x12!\n" + "\fworkspace_id\x18\x01 \x01(\tR\vworkspaceId\x12\x1d\n" + "\n" + @@ -790,7 +874,12 @@ const file_proto_ctrl_v1_version_proto_rawDesc = "" + "\bhostname\x18\t \x01(\tR\bhostname\x12\x1f\n" + "\vkeyspace_id\x18\n" + " \x01(\tR\n" + - "keyspaceId\"f\n" + + "keyspaceId\x12,\n" + + "\x12git_commit_message\x18\x06 \x01(\tR\x10gitCommitMessage\x123\n" + + "\x16git_commit_author_name\x18\v \x01(\tR\x13gitCommitAuthorName\x12;\n" + + "\x1agit_commit_author_username\x18\f \x01(\tR\x17gitCommitAuthorUsername\x12>\n" + + "\x1cgit_commit_author_avatar_url\x18\r \x01(\tR\x18gitCommitAuthorAvatarUrl\x120\n" + + "\x14git_commit_timestamp\x18\x0e \x01(\x03R\x12gitCommitTimestamp\"f\n" + "\x15CreateVersionResponse\x12\x1d\n" + "\n" + "version_id\x18\x01 \x01(\tR\tversionId\x12.\n" + @@ -799,7 +888,7 @@ const file_proto_ctrl_v1_version_proto_rawDesc = "" + "\n" + "version_id\x18\x01 \x01(\tR\tversionId\"@\n" + "\x12GetVersionResponse\x12*\n" + - "\aversion\x18\x01 \x01(\v2\x10.ctrl.v1.VersionR\aversion\"\xc0\x05\n" + + "\aversion\x18\x01 \x01(\v2\x10.ctrl.v1.VersionR\aversion\"\xd2\a\n" + "\aVersion\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\x12!\n" + "\fworkspace_id\x18\x02 \x01(\tR\vworkspaceId\x12\x1d\n" + @@ -821,7 +910,12 @@ const file_proto_ctrl_v1_version_proto_rawDesc = "" + "\thostnames\x18\r \x03(\tR\thostnames\x12&\n" + "\x0frootfs_image_id\x18\x0e \x01(\tR\rrootfsImageId\x12\x19\n" + "\bbuild_id\x18\x0f \x01(\tR\abuildId\x12*\n" + - "\x05steps\x18\x10 \x03(\v2\x14.ctrl.v1.VersionStepR\x05steps\x1aG\n" + + "\x05steps\x18\x10 \x03(\v2\x14.ctrl.v1.VersionStepR\x05steps\x12,\n" + + "\x12git_commit_message\x18\x11 \x01(\tR\x10gitCommitMessage\x123\n" + + "\x16git_commit_author_name\x18\x12 \x01(\tR\x13gitCommitAuthorName\x12;\n" + + "\x1agit_commit_author_username\x18\x14 \x01(\tR\x17gitCommitAuthorUsername\x12>\n" + + "\x1cgit_commit_author_avatar_url\x18\x15 \x01(\tR\x18gitCommitAuthorAvatarUrl\x120\n" + + "\x14git_commit_timestamp\x18\x16 \x01(\x03R\x12gitCommitTimestamp\x1aG\n" + "\x19EnvironmentVariablesEntry\x12\x10\n" + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\x83\x01\n" + diff --git a/go/go.mod b/go/go.mod index de18b11c00..da09799e3f 100644 --- a/go/go.mod +++ b/go/go.mod @@ -26,7 +26,7 @@ require ( github.com/shirou/gopsutil/v4 v4.25.5 github.com/sqlc-dev/plugin-sdk-go v1.23.0 github.com/sqlc-dev/sqlc v1.28.0 - github.com/stretchr/testify v1.10.0 + github.com/stretchr/testify v1.11.0 github.com/unkeyed/unkey/go/deploy/pkg/tls v0.0.0-00010101000000-000000000000 go.opentelemetry.io/contrib/bridges/otelslog v0.11.0 go.opentelemetry.io/contrib/bridges/prometheus v0.61.0 @@ -40,13 +40,13 @@ require ( go.opentelemetry.io/otel/sdk/log v0.12.2 go.opentelemetry.io/otel/sdk/metric v1.37.0 go.opentelemetry.io/otel/trace v1.37.0 - golang.org/x/net v0.42.0 - golang.org/x/text v0.27.0 - google.golang.org/protobuf v1.36.6 + golang.org/x/net v0.43.0 + golang.org/x/text v0.28.0 + google.golang.org/protobuf v1.36.8 ) require ( - cel.dev/expr v0.23.0 // indirect + cel.dev/expr v0.24.0 // indirect cloud.google.com/go v0.121.0 // indirect filippo.io/edwards25519 v1.1.0 // indirect github.com/ClickHouse/ch-go v0.66.0 // indirect @@ -91,7 +91,7 @@ require ( github.com/go-ole/go-ole v1.3.0 // indirect github.com/go-openapi/jsonpointer v0.21.0 // indirect github.com/go-openapi/swag v0.23.0 // indirect - github.com/google/cel-go v0.22.1 // indirect + github.com/google/cel-go v0.26.0 // indirect github.com/google/uuid v1.6.0 // indirect github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.1 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect @@ -126,16 +126,17 @@ require ( github.com/prometheus/procfs v0.16.1 // indirect github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect github.com/riza-io/grpc-go v0.2.0 // indirect + github.com/rogpeppe/go-internal v1.14.1 // indirect github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 // indirect github.com/segmentio/asm v1.2.0 // indirect github.com/shopspring/decimal v1.4.0 // indirect github.com/speakeasy-api/jsonpath v0.6.2 // indirect github.com/speakeasy-api/openapi-overlay v0.10.2 // indirect github.com/spf13/cobra v1.9.1 // indirect - github.com/spf13/pflag v1.0.6 // indirect + github.com/spf13/pflag v1.0.7 // indirect github.com/spiffe/go-spiffe/v2 v2.5.0 // indirect - github.com/stoewer/go-strcase v1.2.0 // indirect - github.com/tetratelabs/wazero v1.8.2 // indirect + github.com/stoewer/go-strcase v1.3.1 // indirect + github.com/tetratelabs/wazero v1.9.0 // indirect github.com/tidwall/gjson v1.18.0 // indirect github.com/tidwall/match v1.1.1 // indirect github.com/tidwall/pretty v1.2.1 // indirect @@ -154,19 +155,19 @@ require ( go.opentelemetry.io/auto/sdk v1.1.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.37.0 // indirect go.opentelemetry.io/otel/log v0.12.2 // indirect - go.opentelemetry.io/proto/otlp v1.7.0 // indirect + go.opentelemetry.io/proto/otlp v1.7.1 // indirect go.uber.org/atomic v1.11.0 // indirect go.uber.org/multierr v1.11.0 // indirect go.uber.org/zap v1.27.0 // indirect - golang.org/x/crypto v0.40.0 // indirect - golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 // indirect - golang.org/x/mod v0.25.0 // indirect + golang.org/x/crypto v0.41.0 // indirect + golang.org/x/exp v0.0.0-20250819193227-8b4c13bb791b // indirect + golang.org/x/mod v0.27.0 // indirect golang.org/x/sync v0.16.0 // indirect - golang.org/x/sys v0.34.0 // indirect - golang.org/x/tools v0.34.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20250707201910-8d1bb00bc6a7 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20250707201910-8d1bb00bc6a7 // indirect - google.golang.org/grpc v1.73.0 // indirect + golang.org/x/sys v0.35.0 // indirect + golang.org/x/tools v0.36.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20250826171959-ef028d996bc1 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20250826171959-ef028d996bc1 // indirect + google.golang.org/grpc v1.74.2 // indirect gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect diff --git a/go/go.sum b/go/go.sum index d2c8b2204d..dc87c8914a 100644 --- a/go/go.sum +++ b/go/go.sum @@ -1,5 +1,5 @@ -cel.dev/expr v0.23.0 h1:wUb94w6OYQS4uXraxo9U+wUAs9jT47Xvl4iPgAwM2ss= -cel.dev/expr v0.23.0/go.mod h1:hLPLo1W4QUmuYdA72RBX06QTs6MXw941piREPl3Yfiw= +cel.dev/expr v0.24.0 h1:56OvJKSH3hDGL0ml5uSxZmz3/3Pq4tJ+fb1unVLAFcY= +cel.dev/expr v0.24.0/go.mod h1:hLPLo1W4QUmuYdA72RBX06QTs6MXw941piREPl3Yfiw= cloud.google.com/go v0.121.0 h1:pgfwva8nGw7vivjZiRfrmglGWiCJBP+0OmDpenG/Fwg= cloud.google.com/go v0.121.0/go.mod h1:rS7Kytwheu/y9buoDmu5EIpMMCI4Mb8ND4aeN4Vwj7Q= connectrpc.com/connect v1.18.1 h1:PAg7CjSAGvscaf6YZKUefjoih5Z/qYkyaTrBW8xvYPw= @@ -145,8 +145,8 @@ github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaS github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/google/cel-go v0.22.1 h1:AfVXx3chM2qwoSbM7Da8g8hX8OVSkBFwX+rz2+PcK40= -github.com/google/cel-go v0.22.1/go.mod h1:BuznPXXfQDpXKWQ9sPW3TzlAJN5zzFe+i9tIs0yC4s8= +github.com/google/cel-go v0.26.0 h1:DPGjXackMpJWH680oGY4lZhYjIameYmR+/6RBdDGmaI= +github.com/google/cel-go v0.26.0/go.mod h1:A9O8OU9rdvrK5MQyrqfIxo1a0u4g3sF8KB6PUIaryMM= github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= @@ -272,8 +272,8 @@ github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94 github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= github.com/riza-io/grpc-go v0.2.0 h1:2HxQKFVE7VuYstcJ8zqpN84VnAoJ4dCL6YFhJewNcHQ= github.com/riza-io/grpc-go v0.2.0/go.mod h1:2bDvR9KkKC3KhtlSHfR3dAXjUMT86kg4UfWFyVGWqi8= -github.com/rogpeppe/go-internal v1.13.1 h1:KvO1DLK/DRN07sQ1LQKScxyZJuNnedQ5/wKSR38lUII= -github.com/rogpeppe/go-internal v1.13.1/go.mod h1:uMEvuHeurkdAXX61udpOXGD/AzZDWNMNyH2VO9fmH0o= +github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= +github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 h1:KRzFb2m7YtdldCEkzs6KqmJw4nqEVZGK7IN2kJkjTuQ= github.com/santhosh-tekuri/jsonschema/v6 v6.0.2/go.mod h1:JXeL+ps8p7/KNMjDQk3TCwPpBy0wYklyWTfbkIzdIFU= @@ -291,26 +291,32 @@ github.com/speakeasy-api/openapi-overlay v0.10.2 h1:VOdQ03eGKeiHnpb1boZCGm7x8Haj github.com/speakeasy-api/openapi-overlay v0.10.2/go.mod h1:n0iOU7AqKpNFfEt6tq7qYITC4f0yzVVdFw0S7hukemg= github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo= github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0= -github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o= github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/spf13/pflag v1.0.7 h1:vN6T9TfwStFPFM5XzjsvmzZkLuaLX+HS+0SeFLRgU6M= +github.com/spf13/pflag v1.0.7/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spiffe/go-spiffe/v2 v2.5.0 h1:N2I01KCUkv1FAjZXJMwh95KK1ZIQLYbPfhaxw8WS0hE= github.com/spiffe/go-spiffe/v2 v2.5.0/go.mod h1:P+NxobPc6wXhVtINNtFjNWGBTreew1GBUCwT2wPmb7g= github.com/sqlc-dev/plugin-sdk-go v1.23.0 h1:iSeJhnXPlbDXlbzUEebw/DxsGzE9rdDJArl8Hvt0RMM= github.com/sqlc-dev/plugin-sdk-go v1.23.0/go.mod h1:I1r4THOfyETD+LI2gogN2LX8wCjwUZrgy/NU4In3llA= github.com/sqlc-dev/sqlc v1.28.0 h1:2QB4X22pKNpKMyb8dRLnqZwMXW6S+ZCyYCpa+3/ICcI= github.com/sqlc-dev/sqlc v1.28.0/go.mod h1:x6wDsOHH60dTX3ES9sUUxRVaROg5aFB3l3nkkjyuK1A= -github.com/stoewer/go-strcase v1.2.0 h1:Z2iHWqGXH00XYgqDmNgQbIBxf3wrNq0F3feEy0ainaU= -github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= +github.com/stoewer/go-strcase v1.3.1 h1:iS0MdW+kVTxgMoE1LAZyMiYJFKlOzLooE4MxjirtkAs= +github.com/stoewer/go-strcase v1.3.1/go.mod h1:fAH5hQ5pehh+j3nZfvwdk2RgEgQjAoM8wodgtPmh1xo= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= -github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -github.com/tetratelabs/wazero v1.8.2 h1:yIgLR/b2bN31bjxwXHD8a3d+BogigR952csSDdLYEv4= -github.com/tetratelabs/wazero v1.8.2/go.mod h1:yAI0XTsMBhREkM/YDAK/zNou3GoiAce1P6+rp/wQhjs= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.11.0 h1:ib4sjIrwZKxE5u/Japgo/7SJV3PvgjGiRNAvTVGqQl8= +github.com/stretchr/testify v1.11.0/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= +github.com/tetratelabs/wazero v1.9.0 h1:IcZ56OuxrtaEz8UYNRHBrUa9bYeX9oVY93KspZZBf/I= +github.com/tetratelabs/wazero v1.9.0/go.mod h1:TSbcXCfFP0L2FGkRPxHphadXPjo1T6W+CseNNY7EkjM= github.com/tidwall/gjson v1.14.2/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= github.com/tidwall/gjson v1.18.0 h1:FIDeeyB800efLX89e5a8Y0BNH+LOngJyGrIWxG2FKQY= github.com/tidwall/gjson v1.18.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk= @@ -385,8 +391,8 @@ go.opentelemetry.io/otel/sdk/metric v1.37.0 h1:90lI228XrB9jCMuSdA0673aubgRobVZFh go.opentelemetry.io/otel/sdk/metric v1.37.0/go.mod h1:cNen4ZWfiD37l5NhS+Keb5RXVWZWpRE+9WyVCpbo5ps= go.opentelemetry.io/otel/trace v1.37.0 h1:HLdcFNbRQBE2imdSEgm/kwqmQj1Or1l/7bW6mxVK7z4= go.opentelemetry.io/otel/trace v1.37.0/go.mod h1:TlgrlQ+PtQO5XFerSPUYG0JSgGyryXewPGyayAWSBS0= -go.opentelemetry.io/proto/otlp v1.7.0 h1:jX1VolD6nHuFzOYso2E73H85i92Mv8JQYk0K9vz09os= -go.opentelemetry.io/proto/otlp v1.7.0/go.mod h1:fSKjH6YJ7HDlwzltzyMj036AJ3ejJLCgCSHGj4efDDo= +go.opentelemetry.io/proto/otlp v1.7.1 h1:gTOMpGDb0WTBOP8JaO72iL3auEZhVmAQg4ipjOVAtj4= +go.opentelemetry.io/proto/otlp v1.7.1/go.mod h1:b2rVh6rfI/s2pHWNlB7ILJcRALpcNDzKhACevjI+ZnE= go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= @@ -408,15 +414,15 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20200115085410-6d4e4cb37c7d/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.40.0 h1:r4x+VvoG5Fm+eJcxMaY8CQM7Lb0l1lsmjGBQ6s8BfKM= -golang.org/x/crypto v0.40.0/go.mod h1:Qr1vMER5WyS2dfPHAlsOj01wgLbsyWtFn/aY+5+ZdxY= -golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 h1:nDVHiLt8aIbd/VzvPWN6kSOPE7+F/fNFDSXLVYkE/Iw= -golang.org/x/exp v0.0.0-20250305212735-054e65f0b394/go.mod h1:sIifuuw/Yco/y6yb6+bDNfyeQ/MdPUy/hKEMYQV17cM= +golang.org/x/crypto v0.41.0 h1:WKYxWedPGCTVVl5+WHSSrOBT0O8lx32+zxmHxijgXp4= +golang.org/x/crypto v0.41.0/go.mod h1:pO5AFd7FA68rFak7rOAGVuygIISepHftHnr8dr6+sUc= +golang.org/x/exp v0.0.0-20250819193227-8b4c13bb791b h1:DXr+pvt3nC887026GRP39Ej11UATqWDmWuS99x26cD0= +golang.org/x/exp v0.0.0-20250819193227-8b4c13bb791b/go.mod h1:4QTo5u+SEIbbKW1RacMZq1YEfOBqeXa19JeshGi+zc4= golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.25.0 h1:n7a+ZbQKQA/Ysbyb0/6IbB1H/X41mKgbhfv7AfG/44w= -golang.org/x/mod v0.25.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww= +golang.org/x/mod v0.27.0 h1:kb+q2PyFnEADO2IEF935ehFUXlWiNjJWtRNgBLSfbxQ= +golang.org/x/mod v0.27.0/go.mod h1:rWI627Fq0DEoudcK+MBkNkCe0EetEaDSwJJkCcjpazc= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= @@ -424,8 +430,8 @@ golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.42.0 h1:jzkYrhi3YQWD6MLBJcsklgQsoAcw89EcZbJw8Z614hs= -golang.org/x/net v0.42.0/go.mod h1:FF1RA5d3u7nAYA4z2TkclSCKh68eSXtiFwcWQpPXdt8= +golang.org/x/net v0.43.0 h1:lat02VYK2j4aLzMzecihNvTlJNQUq316m2Mr9rnM6YE= +golang.org/x/net v0.43.0/go.mod h1:vhO1fvI4dGsIjh73sWfUVjj3N7CA9WkKJNQm2svM6Jg= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -444,15 +450,15 @@ golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.34.0 h1:H5Y5sJ2L2JRdyv7ROF1he/lPdvFsd0mJHFw2ThKHxLA= -golang.org/x/sys v0.34.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= +golang.org/x/sys v0.35.0 h1:vz1N37gP5bs89s7He8XuIYXpyY0+QlsKmzipCbUtyxI= +golang.org/x/sys v0.35.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.27.0 h1:4fGWRpyh641NLlecmyl4LOe6yDdfaYNrGb2zdfo4JV4= -golang.org/x/text v0.27.0/go.mod h1:1D28KMCvyooCX9hBiosv5Tz/+YLxj0j7XhWjpSUF7CU= +golang.org/x/text v0.28.0 h1:rhazDwis8INMIwQ4tpjLDzUhx6RlXqZNPEM0huQojng= +golang.org/x/text v0.28.0/go.mod h1:U8nCwOR8jO/marOQ0QbDiOngZVEBB7MAiitBuMjXiNU= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= @@ -460,23 +466,23 @@ golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.34.0 h1:qIpSLOxeCYGg9TrcJokLBG4KFA6d795g0xkBkiESGlo= -golang.org/x/tools v0.34.0/go.mod h1:pAP9OwEaY1CAW3HOmg3hLZC5Z0CCmzjAF2UQMSqNARg= +golang.org/x/tools v0.36.0 h1:kWS0uv/zsvHEle1LbV5LE8QujrxB3wfQyxHfhOk0Qkg= +golang.org/x/tools v0.36.0/go.mod h1:WBDiHKJK8YgLHlcQPYQzNCkUxUypCaa5ZegCVutKm+s= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto/googleapis/api v0.0.0-20250707201910-8d1bb00bc6a7 h1:FiusG7LWj+4byqhbvmB+Q93B/mOxJLN2DTozDuZm4EU= -google.golang.org/genproto/googleapis/api v0.0.0-20250707201910-8d1bb00bc6a7/go.mod h1:kXqgZtrWaf6qS3jZOCnCH7WYfrvFjkC51bM8fz3RsCA= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250707201910-8d1bb00bc6a7 h1:pFyd6EwwL2TqFf8emdthzeX+gZE1ElRq3iM8pui4KBY= -google.golang.org/genproto/googleapis/rpc v0.0.0-20250707201910-8d1bb00bc6a7/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A= -google.golang.org/grpc v1.73.0 h1:VIWSmpI2MegBtTuFt5/JWy2oXxtjJ/e89Z70ImfD2ok= -google.golang.org/grpc v1.73.0/go.mod h1:50sbHOUqWoCQGI8V2HQLJM0B+LMlIUjNSZmow7EVBQc= +google.golang.org/genproto/googleapis/api v0.0.0-20250826171959-ef028d996bc1 h1:APHvLLYBhtZvsbnpkfknDZ7NyH4z5+ub/I0u8L3Oz6g= +google.golang.org/genproto/googleapis/api v0.0.0-20250826171959-ef028d996bc1/go.mod h1:xUjFWUnWDpZ/C0Gu0qloASKFb6f8/QXiiXhSPFsD668= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250826171959-ef028d996bc1 h1:pmJpJEvT846VzausCQ5d7KreSROcDqmO388w5YbnltA= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250826171959-ef028d996bc1/go.mod h1:GmFNa4BdJZ2a8G+wCe9Bg3wwThLrJun751XstdJt5Og= +google.golang.org/grpc v1.74.2 h1:WoosgB65DlWVC9FqI82dGsZhWFNBSLjQ84bjROOpMu4= +google.golang.org/grpc v1.74.2/go.mod h1:CtQ+BGjaAIXHs/5YS3i473GqwBBa1zGQNevxdeBEXrM= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.31.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY= -google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY= +google.golang.org/protobuf v1.36.8 h1:xHScyCOEuuwZEc6UtSOvPbAT4zRh0xcNRYekJwfqyMc= +google.golang.org/protobuf v1.36.8/go.mod h1:fuxRtAxBytpl4zzqUh6/eyUujkJdNiuEkXntxiD/uRU= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/go/pkg/db/acme_user_find_by_workspace_id.sql_generated.go b/go/pkg/db/acme_user_find_by_workspace_id.sql_generated.go index c39c7ca685..4a8664bf1c 100644 --- a/go/pkg/db/acme_user_find_by_workspace_id.sql_generated.go +++ b/go/pkg/db/acme_user_find_by_workspace_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: acme_user_find_by_workspace_id.sql package db diff --git a/go/pkg/db/acme_user_insert.sql_generated.go b/go/pkg/db/acme_user_insert.sql_generated.go index 3c0febbbbb..c29c612cd5 100644 --- a/go/pkg/db/acme_user_insert.sql_generated.go +++ b/go/pkg/db/acme_user_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: acme_user_insert.sql package db diff --git a/go/pkg/db/acme_user_update_registration_uri.sql_generated.go b/go/pkg/db/acme_user_update_registration_uri.sql_generated.go index 6091f4587a..fde969db7b 100644 --- a/go/pkg/db/acme_user_update_registration_uri.sql_generated.go +++ b/go/pkg/db/acme_user_update_registration_uri.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: acme_user_update_registration_uri.sql package db diff --git a/go/pkg/db/api_find_by_id.sql_generated.go b/go/pkg/db/api_find_by_id.sql_generated.go index 4a45107d3f..1873587781 100644 --- a/go/pkg/db/api_find_by_id.sql_generated.go +++ b/go/pkg/db/api_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: api_find_by_id.sql package db diff --git a/go/pkg/db/api_find_live_by_id.sql_generated.go b/go/pkg/db/api_find_live_by_id.sql_generated.go index b992162a99..04484987d4 100644 --- a/go/pkg/db/api_find_live_by_id.sql_generated.go +++ b/go/pkg/db/api_find_live_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: api_find_live_by_id.sql package db diff --git a/go/pkg/db/api_insert.sql_generated.go b/go/pkg/db/api_insert.sql_generated.go index ee19a5c7bc..4c8dcff65c 100644 --- a/go/pkg/db/api_insert.sql_generated.go +++ b/go/pkg/db/api_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: api_insert.sql package db diff --git a/go/pkg/db/api_soft_delete.sql_generated.go b/go/pkg/db/api_soft_delete.sql_generated.go index 1e5e5999e6..b2115b988b 100644 --- a/go/pkg/db/api_soft_delete.sql_generated.go +++ b/go/pkg/db/api_soft_delete.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: api_soft_delete.sql package db diff --git a/go/pkg/db/api_update_delete_protection.sql_generated.go b/go/pkg/db/api_update_delete_protection.sql_generated.go index 43cfebfcb8..9030e931fc 100644 --- a/go/pkg/db/api_update_delete_protection.sql_generated.go +++ b/go/pkg/db/api_update_delete_protection.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: api_update_delete_protection.sql package db diff --git a/go/pkg/db/audit_log_find_target_by_id.sql_generated.go b/go/pkg/db/audit_log_find_target_by_id.sql_generated.go index afd2b90ab3..5d54127ab2 100644 --- a/go/pkg/db/audit_log_find_target_by_id.sql_generated.go +++ b/go/pkg/db/audit_log_find_target_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: audit_log_find_target_by_id.sql package db diff --git a/go/pkg/db/audit_log_insert.sql_generated.go b/go/pkg/db/audit_log_insert.sql_generated.go index 85e512103b..c204852578 100644 --- a/go/pkg/db/audit_log_insert.sql_generated.go +++ b/go/pkg/db/audit_log_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: audit_log_insert.sql package db diff --git a/go/pkg/db/audit_log_target_insert.sql_generated.go b/go/pkg/db/audit_log_target_insert.sql_generated.go index 4210d87e0c..8afd7d6547 100644 --- a/go/pkg/db/audit_log_target_insert.sql_generated.go +++ b/go/pkg/db/audit_log_target_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: audit_log_target_insert.sql package db diff --git a/go/pkg/db/build_find_by_id.sql_generated.go b/go/pkg/db/build_find_by_id.sql_generated.go index 6dd42a68f7..0646b6d33d 100644 --- a/go/pkg/db/build_find_by_id.sql_generated.go +++ b/go/pkg/db/build_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: build_find_by_id.sql package db diff --git a/go/pkg/db/build_find_latest_by_deployment_id.sql_generated.go b/go/pkg/db/build_find_latest_by_deployment_id.sql_generated.go index 5cf0ec15a6..fd09780bec 100644 --- a/go/pkg/db/build_find_latest_by_deployment_id.sql_generated.go +++ b/go/pkg/db/build_find_latest_by_deployment_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: build_find_latest_by_deployment_id.sql package db diff --git a/go/pkg/db/build_insert.sql_generated.go b/go/pkg/db/build_insert.sql_generated.go index 8f2262cd5f..793bb97e9f 100644 --- a/go/pkg/db/build_insert.sql_generated.go +++ b/go/pkg/db/build_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: build_insert.sql package db diff --git a/go/pkg/db/build_update_failed.sql_generated.go b/go/pkg/db/build_update_failed.sql_generated.go index 23089ef9bb..41a1adf3be 100644 --- a/go/pkg/db/build_update_failed.sql_generated.go +++ b/go/pkg/db/build_update_failed.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: build_update_failed.sql package db diff --git a/go/pkg/db/build_update_status.sql_generated.go b/go/pkg/db/build_update_status.sql_generated.go index dfcd802f54..5d03cb0e4f 100644 --- a/go/pkg/db/build_update_status.sql_generated.go +++ b/go/pkg/db/build_update_status.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: build_update_status.sql package db diff --git a/go/pkg/db/build_update_succeeded.sql_generated.go b/go/pkg/db/build_update_succeeded.sql_generated.go index de01cc6c9e..5df0d35bd8 100644 --- a/go/pkg/db/build_update_succeeded.sql_generated.go +++ b/go/pkg/db/build_update_succeeded.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: build_update_succeeded.sql package db diff --git a/go/pkg/db/bulk_deployment_insert.sql.go b/go/pkg/db/bulk_deployment_insert.sql.go index f5653ebf2f..9fea9522c5 100644 --- a/go/pkg/db/bulk_deployment_insert.sql.go +++ b/go/pkg/db/bulk_deployment_insert.sql.go @@ -9,7 +9,7 @@ import ( ) // bulkInsertDeployment is the base query for bulk insert -const bulkInsertDeployment = `INSERT INTO ` + "`" + `deployments` + "`" + ` ( id, workspace_id, project_id, environment, build_id, rootfs_image_id, git_commit_sha, git_branch, config_snapshot, openapi_spec, status, created_at, updated_at ) VALUES %s` +const bulkInsertDeployment = `INSERT INTO ` + "`" + `deployments` + "`" + ` ( id, workspace_id, project_id, environment, build_id, rootfs_image_id, git_commit_sha, git_branch, git_commit_message, git_commit_author_name, git_commit_author_username, git_commit_author_avatar_url, git_commit_timestamp, config_snapshot, openapi_spec, status, created_at, updated_at ) VALUES %s` // InsertDeployments performs bulk insert in a single query func (q *BulkQueries) InsertDeployments(ctx context.Context, db DBTX, args []InsertDeploymentParams) error { @@ -21,7 +21,7 @@ func (q *BulkQueries) InsertDeployments(ctx context.Context, db DBTX, args []Ins // Build the bulk insert query valueClauses := make([]string, len(args)) for i := range args { - valueClauses[i] = "( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" + valueClauses[i] = "( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )" } bulkQuery := fmt.Sprintf(bulkInsertDeployment, strings.Join(valueClauses, ", ")) @@ -37,6 +37,11 @@ func (q *BulkQueries) InsertDeployments(ctx context.Context, db DBTX, args []Ins allArgs = append(allArgs, arg.RootfsImageID) allArgs = append(allArgs, arg.GitCommitSha) allArgs = append(allArgs, arg.GitBranch) + allArgs = append(allArgs, arg.GitCommitMessage) + allArgs = append(allArgs, arg.GitCommitAuthorName) + allArgs = append(allArgs, arg.GitCommitAuthorUsername) + allArgs = append(allArgs, arg.GitCommitAuthorAvatarUrl) + allArgs = append(allArgs, arg.GitCommitTimestamp) allArgs = append(allArgs, arg.ConfigSnapshot) allArgs = append(allArgs, arg.OpenapiSpec) allArgs = append(allArgs, arg.Status) diff --git a/go/pkg/db/deployment_find_by_id.sql_generated.go b/go/pkg/db/deployment_find_by_id.sql_generated.go index 4d4f388564..07930d37f0 100644 --- a/go/pkg/db/deployment_find_by_id.sql_generated.go +++ b/go/pkg/db/deployment_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: deployment_find_by_id.sql package db @@ -19,6 +19,11 @@ SELECT rootfs_image_id, git_commit_sha, git_branch, + git_commit_message, + git_commit_author_name, + git_commit_author_username, + git_commit_author_avatar_url, + git_commit_timestamp, config_snapshot, openapi_spec, status, @@ -39,6 +44,11 @@ WHERE id = ? // rootfs_image_id, // git_commit_sha, // git_branch, +// git_commit_message, +// git_commit_author_name, +// git_commit_author_username, +// git_commit_author_avatar_url, +// git_commit_timestamp, // config_snapshot, // openapi_spec, // status, @@ -58,6 +68,11 @@ func (q *Queries) FindDeploymentById(ctx context.Context, db DBTX, id string) (D &i.RootfsImageID, &i.GitCommitSha, &i.GitBranch, + &i.GitCommitMessage, + &i.GitCommitAuthorName, + &i.GitCommitAuthorUsername, + &i.GitCommitAuthorAvatarUrl, + &i.GitCommitTimestamp, &i.ConfigSnapshot, &i.OpenapiSpec, &i.Status, diff --git a/go/pkg/db/deployment_insert.sql_generated.go b/go/pkg/db/deployment_insert.sql_generated.go index e558453e62..c72b3728a3 100644 --- a/go/pkg/db/deployment_insert.sql_generated.go +++ b/go/pkg/db/deployment_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: deployment_insert.sql package db @@ -21,6 +21,11 @@ INSERT INTO ` + "`" + `deployments` + "`" + ` ( rootfs_image_id, git_commit_sha, git_branch, + git_commit_message, + git_commit_author_name, + git_commit_author_username, + git_commit_author_avatar_url, + git_commit_timestamp, -- Unix epoch milliseconds config_snapshot, openapi_spec, status, @@ -40,24 +45,34 @@ VALUES ( ?, ?, ?, + ?, + ?, + ?, + ?, + ?, ? ) ` type InsertDeploymentParams struct { - ID string `db:"id"` - WorkspaceID string `db:"workspace_id"` - ProjectID string `db:"project_id"` - Environment DeploymentsEnvironment `db:"environment"` - BuildID sql.NullString `db:"build_id"` - RootfsImageID string `db:"rootfs_image_id"` - GitCommitSha sql.NullString `db:"git_commit_sha"` - GitBranch sql.NullString `db:"git_branch"` - ConfigSnapshot json.RawMessage `db:"config_snapshot"` - OpenapiSpec sql.NullString `db:"openapi_spec"` - Status DeploymentsStatus `db:"status"` - CreatedAt int64 `db:"created_at"` - UpdatedAt sql.NullInt64 `db:"updated_at"` + ID string `db:"id"` + WorkspaceID string `db:"workspace_id"` + ProjectID string `db:"project_id"` + Environment DeploymentsEnvironment `db:"environment"` + BuildID sql.NullString `db:"build_id"` + RootfsImageID string `db:"rootfs_image_id"` + GitCommitSha sql.NullString `db:"git_commit_sha"` + GitBranch sql.NullString `db:"git_branch"` + GitCommitMessage sql.NullString `db:"git_commit_message"` + GitCommitAuthorName sql.NullString `db:"git_commit_author_name"` + GitCommitAuthorUsername sql.NullString `db:"git_commit_author_username"` + GitCommitAuthorAvatarUrl sql.NullString `db:"git_commit_author_avatar_url"` + GitCommitTimestamp sql.NullInt64 `db:"git_commit_timestamp"` + ConfigSnapshot json.RawMessage `db:"config_snapshot"` + OpenapiSpec sql.NullString `db:"openapi_spec"` + Status DeploymentsStatus `db:"status"` + CreatedAt int64 `db:"created_at"` + UpdatedAt sql.NullInt64 `db:"updated_at"` } // InsertDeployment @@ -71,6 +86,11 @@ type InsertDeploymentParams struct { // rootfs_image_id, // git_commit_sha, // git_branch, +// git_commit_message, +// git_commit_author_name, +// git_commit_author_username, +// git_commit_author_avatar_url, +// git_commit_timestamp, -- Unix epoch milliseconds // config_snapshot, // openapi_spec, // status, @@ -90,6 +110,11 @@ type InsertDeploymentParams struct { // ?, // ?, // ?, +// ?, +// ?, +// ?, +// ?, +// ?, // ? // ) func (q *Queries) InsertDeployment(ctx context.Context, db DBTX, arg InsertDeploymentParams) error { @@ -102,6 +127,11 @@ func (q *Queries) InsertDeployment(ctx context.Context, db DBTX, arg InsertDeplo arg.RootfsImageID, arg.GitCommitSha, arg.GitBranch, + arg.GitCommitMessage, + arg.GitCommitAuthorName, + arg.GitCommitAuthorUsername, + arg.GitCommitAuthorAvatarUrl, + arg.GitCommitTimestamp, arg.ConfigSnapshot, arg.OpenapiSpec, arg.Status, diff --git a/go/pkg/db/deployment_step_find_by_deployment_id.sql_generated.go b/go/pkg/db/deployment_step_find_by_deployment_id.sql_generated.go index 287a9a4d30..1fd734e4ed 100644 --- a/go/pkg/db/deployment_step_find_by_deployment_id.sql_generated.go +++ b/go/pkg/db/deployment_step_find_by_deployment_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: deployment_step_find_by_deployment_id.sql package db diff --git a/go/pkg/db/deployment_step_insert.sql_generated.go b/go/pkg/db/deployment_step_insert.sql_generated.go index 180f5cf0a9..29aa4275f9 100644 --- a/go/pkg/db/deployment_step_insert.sql_generated.go +++ b/go/pkg/db/deployment_step_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: deployment_step_insert.sql package db diff --git a/go/pkg/db/deployment_update_openapi_spec.sql_generated.go b/go/pkg/db/deployment_update_openapi_spec.sql_generated.go index 8e09b9d8d2..acea166c02 100644 --- a/go/pkg/db/deployment_update_openapi_spec.sql_generated.go +++ b/go/pkg/db/deployment_update_openapi_spec.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: deployment_update_openapi_spec.sql package db diff --git a/go/pkg/db/deployment_update_status.sql_generated.go b/go/pkg/db/deployment_update_status.sql_generated.go index 11bb1d5001..814ed65aa9 100644 --- a/go/pkg/db/deployment_update_status.sql_generated.go +++ b/go/pkg/db/deployment_update_status.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: deployment_update_status.sql package db diff --git a/go/pkg/db/domain_challenge_find_by_token.sql_generated.go b/go/pkg/db/domain_challenge_find_by_token.sql_generated.go index 2184665553..507a93c320 100644 --- a/go/pkg/db/domain_challenge_find_by_token.sql_generated.go +++ b/go/pkg/db/domain_challenge_find_by_token.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: domain_challenge_find_by_token.sql package db diff --git a/go/pkg/db/domain_challenge_insert.sql_generated.go b/go/pkg/db/domain_challenge_insert.sql_generated.go index c70d359c05..949fd54ed5 100644 --- a/go/pkg/db/domain_challenge_insert.sql_generated.go +++ b/go/pkg/db/domain_challenge_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: domain_challenge_insert.sql package db diff --git a/go/pkg/db/domain_challenge_list_executable.sql_generated.go b/go/pkg/db/domain_challenge_list_executable.sql_generated.go index a4ba4599a0..29d34b73e2 100644 --- a/go/pkg/db/domain_challenge_list_executable.sql_generated.go +++ b/go/pkg/db/domain_challenge_list_executable.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: domain_challenge_list_executable.sql package db diff --git a/go/pkg/db/domain_challenge_try_claiming.sql_generated.go b/go/pkg/db/domain_challenge_try_claiming.sql_generated.go index 6c0ddb149d..d4bd6459cd 100644 --- a/go/pkg/db/domain_challenge_try_claiming.sql_generated.go +++ b/go/pkg/db/domain_challenge_try_claiming.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: domain_challenge_try_claiming.sql package db diff --git a/go/pkg/db/domain_challenge_update_expires_at.sql_generated.go b/go/pkg/db/domain_challenge_update_expires_at.sql_generated.go index 793727d688..a6c0639cc4 100644 --- a/go/pkg/db/domain_challenge_update_expires_at.sql_generated.go +++ b/go/pkg/db/domain_challenge_update_expires_at.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: domain_challenge_update_expires_at.sql package db diff --git a/go/pkg/db/domain_challenge_update_pending.sql_generated.go b/go/pkg/db/domain_challenge_update_pending.sql_generated.go index 520978301c..e9e1fbe179 100644 --- a/go/pkg/db/domain_challenge_update_pending.sql_generated.go +++ b/go/pkg/db/domain_challenge_update_pending.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: domain_challenge_update_pending.sql package db diff --git a/go/pkg/db/domain_challenge_update_status.sql_generated.go b/go/pkg/db/domain_challenge_update_status.sql_generated.go index 82ccff5230..2150082f70 100644 --- a/go/pkg/db/domain_challenge_update_status.sql_generated.go +++ b/go/pkg/db/domain_challenge_update_status.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: domain_challenge_update_status.sql package db diff --git a/go/pkg/db/domain_find_by_domain.sql_generated.go b/go/pkg/db/domain_find_by_domain.sql_generated.go index a5d9ed4e0f..8a70c959d2 100644 --- a/go/pkg/db/domain_find_by_domain.sql_generated.go +++ b/go/pkg/db/domain_find_by_domain.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: domain_find_by_domain.sql package db diff --git a/go/pkg/db/domain_insert.sql_generated.go b/go/pkg/db/domain_insert.sql_generated.go index da6d998581..b0873be642 100644 --- a/go/pkg/db/domain_insert.sql_generated.go +++ b/go/pkg/db/domain_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: domain_insert.sql package db diff --git a/go/pkg/db/identity_delete.sql_generated.go b/go/pkg/db/identity_delete.sql_generated.go index cba318f3e1..1349ec9b5c 100644 --- a/go/pkg/db/identity_delete.sql_generated.go +++ b/go/pkg/db/identity_delete.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_delete.sql package db diff --git a/go/pkg/db/identity_delete_old_with_ratelimits.sql_generated.go b/go/pkg/db/identity_delete_old_with_ratelimits.sql_generated.go index 35b79f1f5f..6ae8d82b86 100644 --- a/go/pkg/db/identity_delete_old_with_ratelimits.sql_generated.go +++ b/go/pkg/db/identity_delete_old_with_ratelimits.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_delete_old_with_ratelimits.sql package db diff --git a/go/pkg/db/identity_find.sql_generated.go b/go/pkg/db/identity_find.sql_generated.go index 6308ac746a..b72be3c703 100644 --- a/go/pkg/db/identity_find.sql_generated.go +++ b/go/pkg/db/identity_find.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_find.sql package db diff --git a/go/pkg/db/identity_insert.sql_generated.go b/go/pkg/db/identity_insert.sql_generated.go index be34690f14..f9bd9cd4e5 100644 --- a/go/pkg/db/identity_insert.sql_generated.go +++ b/go/pkg/db/identity_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_insert.sql package db diff --git a/go/pkg/db/identity_insert_ratelimit.sql_generated.go b/go/pkg/db/identity_insert_ratelimit.sql_generated.go index 1787b72167..01022ac8dc 100644 --- a/go/pkg/db/identity_insert_ratelimit.sql_generated.go +++ b/go/pkg/db/identity_insert_ratelimit.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_insert_ratelimit.sql package db diff --git a/go/pkg/db/identity_list.sql_generated.go b/go/pkg/db/identity_list.sql_generated.go index f524a06807..48bd1c4698 100644 --- a/go/pkg/db/identity_list.sql_generated.go +++ b/go/pkg/db/identity_list.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_list.sql package db diff --git a/go/pkg/db/identity_list_ratelimits.sql_generated.go b/go/pkg/db/identity_list_ratelimits.sql_generated.go index 4b214de79f..befff535da 100644 --- a/go/pkg/db/identity_list_ratelimits.sql_generated.go +++ b/go/pkg/db/identity_list_ratelimits.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_list_ratelimits.sql package db diff --git a/go/pkg/db/identity_list_ratelimits_by_id.sql_generated.go b/go/pkg/db/identity_list_ratelimits_by_id.sql_generated.go index 76d9e6cb0b..d81a099308 100644 --- a/go/pkg/db/identity_list_ratelimits_by_id.sql_generated.go +++ b/go/pkg/db/identity_list_ratelimits_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_list_ratelimits_by_id.sql package db diff --git a/go/pkg/db/identity_list_ratelimits_by_ids.sql_generated.go b/go/pkg/db/identity_list_ratelimits_by_ids.sql_generated.go index 7791ef4334..fc9041101c 100644 --- a/go/pkg/db/identity_list_ratelimits_by_ids.sql_generated.go +++ b/go/pkg/db/identity_list_ratelimits_by_ids.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_list_ratelimits_by_ids.sql package db diff --git a/go/pkg/db/identity_soft_delete.sql_generated.go b/go/pkg/db/identity_soft_delete.sql_generated.go index dd26d7492d..6405ff3fd1 100644 --- a/go/pkg/db/identity_soft_delete.sql_generated.go +++ b/go/pkg/db/identity_soft_delete.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_soft_delete.sql package db diff --git a/go/pkg/db/identity_update.sql_generated.go b/go/pkg/db/identity_update.sql_generated.go index b29ecf3d5f..be0d6635e5 100644 --- a/go/pkg/db/identity_update.sql_generated.go +++ b/go/pkg/db/identity_update.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: identity_update.sql package db diff --git a/go/pkg/db/key_delete_by_id.sql_generated.go b/go/pkg/db/key_delete_by_id.sql_generated.go index 26dfd41166..71482b3edc 100644 --- a/go/pkg/db/key_delete_by_id.sql_generated.go +++ b/go/pkg/db/key_delete_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_delete_by_id.sql package db diff --git a/go/pkg/db/key_encryption_find_by_key_id.sql_generated.go b/go/pkg/db/key_encryption_find_by_key_id.sql_generated.go index 3eb2198def..2b8ae9d2b2 100644 --- a/go/pkg/db/key_encryption_find_by_key_id.sql_generated.go +++ b/go/pkg/db/key_encryption_find_by_key_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_encryption_find_by_key_id.sql package db diff --git a/go/pkg/db/key_encryption_insert.sql_generated.go b/go/pkg/db/key_encryption_insert.sql_generated.go index 8be70e3e8b..97ad53ba62 100644 --- a/go/pkg/db/key_encryption_insert.sql_generated.go +++ b/go/pkg/db/key_encryption_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_encryption_insert.sql package db diff --git a/go/pkg/db/key_find_by_id.sql_generated.go b/go/pkg/db/key_find_by_id.sql_generated.go index e105500ef4..db833cd679 100644 --- a/go/pkg/db/key_find_by_id.sql_generated.go +++ b/go/pkg/db/key_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_find_by_id.sql package db diff --git a/go/pkg/db/key_find_credits.sql_generated.go b/go/pkg/db/key_find_credits.sql_generated.go index 0f7a87e3b1..9ff0922398 100644 --- a/go/pkg/db/key_find_credits.sql_generated.go +++ b/go/pkg/db/key_find_credits.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_find_credits.sql package db diff --git a/go/pkg/db/key_find_for_verification.sql_generated.go b/go/pkg/db/key_find_for_verification.sql_generated.go index 5e463a29c2..ac52556e35 100644 --- a/go/pkg/db/key_find_for_verification.sql_generated.go +++ b/go/pkg/db/key_find_for_verification.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_find_for_verification.sql package db diff --git a/go/pkg/db/key_find_live_by_hash.sql_generated.go b/go/pkg/db/key_find_live_by_hash.sql_generated.go index 78f8d350e4..ff835f6f8b 100644 --- a/go/pkg/db/key_find_live_by_hash.sql_generated.go +++ b/go/pkg/db/key_find_live_by_hash.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_find_live_by_hash.sql package db diff --git a/go/pkg/db/key_find_live_by_id.sql_generated.go b/go/pkg/db/key_find_live_by_id.sql_generated.go index 234bdaf5a5..1b9e5c76b4 100644 --- a/go/pkg/db/key_find_live_by_id.sql_generated.go +++ b/go/pkg/db/key_find_live_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_find_live_by_id.sql package db diff --git a/go/pkg/db/key_insert.sql_generated.go b/go/pkg/db/key_insert.sql_generated.go index f33b0d8259..05c450142e 100644 --- a/go/pkg/db/key_insert.sql_generated.go +++ b/go/pkg/db/key_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_insert.sql package db diff --git a/go/pkg/db/key_insert_ratelimit.sql_generated.go b/go/pkg/db/key_insert_ratelimit.sql_generated.go index 755595035c..3eb49a8d6e 100644 --- a/go/pkg/db/key_insert_ratelimit.sql_generated.go +++ b/go/pkg/db/key_insert_ratelimit.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_insert_ratelimit.sql package db diff --git a/go/pkg/db/key_list_by_key_auth_id.sql_generated.go b/go/pkg/db/key_list_by_key_auth_id.sql_generated.go index 7ce4927984..43fa4c4a37 100644 --- a/go/pkg/db/key_list_by_key_auth_id.sql_generated.go +++ b/go/pkg/db/key_list_by_key_auth_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_list_by_key_auth_id.sql package db diff --git a/go/pkg/db/key_list_live_by_auth_id.sql_generated.go b/go/pkg/db/key_list_live_by_auth_id.sql_generated.go index 4eee776bc5..2c5a4a2add 100644 --- a/go/pkg/db/key_list_live_by_auth_id.sql_generated.go +++ b/go/pkg/db/key_list_live_by_auth_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_list_live_by_auth_id.sql package db diff --git a/go/pkg/db/key_permission_delete_all_by_key_id.sql_generated.go b/go/pkg/db/key_permission_delete_all_by_key_id.sql_generated.go index 865c46465a..5b2e499511 100644 --- a/go/pkg/db/key_permission_delete_all_by_key_id.sql_generated.go +++ b/go/pkg/db/key_permission_delete_all_by_key_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_permission_delete_all_by_key_id.sql package db diff --git a/go/pkg/db/key_permission_delete_by_key_and_permission_id.sql_generated.go b/go/pkg/db/key_permission_delete_by_key_and_permission_id.sql_generated.go index f149574757..0d85db744f 100644 --- a/go/pkg/db/key_permission_delete_by_key_and_permission_id.sql_generated.go +++ b/go/pkg/db/key_permission_delete_by_key_and_permission_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_permission_delete_by_key_and_permission_id.sql package db diff --git a/go/pkg/db/key_permission_delete_many_by_key_and_permission_ids.sql_generated.go b/go/pkg/db/key_permission_delete_many_by_key_and_permission_ids.sql_generated.go index 557f41c40c..dcc50ae728 100644 --- a/go/pkg/db/key_permission_delete_many_by_key_and_permission_ids.sql_generated.go +++ b/go/pkg/db/key_permission_delete_many_by_key_and_permission_ids.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_permission_delete_many_by_key_and_permission_ids.sql package db diff --git a/go/pkg/db/key_permission_delete_many_by_permission_id.sql_generated.go b/go/pkg/db/key_permission_delete_many_by_permission_id.sql_generated.go index 78ac166c0a..36a8bf3ea2 100644 --- a/go/pkg/db/key_permission_delete_many_by_permission_id.sql_generated.go +++ b/go/pkg/db/key_permission_delete_many_by_permission_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_permission_delete_many_by_permission_id.sql package db diff --git a/go/pkg/db/key_permission_insert.sql_generated.go b/go/pkg/db/key_permission_insert.sql_generated.go index bafe79643b..84e41d1763 100644 --- a/go/pkg/db/key_permission_insert.sql_generated.go +++ b/go/pkg/db/key_permission_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_permission_insert.sql package db diff --git a/go/pkg/db/key_role_delete_all_by_key_id.sql_generated.go b/go/pkg/db/key_role_delete_all_by_key_id.sql_generated.go index 283e68e78b..3292245293 100644 --- a/go/pkg/db/key_role_delete_all_by_key_id.sql_generated.go +++ b/go/pkg/db/key_role_delete_all_by_key_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_role_delete_all_by_key_id.sql package db diff --git a/go/pkg/db/key_role_delete_many_by_key_and_role_ids.sql_generated.go b/go/pkg/db/key_role_delete_many_by_key_and_role_ids.sql_generated.go index 09514ce053..1e8cfdacab 100644 --- a/go/pkg/db/key_role_delete_many_by_key_and_role_ids.sql_generated.go +++ b/go/pkg/db/key_role_delete_many_by_key_and_role_ids.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_role_delete_many_by_key_and_role_ids.sql package db diff --git a/go/pkg/db/key_role_delete_many_by_key_id.sql_generated.go b/go/pkg/db/key_role_delete_many_by_key_id.sql_generated.go index b9ce4e9c39..49b0bcd832 100644 --- a/go/pkg/db/key_role_delete_many_by_key_id.sql_generated.go +++ b/go/pkg/db/key_role_delete_many_by_key_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_role_delete_many_by_key_id.sql package db diff --git a/go/pkg/db/key_role_delete_many_by_role_id.sql_generated.go b/go/pkg/db/key_role_delete_many_by_role_id.sql_generated.go index 2d73f2f1ed..ddd0065c97 100644 --- a/go/pkg/db/key_role_delete_many_by_role_id.sql_generated.go +++ b/go/pkg/db/key_role_delete_many_by_role_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_role_delete_many_by_role_id.sql package db diff --git a/go/pkg/db/key_role_find_by_key_and_role_id.sql_generated.go b/go/pkg/db/key_role_find_by_key_and_role_id.sql_generated.go index 47df3735c0..019d235e66 100644 --- a/go/pkg/db/key_role_find_by_key_and_role_id.sql_generated.go +++ b/go/pkg/db/key_role_find_by_key_and_role_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_role_find_by_key_and_role_id.sql package db diff --git a/go/pkg/db/key_role_insert.sql_generated.go b/go/pkg/db/key_role_insert.sql_generated.go index fdc6a1bda9..2ef9819539 100644 --- a/go/pkg/db/key_role_insert.sql_generated.go +++ b/go/pkg/db/key_role_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_role_insert.sql package db diff --git a/go/pkg/db/key_soft_delete_by_id.sql_generated.go b/go/pkg/db/key_soft_delete_by_id.sql_generated.go index 8b0347b728..c9b1afb2f9 100644 --- a/go/pkg/db/key_soft_delete_by_id.sql_generated.go +++ b/go/pkg/db/key_soft_delete_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_soft_delete_by_id.sql package db diff --git a/go/pkg/db/key_soft_delete_many_by_key_auth_id.sql_generated.go b/go/pkg/db/key_soft_delete_many_by_key_auth_id.sql_generated.go index 9dfd8947f2..70074663bb 100644 --- a/go/pkg/db/key_soft_delete_many_by_key_auth_id.sql_generated.go +++ b/go/pkg/db/key_soft_delete_many_by_key_auth_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_soft_delete_many_by_key_auth_id.sql package db diff --git a/go/pkg/db/key_update.sql_generated.go b/go/pkg/db/key_update.sql_generated.go index aa62e5cf21..f3bc6d23f6 100644 --- a/go/pkg/db/key_update.sql_generated.go +++ b/go/pkg/db/key_update.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_update.sql package db diff --git a/go/pkg/db/key_update_credits_decrement.sql_generated.go b/go/pkg/db/key_update_credits_decrement.sql_generated.go index 4dcada52b8..cea121984f 100644 --- a/go/pkg/db/key_update_credits_decrement.sql_generated.go +++ b/go/pkg/db/key_update_credits_decrement.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_update_credits_decrement.sql package db diff --git a/go/pkg/db/key_update_credits_increment.sql_generated.go b/go/pkg/db/key_update_credits_increment.sql_generated.go index 675c12ceb7..a41dac6212 100644 --- a/go/pkg/db/key_update_credits_increment.sql_generated.go +++ b/go/pkg/db/key_update_credits_increment.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_update_credits_increment.sql package db diff --git a/go/pkg/db/key_update_credits_refill.sql_generated.go b/go/pkg/db/key_update_credits_refill.sql_generated.go index 405232e52f..ac5ca8fd1c 100644 --- a/go/pkg/db/key_update_credits_refill.sql_generated.go +++ b/go/pkg/db/key_update_credits_refill.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_update_credits_refill.sql package db diff --git a/go/pkg/db/key_update_credits_set.sql_generated.go b/go/pkg/db/key_update_credits_set.sql_generated.go index 8aece9bc4c..e0edab27de 100644 --- a/go/pkg/db/key_update_credits_set.sql_generated.go +++ b/go/pkg/db/key_update_credits_set.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: key_update_credits_set.sql package db diff --git a/go/pkg/db/keyring_find_by_id.sql_generated.go b/go/pkg/db/keyring_find_by_id.sql_generated.go index 4a9e2d1415..dccc11f4ec 100644 --- a/go/pkg/db/keyring_find_by_id.sql_generated.go +++ b/go/pkg/db/keyring_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: keyring_find_by_id.sql package db diff --git a/go/pkg/db/keyring_insert.sql_generated.go b/go/pkg/db/keyring_insert.sql_generated.go index 64c1581317..a5b08b5af7 100644 --- a/go/pkg/db/keyring_insert.sql_generated.go +++ b/go/pkg/db/keyring_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: keyring_insert.sql package db diff --git a/go/pkg/db/keyring_update_key_encryption.sql_generated.go b/go/pkg/db/keyring_update_key_encryption.sql_generated.go index b839326fcc..be3519ff3f 100644 --- a/go/pkg/db/keyring_update_key_encryption.sql_generated.go +++ b/go/pkg/db/keyring_update_key_encryption.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: keyring_update_key_encryption.sql package db diff --git a/go/pkg/db/models_generated.go b/go/pkg/db/models_generated.go index 5ba85f6bb1..42bf56cadf 100644 --- a/go/pkg/db/models_generated.go +++ b/go/pkg/db/models_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 package db @@ -704,19 +704,24 @@ type Build struct { } type Deployment struct { - ID string `db:"id"` - WorkspaceID string `db:"workspace_id"` - ProjectID string `db:"project_id"` - Environment DeploymentsEnvironment `db:"environment"` - BuildID sql.NullString `db:"build_id"` - RootfsImageID string `db:"rootfs_image_id"` - GitCommitSha sql.NullString `db:"git_commit_sha"` - GitBranch sql.NullString `db:"git_branch"` - ConfigSnapshot json.RawMessage `db:"config_snapshot"` - OpenapiSpec sql.NullString `db:"openapi_spec"` - Status DeploymentsStatus `db:"status"` - CreatedAt int64 `db:"created_at"` - UpdatedAt sql.NullInt64 `db:"updated_at"` + ID string `db:"id"` + WorkspaceID string `db:"workspace_id"` + ProjectID string `db:"project_id"` + Environment DeploymentsEnvironment `db:"environment"` + BuildID sql.NullString `db:"build_id"` + RootfsImageID string `db:"rootfs_image_id"` + GitCommitSha sql.NullString `db:"git_commit_sha"` + GitBranch sql.NullString `db:"git_branch"` + GitCommitMessage sql.NullString `db:"git_commit_message"` + GitCommitAuthorName sql.NullString `db:"git_commit_author_name"` + GitCommitAuthorUsername sql.NullString `db:"git_commit_author_username"` + GitCommitAuthorAvatarUrl sql.NullString `db:"git_commit_author_avatar_url"` + GitCommitTimestamp sql.NullInt64 `db:"git_commit_timestamp"` + ConfigSnapshot json.RawMessage `db:"config_snapshot"` + OpenapiSpec sql.NullString `db:"openapi_spec"` + Status DeploymentsStatus `db:"status"` + CreatedAt int64 `db:"created_at"` + UpdatedAt sql.NullInt64 `db:"updated_at"` } type DeploymentStep struct { diff --git a/go/pkg/db/permission_delete_by_id.sql_generated.go b/go/pkg/db/permission_delete_by_id.sql_generated.go index 558e9c6299..bf10c82947 100644 --- a/go/pkg/db/permission_delete_by_id.sql_generated.go +++ b/go/pkg/db/permission_delete_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_delete_by_id.sql package db diff --git a/go/pkg/db/permission_find_by_id.sql_generated.go b/go/pkg/db/permission_find_by_id.sql_generated.go index 6301b2b458..69b13d36fd 100644 --- a/go/pkg/db/permission_find_by_id.sql_generated.go +++ b/go/pkg/db/permission_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_find_by_id.sql package db diff --git a/go/pkg/db/permission_find_by_id_or_slug.sql_generated.go b/go/pkg/db/permission_find_by_id_or_slug.sql_generated.go index e4b0edf06b..6f3cbe02cd 100644 --- a/go/pkg/db/permission_find_by_id_or_slug.sql_generated.go +++ b/go/pkg/db/permission_find_by_id_or_slug.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_find_by_id_or_slug.sql package db diff --git a/go/pkg/db/permission_find_by_name_and_workspace_id.sql_generated.go b/go/pkg/db/permission_find_by_name_and_workspace_id.sql_generated.go index a5aff7467b..18b4463766 100644 --- a/go/pkg/db/permission_find_by_name_and_workspace_id.sql_generated.go +++ b/go/pkg/db/permission_find_by_name_and_workspace_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_find_by_name_and_workspace_id.sql package db diff --git a/go/pkg/db/permission_find_by_slug_and_workspace_id.sql_generated.go b/go/pkg/db/permission_find_by_slug_and_workspace_id.sql_generated.go index 49e5dcd299..234f7e0195 100644 --- a/go/pkg/db/permission_find_by_slug_and_workspace_id.sql_generated.go +++ b/go/pkg/db/permission_find_by_slug_and_workspace_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_find_by_slug_and_workspace_id.sql package db diff --git a/go/pkg/db/permission_find_by_slugs.sql_generated.go b/go/pkg/db/permission_find_by_slugs.sql_generated.go index a5168bc89e..b24c985b60 100644 --- a/go/pkg/db/permission_find_by_slugs.sql_generated.go +++ b/go/pkg/db/permission_find_by_slugs.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_find_by_slugs.sql package db diff --git a/go/pkg/db/permission_insert.sql_generated.go b/go/pkg/db/permission_insert.sql_generated.go index a9adbda13a..b496033551 100644 --- a/go/pkg/db/permission_insert.sql_generated.go +++ b/go/pkg/db/permission_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_insert.sql package db diff --git a/go/pkg/db/permission_list.sql_generated.go b/go/pkg/db/permission_list.sql_generated.go index aabfce89f0..3b956a9ac3 100644 --- a/go/pkg/db/permission_list.sql_generated.go +++ b/go/pkg/db/permission_list.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_list.sql package db diff --git a/go/pkg/db/permission_list_by_key_id.sql_generated.go b/go/pkg/db/permission_list_by_key_id.sql_generated.go index 4100957bc4..68d6ef055c 100644 --- a/go/pkg/db/permission_list_by_key_id.sql_generated.go +++ b/go/pkg/db/permission_list_by_key_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_list_by_key_id.sql package db diff --git a/go/pkg/db/permission_list_by_role_id.sql_generated.go b/go/pkg/db/permission_list_by_role_id.sql_generated.go index c92afff3f9..c553dbba68 100644 --- a/go/pkg/db/permission_list_by_role_id.sql_generated.go +++ b/go/pkg/db/permission_list_by_role_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_list_by_role_id.sql package db diff --git a/go/pkg/db/permission_list_direct_by_key_id.sql_generated.go b/go/pkg/db/permission_list_direct_by_key_id.sql_generated.go index c2e886071a..90b7b028cd 100644 --- a/go/pkg/db/permission_list_direct_by_key_id.sql_generated.go +++ b/go/pkg/db/permission_list_direct_by_key_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: permission_list_direct_by_key_id.sql package db diff --git a/go/pkg/db/project_find_by_id.sql_generated.go b/go/pkg/db/project_find_by_id.sql_generated.go index 9b5798ca57..f3545a9316 100644 --- a/go/pkg/db/project_find_by_id.sql_generated.go +++ b/go/pkg/db/project_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: project_find_by_id.sql package db diff --git a/go/pkg/db/project_find_by_workspace_slug.sql_generated.go b/go/pkg/db/project_find_by_workspace_slug.sql_generated.go index 7506c9dc3f..ba44a8e058 100644 --- a/go/pkg/db/project_find_by_workspace_slug.sql_generated.go +++ b/go/pkg/db/project_find_by_workspace_slug.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: project_find_by_workspace_slug.sql package db diff --git a/go/pkg/db/project_insert.sql_generated.go b/go/pkg/db/project_insert.sql_generated.go index 0ad7023cb7..e177754d43 100644 --- a/go/pkg/db/project_insert.sql_generated.go +++ b/go/pkg/db/project_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: project_insert.sql package db diff --git a/go/pkg/db/querier_generated.go b/go/pkg/db/querier_generated.go index ac3e27dff2..8c2276959a 100644 --- a/go/pkg/db/querier_generated.go +++ b/go/pkg/db/querier_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 package db @@ -159,6 +159,11 @@ type Querier interface { // rootfs_image_id, // git_commit_sha, // git_branch, + // git_commit_message, + // git_commit_author_name, + // git_commit_author_username, + // git_commit_author_avatar_url, + // git_commit_timestamp, // config_snapshot, // openapi_spec, // status, @@ -877,6 +882,11 @@ type Querier interface { // rootfs_image_id, // git_commit_sha, // git_branch, + // git_commit_message, + // git_commit_author_name, + // git_commit_author_username, + // git_commit_author_avatar_url, + // git_commit_timestamp, -- Unix epoch milliseconds // config_snapshot, // openapi_spec, // status, @@ -896,6 +906,11 @@ type Querier interface { // ?, // ?, // ?, + // ?, + // ?, + // ?, + // ?, + // ?, // ? // ) InsertDeployment(ctx context.Context, db DBTX, arg InsertDeploymentParams) error diff --git a/go/pkg/db/queries/deployment_find_by_id.sql b/go/pkg/db/queries/deployment_find_by_id.sql index a2971de58e..cf921a8073 100644 --- a/go/pkg/db/queries/deployment_find_by_id.sql +++ b/go/pkg/db/queries/deployment_find_by_id.sql @@ -8,6 +8,11 @@ SELECT rootfs_image_id, git_commit_sha, git_branch, + git_commit_message, + git_commit_author_name, + git_commit_author_username, + git_commit_author_avatar_url, + git_commit_timestamp, config_snapshot, openapi_spec, status, diff --git a/go/pkg/db/queries/deployment_insert.sql b/go/pkg/db/queries/deployment_insert.sql index b75e56aef1..1ee396b94e 100644 --- a/go/pkg/db/queries/deployment_insert.sql +++ b/go/pkg/db/queries/deployment_insert.sql @@ -8,6 +8,11 @@ INSERT INTO `deployments` ( rootfs_image_id, git_commit_sha, git_branch, + git_commit_message, + git_commit_author_name, + git_commit_author_username, + git_commit_author_avatar_url, + git_commit_timestamp, -- Unix epoch milliseconds config_snapshot, openapi_spec, status, @@ -23,6 +28,11 @@ VALUES ( sqlc.arg(rootfs_image_id), sqlc.arg(git_commit_sha), sqlc.arg(git_branch), + sqlc.arg(git_commit_message), + sqlc.arg(git_commit_author_name), + sqlc.arg(git_commit_author_username), + sqlc.arg(git_commit_author_avatar_url), + sqlc.arg(git_commit_timestamp), sqlc.arg(config_snapshot), sqlc.arg(openapi_spec), sqlc.arg(status), diff --git a/go/pkg/db/ratelimit_delete.sql_generated.go b/go/pkg/db/ratelimit_delete.sql_generated.go index b900be2cd0..260bc582ad 100644 --- a/go/pkg/db/ratelimit_delete.sql_generated.go +++ b/go/pkg/db/ratelimit_delete.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_delete.sql package db diff --git a/go/pkg/db/ratelimit_delete_many_by_identity_id.sql_generated.go b/go/pkg/db/ratelimit_delete_many_by_identity_id.sql_generated.go index 18479d5f3a..fa3dd3c59d 100644 --- a/go/pkg/db/ratelimit_delete_many_by_identity_id.sql_generated.go +++ b/go/pkg/db/ratelimit_delete_many_by_identity_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_delete_many_by_identity_id.sql package db diff --git a/go/pkg/db/ratelimit_delete_many_by_ids.sql_generated.go b/go/pkg/db/ratelimit_delete_many_by_ids.sql_generated.go index 725005a8d6..e2f9db52d5 100644 --- a/go/pkg/db/ratelimit_delete_many_by_ids.sql_generated.go +++ b/go/pkg/db/ratelimit_delete_many_by_ids.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_delete_many_by_ids.sql package db diff --git a/go/pkg/db/ratelimit_list_by_key_id.sql_generated.go b/go/pkg/db/ratelimit_list_by_key_id.sql_generated.go index 6e5bc59c1f..2eba8c871b 100644 --- a/go/pkg/db/ratelimit_list_by_key_id.sql_generated.go +++ b/go/pkg/db/ratelimit_list_by_key_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_list_by_key_id.sql package db diff --git a/go/pkg/db/ratelimit_list_by_key_ids.sql_generated.go b/go/pkg/db/ratelimit_list_by_key_ids.sql_generated.go index 2ff6783298..eb6df6c596 100644 --- a/go/pkg/db/ratelimit_list_by_key_ids.sql_generated.go +++ b/go/pkg/db/ratelimit_list_by_key_ids.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_list_by_key_ids.sql package db diff --git a/go/pkg/db/ratelimit_namespace_delete.sql_generated.go b/go/pkg/db/ratelimit_namespace_delete.sql_generated.go index 46757d2d80..2d6bbfa3e6 100644 --- a/go/pkg/db/ratelimit_namespace_delete.sql_generated.go +++ b/go/pkg/db/ratelimit_namespace_delete.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_namespace_delete.sql package db diff --git a/go/pkg/db/ratelimit_namespace_find.sql_generated.go b/go/pkg/db/ratelimit_namespace_find.sql_generated.go index 041c0d8be0..cac3a0e56d 100644 --- a/go/pkg/db/ratelimit_namespace_find.sql_generated.go +++ b/go/pkg/db/ratelimit_namespace_find.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_namespace_find.sql package db diff --git a/go/pkg/db/ratelimit_namespace_find_by_id.sql_generated.go b/go/pkg/db/ratelimit_namespace_find_by_id.sql_generated.go index a02ca1ddcd..860275d0be 100644 --- a/go/pkg/db/ratelimit_namespace_find_by_id.sql_generated.go +++ b/go/pkg/db/ratelimit_namespace_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_namespace_find_by_id.sql package db diff --git a/go/pkg/db/ratelimit_namespace_find_by_name.sql_generated.go b/go/pkg/db/ratelimit_namespace_find_by_name.sql_generated.go index 5b041bb844..5c2fe0ec54 100644 --- a/go/pkg/db/ratelimit_namespace_find_by_name.sql_generated.go +++ b/go/pkg/db/ratelimit_namespace_find_by_name.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_namespace_find_by_name.sql package db diff --git a/go/pkg/db/ratelimit_namespace_insert.sql_generated.go b/go/pkg/db/ratelimit_namespace_insert.sql_generated.go index 150c1b8aaf..d727ae8207 100644 --- a/go/pkg/db/ratelimit_namespace_insert.sql_generated.go +++ b/go/pkg/db/ratelimit_namespace_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_namespace_insert.sql package db diff --git a/go/pkg/db/ratelimit_namespace_soft_delete.sql_generated.go b/go/pkg/db/ratelimit_namespace_soft_delete.sql_generated.go index 8dd369651a..3df1948649 100644 --- a/go/pkg/db/ratelimit_namespace_soft_delete.sql_generated.go +++ b/go/pkg/db/ratelimit_namespace_soft_delete.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_namespace_soft_delete.sql package db diff --git a/go/pkg/db/ratelimit_override_find_by_id.sql_generated.go b/go/pkg/db/ratelimit_override_find_by_id.sql_generated.go index 9072ed7474..5be2e27909 100644 --- a/go/pkg/db/ratelimit_override_find_by_id.sql_generated.go +++ b/go/pkg/db/ratelimit_override_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_override_find_by_id.sql package db diff --git a/go/pkg/db/ratelimit_override_find_by_identifier.sql_generated.go b/go/pkg/db/ratelimit_override_find_by_identifier.sql_generated.go index 2135bcf048..014b19c875 100644 --- a/go/pkg/db/ratelimit_override_find_by_identifier.sql_generated.go +++ b/go/pkg/db/ratelimit_override_find_by_identifier.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_override_find_by_identifier.sql package db diff --git a/go/pkg/db/ratelimit_override_insert.sql_generated.go b/go/pkg/db/ratelimit_override_insert.sql_generated.go index f2ec6897b5..7d9da02af5 100644 --- a/go/pkg/db/ratelimit_override_insert.sql_generated.go +++ b/go/pkg/db/ratelimit_override_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_override_insert.sql package db diff --git a/go/pkg/db/ratelimit_override_list_by_namespace_id.sql_generated.go b/go/pkg/db/ratelimit_override_list_by_namespace_id.sql_generated.go index 703b91cec1..d9b99881ca 100644 --- a/go/pkg/db/ratelimit_override_list_by_namespace_id.sql_generated.go +++ b/go/pkg/db/ratelimit_override_list_by_namespace_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_override_list_by_namespace_id.sql package db diff --git a/go/pkg/db/ratelimit_override_soft_delete.sql_generated.go b/go/pkg/db/ratelimit_override_soft_delete.sql_generated.go index fb7910f14a..9fd37ee07a 100644 --- a/go/pkg/db/ratelimit_override_soft_delete.sql_generated.go +++ b/go/pkg/db/ratelimit_override_soft_delete.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_override_soft_delete.sql package db diff --git a/go/pkg/db/ratelimit_override_update.sql_generated.go b/go/pkg/db/ratelimit_override_update.sql_generated.go index e1a6226614..f80b0777b1 100644 --- a/go/pkg/db/ratelimit_override_update.sql_generated.go +++ b/go/pkg/db/ratelimit_override_update.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_override_update.sql package db diff --git a/go/pkg/db/ratelimit_update.sql_generated.go b/go/pkg/db/ratelimit_update.sql_generated.go index 9b5ed9b75b..658316798a 100644 --- a/go/pkg/db/ratelimit_update.sql_generated.go +++ b/go/pkg/db/ratelimit_update.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: ratelimit_update.sql package db diff --git a/go/pkg/db/role_delete_by_id.sql_generated.go b/go/pkg/db/role_delete_by_id.sql_generated.go index 667e984915..d345ca07c6 100644 --- a/go/pkg/db/role_delete_by_id.sql_generated.go +++ b/go/pkg/db/role_delete_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_delete_by_id.sql package db diff --git a/go/pkg/db/role_find_by_id.sql_generated.go b/go/pkg/db/role_find_by_id.sql_generated.go index 973c341a9e..9e6d11d639 100644 --- a/go/pkg/db/role_find_by_id.sql_generated.go +++ b/go/pkg/db/role_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_find_by_id.sql package db diff --git a/go/pkg/db/role_find_by_id_or_name_with_perms.sql_generated.go b/go/pkg/db/role_find_by_id_or_name_with_perms.sql_generated.go index 87578e23f7..0324f173f2 100644 --- a/go/pkg/db/role_find_by_id_or_name_with_perms.sql_generated.go +++ b/go/pkg/db/role_find_by_id_or_name_with_perms.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_find_by_id_or_name_with_perms.sql package db diff --git a/go/pkg/db/role_find_by_name_and_workspace_id.sql_generated.go b/go/pkg/db/role_find_by_name_and_workspace_id.sql_generated.go index e67be645c0..cd20bdb3fc 100644 --- a/go/pkg/db/role_find_by_name_and_workspace_id.sql_generated.go +++ b/go/pkg/db/role_find_by_name_and_workspace_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_find_by_name_and_workspace_id.sql package db diff --git a/go/pkg/db/role_find_by_names.sql_generated.go b/go/pkg/db/role_find_by_names.sql_generated.go index f73222a3d3..d955cdbf76 100644 --- a/go/pkg/db/role_find_by_names.sql_generated.go +++ b/go/pkg/db/role_find_by_names.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_find_by_names.sql package db diff --git a/go/pkg/db/role_find_many_by_id_or_name_with_perms.sql_generated.go b/go/pkg/db/role_find_many_by_id_or_name_with_perms.sql_generated.go index 177fbb2e6d..498c696611 100644 --- a/go/pkg/db/role_find_many_by_id_or_name_with_perms.sql_generated.go +++ b/go/pkg/db/role_find_many_by_id_or_name_with_perms.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_find_many_by_id_or_name_with_perms.sql package db diff --git a/go/pkg/db/role_find_many_by_name_with_perms.sql_generated.go b/go/pkg/db/role_find_many_by_name_with_perms.sql_generated.go index ace31e2968..805e006d9b 100644 --- a/go/pkg/db/role_find_many_by_name_with_perms.sql_generated.go +++ b/go/pkg/db/role_find_many_by_name_with_perms.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_find_many_by_name_with_perms.sql package db diff --git a/go/pkg/db/role_insert.sql_generated.go b/go/pkg/db/role_insert.sql_generated.go index b4e11a0100..3de28982ea 100644 --- a/go/pkg/db/role_insert.sql_generated.go +++ b/go/pkg/db/role_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_insert.sql package db diff --git a/go/pkg/db/role_list.sql_generated.go b/go/pkg/db/role_list.sql_generated.go index 2292c8119f..c9b6b969a3 100644 --- a/go/pkg/db/role_list.sql_generated.go +++ b/go/pkg/db/role_list.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_list.sql package db diff --git a/go/pkg/db/role_list_by_key_id.sql_generated.go b/go/pkg/db/role_list_by_key_id.sql_generated.go index 8af95eaee6..51af8c1300 100644 --- a/go/pkg/db/role_list_by_key_id.sql_generated.go +++ b/go/pkg/db/role_list_by_key_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_list_by_key_id.sql package db diff --git a/go/pkg/db/role_permission_delete_many_by_permission_id.sql_generated.go b/go/pkg/db/role_permission_delete_many_by_permission_id.sql_generated.go index e96d0697f8..32a4b7e7ae 100644 --- a/go/pkg/db/role_permission_delete_many_by_permission_id.sql_generated.go +++ b/go/pkg/db/role_permission_delete_many_by_permission_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_permission_delete_many_by_permission_id.sql package db diff --git a/go/pkg/db/role_permission_delete_many_by_role_id.sql_generated.go b/go/pkg/db/role_permission_delete_many_by_role_id.sql_generated.go index 5f32c29c0f..10c155f650 100644 --- a/go/pkg/db/role_permission_delete_many_by_role_id.sql_generated.go +++ b/go/pkg/db/role_permission_delete_many_by_role_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_permission_delete_many_by_role_id.sql package db diff --git a/go/pkg/db/role_permission_find_by_role_and_permission_id.sql_generated.go b/go/pkg/db/role_permission_find_by_role_and_permission_id.sql_generated.go index 5262ddb60f..2d6ea50b84 100644 --- a/go/pkg/db/role_permission_find_by_role_and_permission_id.sql_generated.go +++ b/go/pkg/db/role_permission_find_by_role_and_permission_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_permission_find_by_role_and_permission_id.sql package db diff --git a/go/pkg/db/role_permission_insert.sql_generated.go b/go/pkg/db/role_permission_insert.sql_generated.go index a84f1c525c..d385613e3a 100644 --- a/go/pkg/db/role_permission_insert.sql_generated.go +++ b/go/pkg/db/role_permission_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: role_permission_insert.sql package db diff --git a/go/pkg/db/route_find_by_deployment_id.sql_generated.go b/go/pkg/db/route_find_by_deployment_id.sql_generated.go index 1e5855a81b..27c81367c6 100644 --- a/go/pkg/db/route_find_by_deployment_id.sql_generated.go +++ b/go/pkg/db/route_find_by_deployment_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: route_find_by_deployment_id.sql package db diff --git a/go/pkg/db/route_insert.sql_generated.go b/go/pkg/db/route_insert.sql_generated.go index 537781f340..c2f2df32de 100644 --- a/go/pkg/db/route_insert.sql_generated.go +++ b/go/pkg/db/route_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: route_insert.sql package db diff --git a/go/pkg/db/schema.sql b/go/pkg/db/schema.sql index a22aa06784..9ac0ece189 100644 --- a/go/pkg/db/schema.sql +++ b/go/pkg/db/schema.sql @@ -367,6 +367,11 @@ CREATE TABLE `deployments` ( `rootfs_image_id` varchar(256) NOT NULL, `git_commit_sha` varchar(40), `git_branch` varchar(256), + `git_commit_message` text, + `git_commit_author_name` varchar(256), + `git_commit_author_username` varchar(256), + `git_commit_author_avatar_url` varchar(512), + `git_commit_timestamp` bigint, -- Unix epoch milliseconds `config_snapshot` json NOT NULL, `openapi_spec` text, `status` enum('pending','building','deploying','active','failed','archived') NOT NULL DEFAULT 'pending', diff --git a/go/pkg/db/workspace_find_by_id.sql_generated.go b/go/pkg/db/workspace_find_by_id.sql_generated.go index 29c70caffb..ce32393e4b 100644 --- a/go/pkg/db/workspace_find_by_id.sql_generated.go +++ b/go/pkg/db/workspace_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: workspace_find_by_id.sql package db diff --git a/go/pkg/db/workspace_hard_delete.sql_generated.go b/go/pkg/db/workspace_hard_delete.sql_generated.go index 0e3f8f60aa..592ec870fe 100644 --- a/go/pkg/db/workspace_hard_delete.sql_generated.go +++ b/go/pkg/db/workspace_hard_delete.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: workspace_hard_delete.sql package db diff --git a/go/pkg/db/workspace_insert.sql_generated.go b/go/pkg/db/workspace_insert.sql_generated.go index 8967b87fc5..0377f24988 100644 --- a/go/pkg/db/workspace_insert.sql_generated.go +++ b/go/pkg/db/workspace_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: workspace_insert.sql package db diff --git a/go/pkg/db/workspace_list.sql_generated.go b/go/pkg/db/workspace_list.sql_generated.go index fd3e13c259..da94015991 100644 --- a/go/pkg/db/workspace_list.sql_generated.go +++ b/go/pkg/db/workspace_list.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: workspace_list.sql package db diff --git a/go/pkg/db/workspace_soft_delete.sql_generated.go b/go/pkg/db/workspace_soft_delete.sql_generated.go index 5a729df821..accafa0f19 100644 --- a/go/pkg/db/workspace_soft_delete.sql_generated.go +++ b/go/pkg/db/workspace_soft_delete.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: workspace_soft_delete.sql package db diff --git a/go/pkg/db/workspace_update_enabled.sql_generated.go b/go/pkg/db/workspace_update_enabled.sql_generated.go index 218d181adc..ca711eabbd 100644 --- a/go/pkg/db/workspace_update_enabled.sql_generated.go +++ b/go/pkg/db/workspace_update_enabled.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: workspace_update_enabled.sql package db diff --git a/go/pkg/db/workspace_update_plan.sql_generated.go b/go/pkg/db/workspace_update_plan.sql_generated.go index 5ee2bf4fca..cca72082ee 100644 --- a/go/pkg/db/workspace_update_plan.sql_generated.go +++ b/go/pkg/db/workspace_update_plan.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: workspace_update_plan.sql package db diff --git a/go/pkg/hydra/store/models.go b/go/pkg/hydra/store/models.go index a296eb4c44..7580966ecb 100644 --- a/go/pkg/hydra/store/models.go +++ b/go/pkg/hydra/store/models.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 package store diff --git a/go/pkg/hydra/store/querier.go b/go/pkg/hydra/store/querier.go index 87b9704e95..3184dfc0c8 100644 --- a/go/pkg/hydra/store/querier.go +++ b/go/pkg/hydra/store/querier.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 package store diff --git a/go/pkg/hydra/store/workflows.sql.go b/go/pkg/hydra/store/workflows.sql.go index aeb67de2db..9182ff6911 100644 --- a/go/pkg/hydra/store/workflows.sql.go +++ b/go/pkg/hydra/store/workflows.sql.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: workflows.sql package store diff --git a/go/pkg/partition/db/certificate_find_by_hostname.sql_generated.go b/go/pkg/partition/db/certificate_find_by_hostname.sql_generated.go index 6c8ee2cf2c..43373f86c7 100644 --- a/go/pkg/partition/db/certificate_find_by_hostname.sql_generated.go +++ b/go/pkg/partition/db/certificate_find_by_hostname.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: certificate_find_by_hostname.sql package db diff --git a/go/pkg/partition/db/certificate_insert.sql_generated.go b/go/pkg/partition/db/certificate_insert.sql_generated.go index 10f6a90ef4..83c6e4d2f6 100644 --- a/go/pkg/partition/db/certificate_insert.sql_generated.go +++ b/go/pkg/partition/db/certificate_insert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: certificate_insert.sql package db diff --git a/go/pkg/partition/db/gateway_delete_by_hostname.sql_generated.go b/go/pkg/partition/db/gateway_delete_by_hostname.sql_generated.go index ec831c968f..bb1810e097 100644 --- a/go/pkg/partition/db/gateway_delete_by_hostname.sql_generated.go +++ b/go/pkg/partition/db/gateway_delete_by_hostname.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: gateway_delete_by_hostname.sql package db diff --git a/go/pkg/partition/db/gateway_find_config_by_hostname.sql_generated.go b/go/pkg/partition/db/gateway_find_config_by_hostname.sql_generated.go index db2f397a41..155df12f22 100644 --- a/go/pkg/partition/db/gateway_find_config_by_hostname.sql_generated.go +++ b/go/pkg/partition/db/gateway_find_config_by_hostname.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: gateway_find_config_by_hostname.sql package db diff --git a/go/pkg/partition/db/gateway_upsert.sql_generated.go b/go/pkg/partition/db/gateway_upsert.sql_generated.go index cea8683b99..3c9cc0beb4 100644 --- a/go/pkg/partition/db/gateway_upsert.sql_generated.go +++ b/go/pkg/partition/db/gateway_upsert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: gateway_upsert.sql package db diff --git a/go/pkg/partition/db/models_generated.go b/go/pkg/partition/db/models_generated.go index c43039add3..149f2c0c7c 100644 --- a/go/pkg/partition/db/models_generated.go +++ b/go/pkg/partition/db/models_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 package db diff --git a/go/pkg/partition/db/querier_generated.go b/go/pkg/partition/db/querier_generated.go index 75721f6d62..592cb5f6f7 100644 --- a/go/pkg/partition/db/querier_generated.go +++ b/go/pkg/partition/db/querier_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 package db diff --git a/go/pkg/partition/db/vm_find_by_id.sql_generated.go b/go/pkg/partition/db/vm_find_by_id.sql_generated.go index bcb6f753c3..d89f33f182 100644 --- a/go/pkg/partition/db/vm_find_by_id.sql_generated.go +++ b/go/pkg/partition/db/vm_find_by_id.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: vm_find_by_id.sql package db diff --git a/go/pkg/partition/db/vm_upsert.sql_generated.go b/go/pkg/partition/db/vm_upsert.sql_generated.go index 336247fb85..1195aa8ea6 100644 --- a/go/pkg/partition/db/vm_upsert.sql_generated.go +++ b/go/pkg/partition/db/vm_upsert.sql_generated.go @@ -1,6 +1,6 @@ // Code generated by sqlc. DO NOT EDIT. // versions: -// sqlc v1.27.0 +// sqlc v1.28.0 // source: vm_upsert.sql package db diff --git a/go/proto/ctrl/v1/version.proto b/go/proto/ctrl/v1/version.proto index d3be3ab64b..c58c023255 100644 --- a/go/proto/ctrl/v1/version.proto +++ b/go/proto/ctrl/v1/version.proto @@ -37,6 +37,14 @@ message CreateVersionRequest { string hostname = 9; // Keyspace ID for authentication string keyspace_id = 10; + + // Extended git information + string git_commit_message = 6; + string git_commit_author_name = 11; + // TODO: Add GitHub API integration to lookup username/avatar from email + string git_commit_author_username = 12; + string git_commit_author_avatar_url = 13; + int64 git_commit_timestamp = 14; // Unix epoch milliseconds } message CreateVersionResponse { @@ -85,6 +93,14 @@ message Version { // Deployment steps repeated VersionStep steps = 16; + + // Extended git information + string git_commit_message = 17; + string git_commit_author_name = 18; + // Removed: email is PII and not stored + string git_commit_author_username = 20; + string git_commit_author_avatar_url = 21; + int64 git_commit_timestamp = 22; // Unix epoch milliseconds } message VersionStep { diff --git a/internal/db/src/schema/deployments.ts b/internal/db/src/schema/deployments.ts index ba5ed2cccf..0f366fbd00 100644 --- a/internal/db/src/schema/deployments.ts +++ b/internal/db/src/schema/deployments.ts @@ -22,6 +22,12 @@ export const deployments = mysqlTable( // Git information gitCommitSha: varchar("git_commit_sha", { length: 40 }), gitBranch: varchar("git_branch", { length: 256 }), + gitCommitMessage: text("git_commit_message"), + gitCommitAuthorName: varchar("git_commit_author_name", { length: 256 }), + gitCommitAuthorEmail: varchar("git_commit_author_email", { length: 256 }), + gitCommitAuthorUsername: varchar("git_commit_author_username", { length: 256 }), + gitCommitAuthorAvatarUrl: varchar("git_commit_author_avatar_url", { length: 512 }), + gitCommitTimestamp: bigint("git_commit_timestamp", { mode: "number" }), // Unix epoch milliseconds // Immutable configuration snapshot configSnapshot: json("config_snapshot")