|
59 | 59 | latest_build.template_version_id,
|
60 | 60 | latest_build.template_version_preset_id,
|
61 | 61 | latest_build.job_id,
|
62 |
| - latest_build.created_at |
| 62 | + workspaces.created_at |
63 | 63 | FROM
|
64 | 64 | workspaces
|
65 | 65 | LEFT JOIN LATERAL (
|
|
81 | 81 | workspace_builds.workspace_id
|
82 | 82 | = workspaces.id
|
83 | 83 | ORDER BY
|
| 84 | + workspace_builds.workspace_id, |
84 | 85 | workspace_builds.build_number
|
85 | 86 | DESC
|
86 | 87 | LIMIT
|
|
96 | 97 | AND latest_build.job_status
|
97 | 98 | = 'succeeded'::provisioner_job_status
|
98 | 99 | ),
|
99 |
| - agent_readiness |
| 100 | + ready_agents |
100 | 101 | AS (
|
101 | 102 | SELECT
|
102 |
| - latest_prebuilds.workspace_id AS workspace_id, |
103 |
| - COALESCE(BOOL_AND(workspace_agents.lifecycle_state = 'ready'::workspace_agent_lifecycle_state), false)::boolean AS ready |
| 103 | + workspace_resources.job_id, |
| 104 | + BOOL_AND(workspace_agents.lifecycle_state = 'ready'::workspace_agent_lifecycle_state)::boolean AS ready |
104 | 105 | FROM
|
105 |
| - latest_prebuilds |
106 |
| - LEFT JOIN workspace_resources ON |
107 |
| - workspace_resources.job_id = latest_prebuilds.job_id |
108 |
| - LEFT JOIN workspace_agents ON |
| 106 | + workspace_resources |
| 107 | + JOIN workspace_agents ON |
109 | 108 | workspace_agents.resource_id = workspace_resources.id
|
| 109 | + WHERE |
| 110 | + workspace_agents.deleted = false |
110 | 111 | GROUP BY
|
111 |
| - latest_prebuilds.workspace_id |
| 112 | + workspace_resources.job_id |
112 | 113 | )
|
113 | 114 | SELECT
|
114 | 115 | latest_prebuilds.workspace_id AS id,
|
115 | 116 | latest_prebuilds.name,
|
116 | 117 | latest_prebuilds.template_id,
|
117 | 118 | latest_prebuilds.template_version_id,
|
118 | 119 | latest_prebuilds.template_version_preset_id AS current_preset_id,
|
119 |
| - agent_readiness.ready, |
| 120 | + COALESCE(ready_agents.ready, false)::boolean AS ready, |
120 | 121 | latest_prebuilds.created_at
|
121 | 122 | FROM
|
122 | 123 | latest_prebuilds
|
123 |
| - JOIN agent_readiness ON |
124 |
| - agent_readiness.workspace_id = latest_prebuilds.workspace_id |
| 124 | + LEFT JOIN ready_agents ON |
| 125 | + ready_agents.job_id = latest_prebuilds.job_id |
| 126 | +ORDER BY |
| 127 | + latest_prebuilds.workspace_id ASC |
125 | 128 | ;
|
126 | 129 |
|
127 | 130 | -- name: CountInProgressPrebuilds :many
|
|
0 commit comments