Go · 3939 bytes Raw Blame History
1 // Code generated by sqlc. DO NOT EDIT.
2 // versions:
3 // sqlc v1.31.1
4 // source: workflow_artifacts.sql
5
6 package actionsdb
7
8 import (
9 "context"
10
11 "github.com/jackc/pgx/v5/pgtype"
12 )
13
14 const deleteWorkflowArtifactsByIDs = `-- name: DeleteWorkflowArtifactsByIDs :execrows
15 DELETE FROM workflow_artifacts
16 WHERE id = ANY($1::bigint[])
17 `
18
19 func (q *Queries) DeleteWorkflowArtifactsByIDs(ctx context.Context, db DBTX, dollar_1 []int64) (int64, error) {
20 result, err := db.Exec(ctx, deleteWorkflowArtifactsByIDs, dollar_1)
21 if err != nil {
22 return 0, err
23 }
24 return result.RowsAffected(), nil
25 }
26
27 const getArtifactByID = `-- name: GetArtifactByID :one
28 SELECT id, run_id, name, object_key, byte_count, expires_at, created_at
29 FROM workflow_artifacts
30 WHERE id = $1
31 `
32
33 func (q *Queries) GetArtifactByID(ctx context.Context, db DBTX, id int64) (WorkflowArtifact, error) {
34 row := db.QueryRow(ctx, getArtifactByID, id)
35 var i WorkflowArtifact
36 err := row.Scan(
37 &i.ID,
38 &i.RunID,
39 &i.Name,
40 &i.ObjectKey,
41 &i.ByteCount,
42 &i.ExpiresAt,
43 &i.CreatedAt,
44 )
45 return i, err
46 }
47
48 const insertArtifact = `-- name: InsertArtifact :one
49
50 INSERT INTO workflow_artifacts (run_id, name, object_key, byte_count, expires_at)
51 VALUES ($1, $2, $3, $4, $5)
52 RETURNING id, run_id, name, object_key, byte_count, expires_at, created_at
53 `
54
55 type InsertArtifactParams struct {
56 RunID int64
57 Name string
58 ObjectKey string
59 ByteCount int64
60 ExpiresAt pgtype.Timestamptz
61 }
62
63 // SPDX-License-Identifier: AGPL-3.0-or-later
64 func (q *Queries) InsertArtifact(ctx context.Context, db DBTX, arg InsertArtifactParams) (WorkflowArtifact, error) {
65 row := db.QueryRow(ctx, insertArtifact,
66 arg.RunID,
67 arg.Name,
68 arg.ObjectKey,
69 arg.ByteCount,
70 arg.ExpiresAt,
71 )
72 var i WorkflowArtifact
73 err := row.Scan(
74 &i.ID,
75 &i.RunID,
76 &i.Name,
77 &i.ObjectKey,
78 &i.ByteCount,
79 &i.ExpiresAt,
80 &i.CreatedAt,
81 )
82 return i, err
83 }
84
85 const listArtifactsForRun = `-- name: ListArtifactsForRun :many
86 SELECT id, name, object_key, byte_count, expires_at, created_at
87 FROM workflow_artifacts
88 WHERE run_id = $1
89 ORDER BY name ASC
90 `
91
92 type ListArtifactsForRunRow struct {
93 ID int64
94 Name string
95 ObjectKey string
96 ByteCount int64
97 ExpiresAt pgtype.Timestamptz
98 CreatedAt pgtype.Timestamptz
99 }
100
101 func (q *Queries) ListArtifactsForRun(ctx context.Context, db DBTX, runID int64) ([]ListArtifactsForRunRow, error) {
102 rows, err := db.Query(ctx, listArtifactsForRun, runID)
103 if err != nil {
104 return nil, err
105 }
106 defer rows.Close()
107 items := []ListArtifactsForRunRow{}
108 for rows.Next() {
109 var i ListArtifactsForRunRow
110 if err := rows.Scan(
111 &i.ID,
112 &i.Name,
113 &i.ObjectKey,
114 &i.ByteCount,
115 &i.ExpiresAt,
116 &i.CreatedAt,
117 ); err != nil {
118 return nil, err
119 }
120 items = append(items, i)
121 }
122 if err := rows.Err(); err != nil {
123 return nil, err
124 }
125 return items, nil
126 }
127
128 const listExpiredWorkflowArtifactsForCleanup = `-- name: ListExpiredWorkflowArtifactsForCleanup :many
129 SELECT id, object_key
130 FROM workflow_artifacts
131 WHERE expires_at < $1
132 AND object_key LIKE 'actions/runs/%'
133 ORDER BY expires_at ASC, id ASC
134 LIMIT $2
135 `
136
137 type ListExpiredWorkflowArtifactsForCleanupParams struct {
138 ExpiresAt pgtype.Timestamptz
139 Limit int32
140 }
141
142 type ListExpiredWorkflowArtifactsForCleanupRow struct {
143 ID int64
144 ObjectKey string
145 }
146
147 func (q *Queries) ListExpiredWorkflowArtifactsForCleanup(ctx context.Context, db DBTX, arg ListExpiredWorkflowArtifactsForCleanupParams) ([]ListExpiredWorkflowArtifactsForCleanupRow, error) {
148 rows, err := db.Query(ctx, listExpiredWorkflowArtifactsForCleanup, arg.ExpiresAt, arg.Limit)
149 if err != nil {
150 return nil, err
151 }
152 defer rows.Close()
153 items := []ListExpiredWorkflowArtifactsForCleanupRow{}
154 for rows.Next() {
155 var i ListExpiredWorkflowArtifactsForCleanupRow
156 if err := rows.Scan(&i.ID, &i.ObjectKey); err != nil {
157 return nil, err
158 }
159 items = append(items, i)
160 }
161 if err := rows.Err(); err != nil {
162 return nil, err
163 }
164 return items, nil
165 }
166