mirror of
https://github.com/kubeshark/kubeshark.git
synced 2026-07-29 02:03:29 +00:00
Merge branch 'feature/TRA-3442_versioning' into feature/versioning
This commit is contained in:
@@ -104,6 +104,7 @@ func hostApi(socketHarOutputChannel chan<- *tap.OutputChannelItem) {
|
||||
}
|
||||
routes.WebSocketRoutes(app, &eventHandlers)
|
||||
routes.EntriesRoutes(app)
|
||||
routes.MetadataRoutes(app)
|
||||
routes.NotFoundRoute(app)
|
||||
|
||||
utils.StartServer(app)
|
||||
|
||||
14
api/pkg/controllers/metadata_controller.go
Normal file
14
api/pkg/controllers/metadata_controller.go
Normal file
@@ -0,0 +1,14 @@
|
||||
package controllers
|
||||
|
||||
import (
|
||||
"github.com/gofiber/fiber/v2"
|
||||
)
|
||||
|
||||
type VersionResponse struct {
|
||||
SemVer string `json:"semver"`
|
||||
}
|
||||
|
||||
func GetVersion(c *fiber.Ctx) error {
|
||||
resp := VersionResponse{SemVer: "1.2.3"}
|
||||
return c.Status(fiber.StatusOK).JSON(resp)
|
||||
}
|
||||
13
api/pkg/routes/metadata_routes.go
Normal file
13
api/pkg/routes/metadata_routes.go
Normal file
@@ -0,0 +1,13 @@
|
||||
package routes
|
||||
|
||||
import (
|
||||
"github.com/gofiber/fiber/v2"
|
||||
"mizuserver/pkg/controllers"
|
||||
)
|
||||
|
||||
// EntriesRoutes func for describe group of public routes.
|
||||
func MetadataRoutes(fiberApp *fiber.App) {
|
||||
routeGroup := fiberApp.Group("/metadata")
|
||||
|
||||
routeGroup.Get("/version", controllers.GetVersion)
|
||||
}
|
||||
@@ -3,6 +3,7 @@ COMMIT_HASH=$(shell git rev-parse HEAD)
|
||||
GIT_BRANCH=$(shell git branch --show-current | tr '[:upper:]' '[:lower:]')
|
||||
GIT_VERSION=$(shell git branch --show-current | tr '[:upper:]' '[:lower:]')
|
||||
BUILD_TIMESTAMP=$(shell date +%s)
|
||||
SEM_VER=0.0.0
|
||||
|
||||
.PHONY: help
|
||||
.DEFAULT_GOAL := help
|
||||
|
||||
@@ -97,7 +97,7 @@ func init() {
|
||||
tapCmd.Flags().Uint16VarP(&mizuTapOptions.SleepIntervalSec, "upload-interval", "", 10, "Interval in seconds for uploading data to UP9")
|
||||
tapCmd.Flags().BoolVarP(&mizuTapOptions.AllNamespaces, "all-namespaces", "A", false, "Tap all namespaces")
|
||||
tapCmd.Flags().StringVarP(&mizuTapOptions.KubeConfigPath, "kube-config", "k", "", "Path to kube-config file")
|
||||
tapCmd.Flags().StringVarP(&mizuTapOptions.MizuImage, "mizu-image", "", fmt.Sprintf("gcr.io/up9-docker-hub/mizu/%s:latest", mizu.Branch), "Custom image for mizu collector")
|
||||
tapCmd.Flags().StringVarP(&mizuTapOptions.MizuImage, "mizu-image", "", fmt.Sprintf("gcr.io/up9-docker-hub/mizu/%s:%s", mizu.Branch, mizu.SemVer), "Custom image for mizu collector")
|
||||
tapCmd.Flags().StringArrayVarP(&mizuTapOptions.PlainTextFilterRegexes, "regex-masking", "r", nil, "List of regex expressions that are used to filter matching values from text/plain http bodies")
|
||||
tapCmd.Flags().StringVarP(&direction, "direction", "", "in", "Record traffic that goes in this direction (relative to the tapped pod): in/any")
|
||||
tapCmd.Flags().BoolVar(&mizuTapOptions.HideHealthChecks, "hide-healthchecks", false, "hides requests with kube-probe or prometheus user-agent headers")
|
||||
|
||||
28
shared/semver/semver.go
Normal file
28
shared/semver/semver.go
Normal file
@@ -0,0 +1,28 @@
|
||||
package semver
|
||||
|
||||
import (
|
||||
"regexp"
|
||||
)
|
||||
|
||||
type SemVersion string
|
||||
|
||||
func (v SemVersion) Breakdown() (string, string, string) {
|
||||
re := regexp.MustCompile(`\d+`)
|
||||
breakdown := re.FindAllString(string(v), 3)
|
||||
return breakdown[0], breakdown[1], breakdown[2]
|
||||
}
|
||||
|
||||
func (v SemVersion) Major() string {
|
||||
major, _, _ := v.Breakdown()
|
||||
return major
|
||||
}
|
||||
|
||||
func (v SemVersion) Minor() string {
|
||||
_, minor, _ := v.Breakdown()
|
||||
return minor
|
||||
}
|
||||
|
||||
func (v SemVersion) Patch() string {
|
||||
_, _, patch := v.Breakdown()
|
||||
return patch
|
||||
}
|
||||
Reference in New Issue
Block a user