Skip to content

Commit f110659

Browse files
authored
fix: return correct metadata for failed templates (#1417)
1 parent b625812 commit f110659

3 files changed

Lines changed: 31 additions & 11 deletions

File tree

packages/api/internal/handlers/templates_list.go

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,8 @@ import (
44
"net/http"
55

66
"github.com/gin-gonic/gin"
7-
"go.uber.org/zap"
87

98
"github.com/e2b-dev/infra/packages/api/internal/api"
10-
"github.com/e2b-dev/infra/packages/shared/pkg/logger"
119
"github.com/e2b-dev/infra/packages/shared/pkg/telemetry"
1210
)
1311

@@ -63,8 +61,6 @@ func (a *APIStore) GetTemplates(c *gin.Context, params api.GetTemplatesParams) {
6361
envdVersion := ""
6462
if item.BuildEnvdVersion != nil {
6563
envdVersion = *item.BuildEnvdVersion
66-
} else {
67-
zap.L().Error("failed to determine envd version", logger.WithTemplateID(item.Env.ID))
6864
}
6965

7066
diskMB := int64(0)
@@ -75,9 +71,9 @@ func (a *APIStore) GetTemplates(c *gin.Context, params api.GetTemplatesParams) {
7571
templates = append(templates, &api.Template{
7672
TemplateID: item.Env.ID,
7773
BuildID: item.BuildID.String(),
78-
CpuCount: int32(item.BuildVcpu),
79-
MemoryMB: int32(item.BuildRamMb),
80-
DiskSizeMB: int32(diskMB),
74+
CpuCount: api.CPUCount(item.BuildVcpu),
75+
MemoryMB: api.MemoryMB(item.BuildRamMb),
76+
DiskSizeMB: api.DiskSizeMB(diskMB),
8177
Public: item.Env.Public,
8278
Aliases: item.Aliases,
8379
CreatedAt: item.Env.CreatedAt,

packages/db/queries/get_team_templates.sql

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
-- name: GetTeamTemplates :many
22
SELECT sqlc.embed(e),
3-
eb.id as build_id, eb.vcpu as build_vcpu, eb.ram_mb as build_ram_mb, eb.total_disk_size_mb as build_total_disk_size_mb, eb.envd_version as build_envd_version, eb.firecracker_version as build_firecracker_version, eb.status as build_status,
3+
COALESCE(eb.id, '00000000-0000-0000-0000-000000000000'::uuid) as build_id,
4+
COALESCE(eb.vcpu, 0) as build_vcpu,
5+
COALESCE(eb.ram_mb, 0) as build_ram_mb,
6+
eb.total_disk_size_mb as build_total_disk_size_mb,
7+
eb.envd_version as build_envd_version,
8+
COALESCE(eb.firecracker_version, 'N/A') as build_firecracker_version,
9+
COALESCE(eba.status, 'waiting') as build_status,
410
u.id as creator_id, u.email as creator_email,
511
COALESCE(ea.aliases, ARRAY[]::text[])::text[] AS aliases
612
FROM public.envs AS e
@@ -16,10 +22,16 @@ LEFT JOIN LATERAL (
1622
WHERE b.env_id = e.id
1723
ORDER BY b.finished_at DESC
1824
LIMIT 1
25+
) eba ON TRUE
26+
LEFT JOIN LATERAL (
27+
SELECT b.*
28+
FROM public.env_builds AS b
29+
WHERE b.env_id = e.id AND b.status = 'uploaded'
30+
ORDER BY b.finished_at DESC
31+
LIMIT 1
1932
) eb ON TRUE
2033
WHERE
2134
e.team_id = $1
22-
AND eb.id IS NOT NULL
2335
AND NOT EXISTS (
2436
SELECT 1
2537
FROM public.snapshots AS s

packages/db/queries/get_team_templates.sql.go

Lines changed: 14 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)