Debug: wtf
Some checks failed
Go test / check-swagger-up-to-date (push) Successful in 10s
Go test / run-go-test (push) Failing after 21s
Go test / run-go-vet (push) Successful in 6s
Go test / release-image (push) Has been skipped
Go test / cleanup-go-test (push) Successful in 4s

This commit is contained in:
2025-12-13 02:17:46 +08:00
parent e6c46f29f5
commit e6713dddc4
6 changed files with 36 additions and 12 deletions

View File

@@ -35,6 +35,7 @@ jobs:
runs-on: imgbuilder
env:
COMPOSE_ARGS: '-p go2025-backend'
DOCKER_BUILD_ARGS: '--quiet'
steps:
- name: Checkout repository
uses: actions/checkout@v4
@@ -57,6 +58,8 @@ jobs:
needs:
- run-go-test
runs-on: imgbuilder
env:
COMPOSE_ARGS: '-p go2025-backend'
steps:
- name: Build and push image
uses: https://gitea.konchin.com/action/docker@main

View File

@@ -1,8 +1,9 @@
.PHONY: all swagger install postgres test mac reset \
.PHONY: all swagger install postgres test mac \
docker docker-quiet docker-clean
SWAG ?= go run github.com/swaggo/swag/cmd/swag@v1.16.4
DOCKER ?= docker
DOCKER_BUILD_ARGS +=
COMPOSE_ARGS += --progress plain
COMPOSE ?= $(DOCKER) compose $(COMPOSE_ARGS)
@@ -14,20 +15,19 @@ all: swagger docker-build-native docker
mac: swagger docker-build-run docker
reset:
$(COMPOSE) exec backend reset
swagger:
$(SWAG) fmt
$(SWAG) init -o docs -g cmds/serve.go -pdl 1
docker-build-native: $(TARGET)
$(DOCKER) build . --target native \
$(DOCKER) build . $(DOCKER_BUILD_ARGS) \
--target native \
-t go2025/backend:native \
-t go2025/backend:latest
docker-build-run:
$(DOCKER) build . --target build-run \
$(DOCKER) build . $(DOCKER_BUILD_ARGS) \
--target build-run \
-t go2025/backend:build-run \
-t go2025/backend:latest

View File

@@ -18,7 +18,7 @@ func Test_01_Login(t *testing.T) {
t.Run("check preshared key failed", func(t *testing.T) {
resp, err := client.R().
SetBody(`{"userId": "testuser1"}`).
Post("http://localhost:8080/auth/gen-login-url")
Post("/auth/gen-login-url")
if err != nil {
t.Fatal("request failed")
}
@@ -32,7 +32,7 @@ func Test_01_Login(t *testing.T) {
SetBody(`{"userId": "testuser1"}`).
SetAuthToken("poop").
SetResult(&payload).
Post("http://localhost:8080/auth/gen-login-url")
Post("/auth/gen-login-url")
if err != nil || resp.StatusCode() != http.StatusOK {
t.Fatal("failed to get login url")

View File

@@ -28,7 +28,7 @@ func Test_02_PostImage(t *testing.T) {
resp, err := client.R().
SetBody(rawImage).
SetResult(&image).
Post("http://localhost:8080/api/image")
Post("/api/image")
if err != nil || resp.StatusCode() != http.StatusOK {
t.Logf("%+v", resp)

View File

@@ -3,6 +3,7 @@ package tests
import (
"fmt"
"net/http"
"strconv"
"testing"
)
@@ -17,8 +18,7 @@ func Test_03_PutImageAliases(t *testing.T) {
}
resp, err := client.R().
SetBody(payload).
Put(fmt.Sprintf("http://localhost:8080/api/image/%d/aliases",
image.Id))
Put(fmt.Sprintf("/api/image/%d/aliases", image.Id))
if err != nil || resp.StatusCode() != http.StatusOK {
t.Logf("%+v", resp)
t.Fatal("failed to put image alias")
@@ -61,6 +61,11 @@ func Test_03_PutImageAliases(t *testing.T) {
for _, alias := range aliases {
if alias.Name == "testalias2" {
t.Logf("%+v", resp)
resp, _ = client.R().
SetQueryParam("aliases",
strconv.FormatInt(alias.Id, 10)).
Get("/api/images")
t.Logf("%+v", resp)
t.Fatal("alias should be deleted")
}
}

View File

@@ -22,6 +22,22 @@ func InitDB(ctx context.Context, db *bun.DB) error {
(*models.Image)(nil),
(*models.Session)(nil),
)
} else {
modls := []any{
(*models.AliasImage)(nil),
(*models.Alias)(nil),
(*models.Image)(nil),
(*models.Session)(nil),
}
for _, model := range modls {
_, err := db.NewCreateTable().
Model(model).
IfNotExists().
Exec(ctx)
if err != nil {
return err
}
}
return nil
}
return nil
}