diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index 6847ade..b835b0f 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -10,8 +10,28 @@ jobs: uses: actions/checkout@v4 - name: Run go vet run: go vet + check-swagger-up-to-date: + runs-on: imgbuilder + steps: + - name: Checkout repository + uses: actions/checkout@v4 + - name: Run make swagger + run: make swagger + - name: Check diff + run: | + if ! git diff --exit-code; then + echo "ERROR: swagger introduced uncommitted changes!" + echo "Please commit generated files." + git status + git diff + exit 1 + else + echo "No uncommitted changes detected. OpenAPI is up-to-date." + fi run-go-test: - needs: run-go-vet + needs: + - run-go-vet + - check-swagger-up-to-date runs-on: imgbuilder steps: - name: Checkout repository @@ -29,3 +49,14 @@ jobs: uses: actions/checkout@v4 - name: Run make docker-clean run: make docker-clean + release-image: + needs: + - run-go-test + runs-on: imgbuilder + steps: + - name: Build and push image + uses: https://gitea.konchin.com/action/docker@main + with: + registry-certificate: ${{ vars.ROOTCA }} + username: ${{ secrets.REGISTRY_USERNAME }} + password: ${{ secrets.REGISTRY_PASSWORD }} diff --git a/Makefile b/Makefile index ba4f34a..f29eece 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,7 @@ swagger: $(SWAG) init -o docs -g cmds/serve.go -pdl 1 docker: $(TARGET) - $(COMPOSE) up -d --force-recreate --build backend + $(DOCKER) compose up -d --force-recreate --build backend $(TARGET): $(SOURCE) $(GO_ENV) go build -o $@ diff --git a/implements/bunDatabase.go b/implements/bunDatabase.go index 4c4289a..6c3bb35 100644 --- a/implements/bunDatabase.go +++ b/implements/bunDatabase.go @@ -61,7 +61,7 @@ func (self *BunDatabase) UpdateRefreshToken( } err := self.db.RunInTx(ctx, nil, func(ctx context.Context, tx bun.Tx) error { - err := self.db.NewSelect(). + err := tx.NewSelect(). Model(&ret). WherePK(). Scan(ctx) @@ -76,7 +76,7 @@ func (self *BunDatabase) UpdateRefreshToken( return err } - _, err = self.db.NewUpdate(). + _, err = tx.NewUpdate(). Model((*models.Session)(nil)). Set("refresh_token = ?", ret.RefreshToken). Where("user_id = ?", userId). @@ -176,7 +176,7 @@ func (self *BunDatabase) UpdateAliases( Name: ali, }) } - _, err := self.db.NewInsert(). + _, err := tx.NewInsert(). Model(&aliases). On("CONFLICT (name) DO NOTHING"). Exec(ctx) @@ -191,7 +191,7 @@ func (self *BunDatabase) UpdateAliases( ImageId: imageId, }) } - _, err = self.db.NewInsert(). + _, err = tx.NewInsert(). Model(&rels). On(`CONFLICT ("alias_id", "image_id") DO NOTHING`). Exec(ctx) @@ -218,14 +218,14 @@ func (self *BunDatabase) DeleteImage( imageId int64, ) error { return self.db.RunInTx(ctx, nil, func(ctx context.Context, tx bun.Tx) error { - _, err := self.db.NewDelete(). + _, err := tx.NewDelete(). Model((*models.Image)(nil)). Where("id = ?", imageId). Exec(ctx) if err != nil { return err } - _, err = self.db.NewDelete(). + _, err = tx.NewDelete(). Model((*models.AliasImage)(nil)). Where("image_id = ?", imageId). Exec(ctx) @@ -241,14 +241,14 @@ func (self *BunDatabase) DeleteAlias( aliasId int64, ) error { return self.db.RunInTx(ctx, nil, func(ctx context.Context, tx bun.Tx) error { - _, err := self.db.NewDelete(). + _, err := tx.NewDelete(). Model((*models.Alias)(nil)). Where("id = ?", aliasId). Exec(ctx) if err != nil { return err } - _, err = self.db.NewDelete(). + _, err = tx.NewDelete(). Model((*models.AliasImage)(nil)). Where("alias_id = ?", aliasId). Exec(ctx)