From c5f0bc509e484ac0f8114f7e03a3cba15e87c370 Mon Sep 17 00:00:00 2001 From: Imbus <> Date: Wed, 6 Mar 2024 15:15:41 +0100 Subject: [PATCH 1/6] Makefile target for installing just (hack of doom) --- backend/Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/backend/Makefile b/backend/Makefile index 23eefa0..dcc79b4 100644 --- a/backend/Makefile +++ b/backend/Makefile @@ -69,3 +69,7 @@ lint: # Default target default: build + +install-just: + @echo "Installing just" + @curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to /usr/local/bin From 524baf90d28ca6006884629c9030de02710b250e Mon Sep 17 00:00:00 2001 From: Imbus <> Date: Wed, 6 Mar 2024 15:34:43 +0100 Subject: [PATCH 2/6] Hotfix for just errors related to podman --- Justfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Justfile b/Justfile index 0d99e3a..c23909d 100644 --- a/Justfile +++ b/Justfile @@ -11,7 +11,7 @@ start-release: build-container-release remove-podman-containers # Removes and stops any containers related to the project [private] remove-podman-containers: - podman container rm -f ttime + podman container rm -fi ttime # Saves the release container to a tarball, pigz is just gzip but multithreaded save-release: build-container-release @@ -30,7 +30,7 @@ testall: # Cleans up everything related to the project clean: remove-podman-containers - podman image rm -f ttime-server + podman image rm -fi ttime-server rm -rf frontend/dist rm -rf frontend/node_modules rm -f ttime-server.tar.gz From 4cfb227a1e2650fc69dcab5af071418edb99dae6 Mon Sep 17 00:00:00 2001 From: Imbus <> Date: Wed, 6 Mar 2024 15:40:24 +0100 Subject: [PATCH 3/6] Add install linter target --- Justfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Justfile b/Justfile index c23909d..cf8525c 100644 --- a/Justfile +++ b/Justfile @@ -41,3 +41,6 @@ clean: remove-podman-containers [confirm] podman-clean: podman system reset --force + +install-linter: + curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.56.2 From b31349ec37abbac098a7a61ebfc6da768c97e86f Mon Sep 17 00:00:00 2001 From: Imbus <> Date: Wed, 6 Mar 2024 15:44:18 +0100 Subject: [PATCH 4/6] Change test order in testall target --- Justfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Justfile b/Justfile index cf8525c..432fbd1 100644 --- a/Justfile +++ b/Justfile @@ -23,10 +23,10 @@ load-release file: # Tests every part of the project testall: - cd backend && make test - cd backend && make lint cd frontend && npm test cd frontend && npm run lint + cd backend && make test + cd backend && make lint # Cleans up everything related to the project clean: remove-podman-containers From 3175c62e6dacdb1c02de9162f9708fd96c583359 Mon Sep 17 00:00:00 2001 From: Imbus <> Date: Thu, 7 Mar 2024 11:33:06 +0100 Subject: [PATCH 5/6] Carmack level testing instructions --- backend/internal/handlers/global_state.go | 1 + 1 file changed, 1 insertion(+) diff --git a/backend/internal/handlers/global_state.go b/backend/internal/handlers/global_state.go index 5dc8895..ffe2072 100644 --- a/backend/internal/handlers/global_state.go +++ b/backend/internal/handlers/global_state.go @@ -115,6 +115,7 @@ func (gs *GState) Login(c *fiber.Ctx) error { // LoginRenew is a simple handler that renews the token func (gs *GState) LoginRenew(c *fiber.Ctx) error { + // For testing: curl localhost:3000/restricted -H "Authorization: Bearer " user := c.Locals("user").(*jwt.Token) claims := user.Claims.(jwt.MapClaims) claims["exp"] = time.Now().Add(time.Hour * 72).Unix() From acff254aa576bab4cd3ca4e641bb0d63b903bd22 Mon Sep 17 00:00:00 2001 From: Imbus <> Date: Thu, 7 Mar 2024 12:13:29 +0100 Subject: [PATCH 6/6] Indirect -> direct dependency in go.mod --- backend/go.mod | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/go.mod b/backend/go.mod index ab9be66..94d5519 100644 --- a/backend/go.mod +++ b/backend/go.mod @@ -10,8 +10,8 @@ require ( require ( github.com/MicahParks/keyfunc/v2 v2.1.0 // indirect - github.com/gofiber/contrib/jwt v1.0.8 // indirect - github.com/golang-jwt/jwt/v5 v5.2.1 // indirect + github.com/gofiber/contrib/jwt v1.0.8 + github.com/golang-jwt/jwt/v5 v5.2.1 ) // These are all for fiber