// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.28.0 // source: agent.sql package database import ( "context" "database/sql" ) const findAgentToSync = `-- name: FindAgentToSync :many SELECT agents.id as agent_id, agents.address, agents.user, agents.dir, agents.fingerprint, cert.id as cert_id, cert.not_after as cert_not_after FROM agents INNER JOIN agent_certs ON agent_certs.agent_id = agents.id INNER JOIN certificates AS cert ON cert.id = agent_certs.cert_id WHERE (agents.last_sync IS NULL OR agents.last_sync < cert.updated_at) AND (agent_certs.not_after IS NULL OR agent_certs.not_after IS NOT cert.not_after) ORDER BY agents.last_sync NULLS FIRST ` type FindAgentToSyncRow struct { AgentID int64 `json:"agent_id"` Address string `json:"address"` User string `json:"user"` Dir string `json:"dir"` Fingerprint string `json:"fingerprint"` CertID int64 `json:"cert_id"` CertNotAfter sql.NullTime `json:"cert_not_after"` } func (q *Queries) FindAgentToSync(ctx context.Context) ([]FindAgentToSyncRow, error) { rows, err := q.db.QueryContext(ctx, findAgentToSync) if err != nil { return nil, err } defer rows.Close() var items []FindAgentToSyncRow for rows.Next() { var i FindAgentToSyncRow if err := rows.Scan( &i.AgentID, &i.Address, &i.User, &i.Dir, &i.Fingerprint, &i.CertID, &i.CertNotAfter, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Close(); err != nil { return nil, err } if err := rows.Err(); err != nil { return nil, err } return items, nil } const updateAgentCertNotAfter = `-- name: UpdateAgentCertNotAfter :exec UPDATE agent_certs SET not_after = ? WHERE agent_id = ? AND cert_id = ? ` type UpdateAgentCertNotAfterParams struct { NotAfter sql.NullTime `json:"not_after"` AgentID int64 `json:"agent_id"` CertID int64 `json:"cert_id"` } func (q *Queries) UpdateAgentCertNotAfter(ctx context.Context, arg UpdateAgentCertNotAfterParams) error { _, err := q.db.ExecContext(ctx, updateAgentCertNotAfter, arg.NotAfter, arg.AgentID, arg.CertID) return err } const updateAgentLastSync = `-- name: UpdateAgentLastSync :exec UPDATE agents SET last_sync = ? WHERE agents.id = ? ` type UpdateAgentLastSyncParams struct { LastSync sql.NullTime `json:"last_sync"` ID int64 `json:"id"` } func (q *Queries) UpdateAgentLastSync(ctx context.Context, arg UpdateAgentLastSyncParams) error { _, err := q.db.ExecContext(ctx, updateAgentLastSync, arg.LastSync, arg.ID) return err }