From 9f5029dd6e4266db155e3e87b4588c5fb3c3e971 Mon Sep 17 00:00:00 2001 From: phoenix Date: Thu, 27 Nov 2025 01:01:32 +0000 Subject: [PATCH] tsk-21: Disable registration (#27) Closes #21 Reviewed-on: https://git.kundeng.us/phoenix/textsender-auth/pulls/27 Co-authored-by: phoenix Co-committed-by: phoenix --- .env.docker.sample | 1 + .env.sample | 1 + .gitea/workflows/workflow.yaml | 9 ++++--- Dockerfile | 2 +- cmd/api/main.go | 11 ++++---- cmd/api/main_test.go | 18 ++++++------- docs/docs.go | 12 +++++++++ docs/swagger.json | 12 +++++++++ docs/swagger.yaml | 8 ++++++ go.mod | 2 +- go.sum | 4 +-- internal/config/config.go | 39 +++++++++++++++++++++++----- internal/handler/login.go | 11 ++++---- internal/handler/login_test.go | 3 ++- internal/handler/refresh.go | 10 +++---- internal/handler/refresh_test.go | 7 ++--- internal/handler/register.go | 19 ++++++++++---- internal/handler/register_test.go | 3 ++- internal/handler/service.go | 16 +++++++++--- internal/handler/service_test.go | 8 +++--- internal/handler/utility_test.go | 33 ++++++++++++++++++++++- internal/store/mock/service_store.go | 2 +- internal/store/mock/store.go | 2 +- internal/store/service.go | 2 +- internal/{model => store}/user.go | 5 ++-- internal/utility/token.go | 4 +-- 26 files changed, 178 insertions(+), 66 deletions(-) rename internal/{model => store}/user.go (97%) diff --git a/.env.docker.sample b/.env.docker.sample index 570f4b1..a795df2 100644 --- a/.env.docker.sample +++ b/.env.docker.sample @@ -5,3 +5,4 @@ DB_PASSWORD=password DB_HOST=auth_db DB_PORT=5432 DB_SSLMODE=disable +ENABLE_REGISTRATION=true diff --git a/.env.sample b/.env.sample index eaa6e7f..4574f22 100644 --- a/.env.sample +++ b/.env.sample @@ -5,3 +5,4 @@ DB_PASSWORD=yEDjWZCH2vdctjn! DB_HOST=localhost DB_PORT=5432 DB_SSLMODE=disable +ENABLE_REGISTRATION=true diff --git a/.gitea/workflows/workflow.yaml b/.gitea/workflows/workflow.yaml index 33086b5..80d1c9b 100644 --- a/.gitea/workflows/workflow.yaml +++ b/.gitea/workflows/workflow.yaml @@ -66,9 +66,9 @@ jobs: uses: actions/checkout@v5 - name: Setup Go - uses: actions/setup-go@v4 + uses: actions/setup-go@v6 with: - go-version: '1.25.3' + go-version: '1.25.4' - name: Install PostgreSQL client run: sudo apt update && sudo apt-get install -y postgresql-client @@ -99,13 +99,14 @@ jobs: echo "Parent directory" echo `pwd` - echo "SECRET_KEY=$SECRET_KEY" >> .env - echo "DB_NAME=$DB_NAME" > .env + echo "SECRET_KEY=$SECRET_KEY" > .env + echo "DB_NAME=$DB_NAME" >> .env echo "DB_USER=$DB_USER" >> .env echo "DB_PASSWORD=$DB_PASSWORD" >> .env echo "DB_HOST=$DB_HOST" >> .env echo "DB_PORT=$DB_PORT" >> .env echo "DB_SSLMODE=$DB_SSLMODE" >> .env + echo "ENABLE_REGISTRATION=true" >> .env echo "Initializing config" mkdir -p ~/.ssh diff --git a/Dockerfile b/Dockerfile index 0e4d948..7dd3c55 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # Multi-stage Dockerfile for Go application -FROM golang:1.25.3 AS builder +FROM golang:1.25.4 AS builder WORKDIR /app diff --git a/cmd/api/main.go b/cmd/api/main.go index fc87618..b280401 100644 --- a/cmd/api/main.go +++ b/cmd/api/main.go @@ -20,7 +20,6 @@ import ( "git.kundeng.us/phoenix/textsender-auth/internal/handler" "git.kundeng.us/phoenix/textsender-auth/internal/handler/endpoint" mdleware "git.kundeng.us/phoenix/textsender-auth/internal/middleware" - "git.kundeng.us/phoenix/textsender-auth/internal/model" "git.kundeng.us/phoenix/textsender-auth/internal/store" ) @@ -73,13 +72,13 @@ func main() { } // Services - userStore := model.NewUserStore(db.Pool) + userStore := store.NewUserStore(db.Pool) serviceStore := store.NewServiceStore(db.Pool) - userHandler := handler.NewUserHandler(userStore) - loginHandler := handler.NewLoginHandler(userStore) - serviceHandler := handler.NewServiceHandler(serviceStore) - refreshHandler := handler.NewRefreshHandler(userStore, serviceStore) + userHandler := handler.NewUserHandler(cfg, userStore) + loginHandler := handler.NewLoginHandler(cfg, userStore) + serviceHandler := handler.NewServiceHandler(cfg, serviceStore) + refreshHandler := handler.NewRefreshHandler(cfg, userStore, serviceStore) router := chi.NewRouter() diff --git a/cmd/api/main_test.go b/cmd/api/main_test.go index f3f2eb7..4c5cf77 100644 --- a/cmd/api/main_test.go +++ b/cmd/api/main_test.go @@ -15,7 +15,6 @@ import ( "git.kundeng.us/phoenix/textsender-auth/internal/db" "git.kundeng.us/phoenix/textsender-auth/internal/handler" "git.kundeng.us/phoenix/textsender-auth/internal/handler/endpoint" - "git.kundeng.us/phoenix/textsender-auth/internal/model" "git.kundeng.us/phoenix/textsender-auth/internal/store" ) @@ -38,12 +37,12 @@ func TestMain(m *testing.M) { panic("Failed to initialize database") } - userStore := model.NewUserStore(database.Pool) + userStore := store.NewUserStore(database.Pool) serviceStore := store.NewServiceStore(database.Pool) - userHandler := handler.NewUserHandler(userStore) - loginHandler := handler.NewLoginHandler(userStore) - serviceHandler := handler.NewServiceHandler(serviceStore) - refreshHandler := handler.NewRefreshHandler(userStore, serviceStore) + userHandler := handler.NewUserHandler(cfg, userStore) + loginHandler := handler.NewLoginHandler(cfg, userStore) + serviceHandler := handler.NewServiceHandler(cfg, serviceStore) + refreshHandler := handler.NewRefreshHandler(cfg, userStore, serviceStore) testRouter = mux.NewRouter() testRouter.HandleFunc(endpoint.Register, userHandler.Register).Methods("POST") @@ -76,9 +75,10 @@ func load() *config.Config { dbConnString := unpackedConnString.Parse() return &config.Config{ - DBConnString: dbConnString, - ServerPort: *port, - ResetDB: *resetDb, + DBConnString: dbConnString, + ServerPort: *port, + ResetDB: *resetDb, + EnableRegistration: config.CheckRegistration(), } } diff --git a/docs/docs.go b/docs/docs.go index f38fce9..2b07b8c 100644 --- a/docs/docs.go +++ b/docs/docs.go @@ -108,6 +108,12 @@ const docTemplate = `{ "$ref": "#/definitions/handler.RegisterResponse" } }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/handler.RegisterResponse" + } + }, "500": { "description": "Internal Server Error", "schema": { @@ -204,6 +210,12 @@ const docTemplate = `{ "$ref": "#/definitions/handler.ServiceCreationResponse" } }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/handler.ServiceCreationResponse" + } + }, "500": { "description": "Internal Server Error", "schema": { diff --git a/docs/swagger.json b/docs/swagger.json index 892e61b..5232e41 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -102,6 +102,12 @@ "$ref": "#/definitions/handler.RegisterResponse" } }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/handler.RegisterResponse" + } + }, "500": { "description": "Internal Server Error", "schema": { @@ -198,6 +204,12 @@ "$ref": "#/definitions/handler.ServiceCreationResponse" } }, + "403": { + "description": "Forbidden", + "schema": { + "$ref": "#/definitions/handler.ServiceCreationResponse" + } + }, "500": { "description": "Internal Server Error", "schema": { diff --git a/docs/swagger.yaml b/docs/swagger.yaml index 7073873..84952c5 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -171,6 +171,10 @@ paths: description: Bad Request schema: $ref: '#/definitions/handler.RegisterResponse' + "403": + description: Forbidden + schema: + $ref: '#/definitions/handler.RegisterResponse' "500": description: Internal Server Error schema: @@ -231,6 +235,10 @@ paths: description: Bad Request schema: $ref: '#/definitions/handler.ServiceCreationResponse' + "403": + description: Forbidden + schema: + $ref: '#/definitions/handler.ServiceCreationResponse' "500": description: Internal Server Error schema: diff --git a/go.mod b/go.mod index ba5be9e..ec78ef3 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module git.kundeng.us/phoenix/textsender-auth go 1.25.4 require ( - git.kundeng.us/phoenix/textsender-models v0.0.9 + git.kundeng.us/phoenix/textsender-models v0.0.10 github.com/go-chi/chi/v5 v5.2.3 github.com/golang-jwt/jwt/v5 v5.3.0 github.com/google/uuid v1.6.0 diff --git a/go.sum b/go.sum index eb59748..07186f6 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,5 @@ -git.kundeng.us/phoenix/textsender-models v0.0.9 h1:wHEbDLYzMpXQ8OaIf05xFY1V19iTpQogTJEuKInkjEQ= -git.kundeng.us/phoenix/textsender-models v0.0.9/go.mod h1:9iPDQJg1Tc6WMNoW5+f8YKmnosMwlWHJ++hmxNLDEe0= +git.kundeng.us/phoenix/textsender-models v0.0.10 h1:0AMe/zm4Xte2BcuqqhRP7+42m+4To+rUnHkR2a9eXlI= +git.kundeng.us/phoenix/textsender-models v0.0.10/go.mod h1:9iPDQJg1Tc6WMNoW5+f8YKmnosMwlWHJ++hmxNLDEe0= github.com/KyleBanks/depth v1.2.1 h1:5h8fQADFrWtarTdtDudMmGsC7GPbOAu6RVB3ffsVFHc= github.com/KyleBanks/depth v1.2.1/go.mod h1:jzSb9d0L43HxTQfT+oSA1EEp2q+ne2uh6XgeJcm8brE= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= diff --git a/internal/config/config.go b/internal/config/config.go index c4b4929..e292820 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -5,7 +5,9 @@ import ( "fmt" "log" "os" + "path" "strconv" + "strings" "github.com/joho/godotenv" @@ -13,9 +15,10 @@ import ( ) type Config struct { - DBConnString string - ServerPort string - ResetDB bool + DBConnString string + ServerPort string + ResetDB bool + EnableRegistration bool } type ConnectionInfo struct { @@ -52,16 +55,24 @@ func Load() *Config { err := godotenv.Load() if err != nil { - log.Fatal("Error loading .env file") + cwd, _ := os.Getwd() + envPath := path.Join(cwd, "../..", ".env") + if err = godotenv.Load(envPath); err != nil { + prevPath := path.Join(envPath, "../..", ".env") + if err = godotenv.Load(prevPath); err != nil { + log.Fatal("Error loading .env file") + } + } } unpackedConnString := UnpackDBConnString() dbConnString := unpackedConnString.Parse() return &Config{ - DBConnString: dbConnString, - ServerPort: *port, - ResetDB: *resetDb, + DBConnString: dbConnString, + ServerPort: *port, + ResetDB: *resetDb, + EnableRegistration: CheckRegistration(), } } @@ -120,6 +131,20 @@ func UnpackDBConnString() (connInfo ConnectionInfo) { return } +func CheckRegistration() bool { + if flagValue := os.Getenv("ENABLE_REGISTRATION"); flagValue != "" { + if val := strings.ToUpper(flagValue); val == "TRUE" { + return true + } else if val == "FALSE" { + return false + } else { + return true + } + } else { + return true + } +} + func (c *Config) GetDBConnString() string { return c.DBConnString } diff --git a/internal/handler/login.go b/internal/handler/login.go index c1bc6c8..db0da5d 100644 --- a/internal/handler/login.go +++ b/internal/handler/login.go @@ -4,10 +4,10 @@ import ( "fmt" "net/http" - "git.kundeng.us/phoenix/textsender-models/pkg/token" + "git.kundeng.us/phoenix/textsender-models/tx0/token" "git.kundeng.us/phoenix/textsender-auth/internal/config" - "git.kundeng.us/phoenix/textsender-auth/internal/model" + "git.kundeng.us/phoenix/textsender-auth/internal/store" "git.kundeng.us/phoenix/textsender-auth/internal/utility" ) @@ -22,11 +22,12 @@ type LoginResponse struct { } type LoginHandler struct { - UserStore model.UserStore + Config *config.Config + UserStore store.UserStore } -func NewLoginHandler(userStore model.UserStore) *LoginHandler { - return &LoginHandler{UserStore: userStore} +func NewLoginHandler(cfg *config.Config, userStore store.UserStore) *LoginHandler { + return &LoginHandler{Config: cfg, UserStore: userStore} } // Login godoc diff --git a/internal/handler/login_test.go b/internal/handler/login_test.go index fd000cf..5587f8b 100644 --- a/internal/handler/login_test.go +++ b/internal/handler/login_test.go @@ -17,8 +17,9 @@ import ( ) func TestLogin(t *testing.T) { + cfg := GetConfig() mockstore := mock.NewMockUserStore() - handler := NewLoginHandler(mockstore) + handler := NewLoginHandler(cfg, mockstore) testUser := GetTestUser() unhashedPassword := testUser.Password diff --git a/internal/handler/refresh.go b/internal/handler/refresh.go index 920d152..8975da6 100644 --- a/internal/handler/refresh.go +++ b/internal/handler/refresh.go @@ -3,21 +3,21 @@ package handler import ( "net/http" - "git.kundeng.us/phoenix/textsender-models/pkg/token" + "git.kundeng.us/phoenix/textsender-models/tx0/token" "git.kundeng.us/phoenix/textsender-auth/internal/config" - "git.kundeng.us/phoenix/textsender-auth/internal/model" "git.kundeng.us/phoenix/textsender-auth/internal/store" "git.kundeng.us/phoenix/textsender-auth/internal/utility" ) type RefreshHandler struct { - UserStore model.UserStore + Config *config.Config + UserStore store.UserStore ServiceStore store.ServiceStore } -func NewRefreshHandler(userStore model.UserStore, serviceStore store.ServiceStore) *RefreshHandler { - return &RefreshHandler{UserStore: userStore, ServiceStore: serviceStore} +func NewRefreshHandler(cfg *config.Config, userStore store.UserStore, serviceStore store.ServiceStore) *RefreshHandler { + return &RefreshHandler{Config: cfg, UserStore: userStore, ServiceStore: serviceStore} } type RefreshRequest struct { diff --git a/internal/handler/refresh_test.go b/internal/handler/refresh_test.go index 346731d..c14fe0c 100644 --- a/internal/handler/refresh_test.go +++ b/internal/handler/refresh_test.go @@ -7,7 +7,7 @@ import ( "strings" "testing" - "git.kundeng.us/phoenix/textsender-models/pkg/user" + "git.kundeng.us/phoenix/textsender-models/tx0/user" "github.com/stretchr/testify/assert" "git.kundeng.us/phoenix/textsender-auth/internal/handler/endpoint" @@ -35,7 +35,8 @@ func TestRefreshTokenWithMock(t *testing.T) { assert.NoError(t, err, "Error creating service user: %v", err) } - handler := NewServiceHandler(mockStore) + cfg := GetConfig() + handler := NewServiceHandler(cfg, mockStore) testService := ServiceLoginRequest{Username: serviceUser.Username, Passphrase: unhashed} jsonValue, err := json.Marshal(testService) assert.NoError(t, err, "Error marshaling request") @@ -56,7 +57,7 @@ func TestRefreshTokenWithMock(t *testing.T) { jsonValue, err = json.Marshal(testReq) assert.NoError(t, err, "Error marshaling request") - newHandler := NewRefreshHandler(userStore, mockStore) + newHandler := NewRefreshHandler(cfg, userStore, mockStore) req, _ = http.NewRequest("POST", endpoint.TokenRefresh, strings.NewReader(string(jsonValue))) rr = httptest.NewRecorder() diff --git a/internal/handler/register.go b/internal/handler/register.go index 10c622c..1f2d89e 100644 --- a/internal/handler/register.go +++ b/internal/handler/register.go @@ -4,10 +4,11 @@ import ( "fmt" "net/http" - "git.kundeng.us/phoenix/textsender-models/pkg/user" + "git.kundeng.us/phoenix/textsender-models/tx0/user" "github.com/google/uuid" - "git.kundeng.us/phoenix/textsender-auth/internal/model" + "git.kundeng.us/phoenix/textsender-auth/internal/config" + "git.kundeng.us/phoenix/textsender-auth/internal/store" "git.kundeng.us/phoenix/textsender-auth/internal/utility" ) @@ -29,11 +30,12 @@ type RegisterResponse struct { } type UserHandler struct { - UserStore model.UserStore + Config *config.Config + UserStore store.UserStore } -func NewUserHandler(userStore model.UserStore) *UserHandler { - return &UserHandler{UserStore: userStore} +func NewUserHandler(cfg *config.Config, userStore store.UserStore) *UserHandler { + return &UserHandler{Config: cfg, UserStore: userStore} } // Register godoc @@ -46,6 +48,7 @@ func NewUserHandler(userStore model.UserStore) *UserHandler { // @Param request body RegisterUser true "Data to add user" // @Success 200 {object} RegisterResponse // @Failure 400 {object} RegisterResponse +// @Failure 403 {object} RegisterResponse // @Failure 500 {object} RegisterResponse // @Router /register [post] func (u *UserHandler) Register(w http.ResponseWriter, r *http.Request) { @@ -60,6 +63,12 @@ func (u *UserHandler) Register(w http.ResponseWriter, r *http.Request) { var statusCode int var resp RegisterResponse + if !u.Config.EnableRegistration { + statusCode = http.StatusForbidden + resp.Message = "Registration disabled" + RespondWithJson(w, statusCode, &resp) + return + } user := user.User{Username: req.Username, Password: req.Password, PhoneNumber: req.PhoneNumber} fmt.Println("Username:", user.Username) diff --git a/internal/handler/register_test.go b/internal/handler/register_test.go index fef906b..4aa043f 100644 --- a/internal/handler/register_test.go +++ b/internal/handler/register_test.go @@ -14,8 +14,9 @@ import ( ) func TestCreateUserWithMock(t *testing.T) { + cfg := GetConfig() mockstore := mock.NewMockUserStore() - handler := NewUserHandler(mockstore) + handler := NewUserHandler(cfg, mockstore) testUser := GetTestUser() jsonValue, _ := json.Marshal(testUser) diff --git a/internal/handler/service.go b/internal/handler/service.go index ebd2f9c..630db6d 100644 --- a/internal/handler/service.go +++ b/internal/handler/service.go @@ -3,8 +3,8 @@ package handler import ( "net/http" - "git.kundeng.us/phoenix/textsender-models/pkg/token" - "git.kundeng.us/phoenix/textsender-models/pkg/user" + "git.kundeng.us/phoenix/textsender-models/tx0/token" + "git.kundeng.us/phoenix/textsender-models/tx0/user" "git.kundeng.us/phoenix/textsender-auth/internal/config" "git.kundeng.us/phoenix/textsender-auth/internal/store" @@ -12,11 +12,12 @@ import ( ) type ServiceHandler struct { + Config *config.Config ServiceStore store.ServiceStore } -func NewServiceHandler(serviceStore store.ServiceStore) *ServiceHandler { - return &ServiceHandler{ServiceStore: serviceStore} +func NewServiceHandler(cfg *config.Config, serviceStore store.ServiceStore) *ServiceHandler { + return &ServiceHandler{Config: cfg, ServiceStore: serviceStore} } type ServiceCreationRequest struct { @@ -39,6 +40,7 @@ type ServiceCreationResponse struct { // @Param request body ServiceCreationRequest true "Data to add user" // @Success 200 {object} ServiceCreationResponse // @Failure 400 {object} ServiceCreationResponse +// @Failure 403 {object} ServiceCreationResponse // @Failure 500 {object} ServiceCreationResponse // @Router /service/register [post] func (s *ServiceHandler) Register(w http.ResponseWriter, r *http.Request) { @@ -52,6 +54,12 @@ func (s *ServiceHandler) Register(w http.ResponseWriter, r *http.Request) { var statusCode int var resp ServiceCreationResponse + if !s.Config.EnableRegistration { + statusCode = http.StatusForbidden + resp.Message = "Registration disabled" + RespondWithJson(w, statusCode, &resp) + return + } ctx := r.Context() if exists, err := s.ServiceStore.CheckWithUsername(ctx, req.Username); err != nil { diff --git a/internal/handler/service_test.go b/internal/handler/service_test.go index 560b6bf..3063f1f 100644 --- a/internal/handler/service_test.go +++ b/internal/handler/service_test.go @@ -7,7 +7,7 @@ import ( "strings" "testing" - "git.kundeng.us/phoenix/textsender-models/pkg/user" + "git.kundeng.us/phoenix/textsender-models/tx0/user" "github.com/stretchr/testify/assert" "git.kundeng.us/phoenix/textsender-auth/internal/handler/endpoint" @@ -16,8 +16,9 @@ import ( ) func TestCreateServiceUserWithMock(t *testing.T) { + cfg := GetConfig() mockStore := mock.NewMockServiceUserStore() - handler := NewServiceHandler(mockStore) + handler := NewServiceHandler(cfg, mockStore) testService := ServiceCreationRequest{Username: "swoon", Passphrase: "ewrewr329n12y3x2!2"} jsonValue, err := json.Marshal(testService) @@ -53,7 +54,8 @@ func TestLoginServiceUserWithMock(t *testing.T) { assert.NoError(t, err, "Error creating service user: %v", err) } - handler := NewServiceHandler(mockStore) + cfg := GetConfig() + handler := NewServiceHandler(cfg, mockStore) testService := ServiceLoginRequest{Username: serviceUser.Username, Passphrase: unhashed} jsonValue, err := json.Marshal(testService) assert.NoError(t, err, "Error marshaling request") diff --git a/internal/handler/utility_test.go b/internal/handler/utility_test.go index 714b655..6b8b695 100644 --- a/internal/handler/utility_test.go +++ b/internal/handler/utility_test.go @@ -1,9 +1,40 @@ package handler import ( - "git.kundeng.us/phoenix/textsender-models/pkg/user" + "log" + "os" + "path" + + "git.kundeng.us/phoenix/textsender-models/tx0/user" + "github.com/joho/godotenv" + + "git.kundeng.us/phoenix/textsender-auth/internal/config" ) func GetTestUser() user.User { return user.User{Username: "ghost", PhoneNumber: "+1234567890", Password: "dfgdffddfd"} } + +func GetConfig() *config.Config { + err := godotenv.Load() + if err != nil { + cwd, _ := os.Getwd() + envPath := path.Join(cwd, "../..", ".env") + if err = godotenv.Load(envPath); err != nil { + prevPath := path.Join(envPath, "../..", ".env") + if err = godotenv.Load(prevPath); err != nil { + log.Fatal("Error loading .env file") + } + } + } + + unpackedConnString := config.UnpackDBConnString() + dbConnString := unpackedConnString.Parse() + + return &config.Config{ + DBConnString: dbConnString, + ServerPort: config.Port, + ResetDB: false, + EnableRegistration: config.CheckRegistration(), + } +} diff --git a/internal/store/mock/service_store.go b/internal/store/mock/service_store.go index 7c8c146..90416ad 100644 --- a/internal/store/mock/service_store.go +++ b/internal/store/mock/service_store.go @@ -6,7 +6,7 @@ import ( "fmt" "sync" - "git.kundeng.us/phoenix/textsender-models/pkg/user" + "git.kundeng.us/phoenix/textsender-models/tx0/user" "github.com/google/uuid" ) diff --git a/internal/store/mock/store.go b/internal/store/mock/store.go index aca8169..bc7e0fc 100644 --- a/internal/store/mock/store.go +++ b/internal/store/mock/store.go @@ -7,7 +7,7 @@ import ( "github.com/google/uuid" - "git.kundeng.us/phoenix/textsender-models/pkg/user" + "git.kundeng.us/phoenix/textsender-models/tx0/user" ) type MockUserStore struct { diff --git a/internal/store/service.go b/internal/store/service.go index 2a79c6f..274259b 100644 --- a/internal/store/service.go +++ b/internal/store/service.go @@ -4,7 +4,7 @@ import ( "context" "fmt" - "git.kundeng.us/phoenix/textsender-models/pkg/user" + "git.kundeng.us/phoenix/textsender-models/tx0/user" "github.com/google/uuid" "github.com/jackc/pgx/v5" "github.com/jackc/pgx/v5/pgxpool" diff --git a/internal/model/user.go b/internal/store/user.go similarity index 97% rename from internal/model/user.go rename to internal/store/user.go index 9fc8de6..c838503 100644 --- a/internal/model/user.go +++ b/internal/store/user.go @@ -1,4 +1,4 @@ -package model +package store import ( "context" @@ -8,10 +8,9 @@ import ( "github.com/jackc/pgx/v5" "github.com/jackc/pgx/v5/pgxpool" - "git.kundeng.us/phoenix/textsender-models/pkg/user" + "git.kundeng.us/phoenix/textsender-models/tx0/user" ) - type UserStore interface { CreateUser(ctx context.Context, user *user.User) error GetUserByID(ctx context.Context, id uuid.UUID) (*user.User, error) diff --git a/internal/utility/token.go b/internal/utility/token.go index 81733e5..c241ff0 100644 --- a/internal/utility/token.go +++ b/internal/utility/token.go @@ -4,12 +4,12 @@ import ( "fmt" "time" + "git.kundeng.us/phoenix/textsender-models/tx0/token" + "git.kundeng.us/phoenix/textsender-models/tx0/user" "github.com/google/uuid" "github.com/golang-jwt/jwt/v5" "git.kundeng.us/phoenix/textsender-auth/internal/config" - "git.kundeng.us/phoenix/textsender-models/pkg/token" - "git.kundeng.us/phoenix/textsender-models/pkg/user" ) const ROLE_TYPE = "regular"