mirror of
https://github.com/Direct-Dev-Ru/go-lcg.git
synced 2025-11-16 09:39:56 +00:00
Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| d213de7a95 | |||
| deb80f2b37 | |||
| 81b01d74ae | |||
| 3c95eb85db | |||
| 1fbdd237a3 | |||
| 5b78e775c1 | |||
| 2d82b91090 | |||
| 9044b02d27 | |||
| 5d3829d1fe | |||
| e7c11879a1 |
@@ -1 +1 @@
|
|||||||
v2.0.4
|
v2.0.5
|
||||||
|
|||||||
@@ -68,6 +68,15 @@ type ValidationConfig struct {
|
|||||||
MaxExplanationLength int
|
MaxExplanationLength int
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetEnvBool(key string, defaultValue bool) bool {
|
||||||
|
if value, exists := os.LookupEnv(key); exists {
|
||||||
|
if boolValue, err := strconv.ParseBool(value); err == nil {
|
||||||
|
return boolValue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return defaultValue
|
||||||
|
}
|
||||||
|
|
||||||
func getEnv(key, defaultValue string) string {
|
func getEnv(key, defaultValue string) string {
|
||||||
if value, exists := os.LookupEnv(key); exists {
|
if value, exists := os.LookupEnv(key); exists {
|
||||||
return value
|
return value
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ data:
|
|||||||
LCG_CONFIG_FOLDER: "/app/data/config"
|
LCG_CONFIG_FOLDER: "/app/data/config"
|
||||||
LCG_NO_HISTORY: "false"
|
LCG_NO_HISTORY: "false"
|
||||||
LCG_ALLOW_EXECUTION: "false"
|
LCG_ALLOW_EXECUTION: "false"
|
||||||
LCG_DEBUG: "false"
|
LCG_DEBUG: "true"
|
||||||
|
|
||||||
# Настройки аутентификации
|
# Настройки аутентификации
|
||||||
LCG_SERVER_REQUIRE_AUTH: "true"
|
LCG_SERVER_REQUIRE_AUTH: "true"
|
||||||
|
|||||||
@@ -15,7 +15,6 @@ spec:
|
|||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: lcg
|
app: lcg
|
||||||
version: ${VERSION}
|
|
||||||
spec:
|
spec:
|
||||||
containers:
|
containers:
|
||||||
- name: lcg
|
- name: lcg
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
v2.0.4
|
v2.0.5
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ metadata:
|
|||||||
namespace: lcg
|
namespace: lcg
|
||||||
labels:
|
labels:
|
||||||
app: lcg
|
app: lcg
|
||||||
version: ${VERSION}
|
|
||||||
spec:
|
spec:
|
||||||
entryPoints:
|
entryPoints:
|
||||||
- websecure
|
- websecure
|
||||||
|
|||||||
@@ -13,13 +13,13 @@ resources:
|
|||||||
- ingress-route.yaml
|
- ingress-route.yaml
|
||||||
|
|
||||||
# Common labels
|
# Common labels
|
||||||
commonLabels:
|
# commonLabels:
|
||||||
app: lcg
|
# app: lcg
|
||||||
version: ${VERSION}
|
# version: ${VERSION}
|
||||||
managed-by: kustomize
|
# managed-by: kustomize
|
||||||
|
|
||||||
# Images
|
# Images
|
||||||
images:
|
# images:
|
||||||
- name: lcg
|
# - name: lcg
|
||||||
newName: ${REPOSITORY}
|
# newName: ${REPOSITORY}
|
||||||
newTag: ${VERSION}
|
# newTag: ${VERSION}
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ metadata:
|
|||||||
namespace: lcg
|
namespace: lcg
|
||||||
labels:
|
labels:
|
||||||
app: lcg
|
app: lcg
|
||||||
version: ${VERSION}
|
|
||||||
spec:
|
spec:
|
||||||
type: ClusterIP
|
type: ClusterIP
|
||||||
ports:
|
ports:
|
||||||
@@ -15,4 +14,3 @@ spec:
|
|||||||
name: http
|
name: http
|
||||||
selector:
|
selector:
|
||||||
app: lcg
|
app: lcg
|
||||||
version: ${VERSION}
|
|
||||||
|
|||||||
@@ -124,6 +124,11 @@ func (p *ProxyAPIProvider) Chat(messages []Chat) (string, error) {
|
|||||||
req.Header.Set("Authorization", "Bearer "+p.JWTToken)
|
req.Header.Set("Authorization", "Bearer "+p.JWTToken)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if config.AppConfig.MainFlags.Debug {
|
||||||
|
fmt.Println("Chat URL: ", p.BaseURL+config.AppConfig.Server.ProxyUrl)
|
||||||
|
fmt.Println("ProxyChatRequest: ", req)
|
||||||
|
}
|
||||||
|
|
||||||
resp, err := p.HTTPClient.Do(req)
|
resp, err := p.HTTPClient.Do(req)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", fmt.Errorf("ошибка выполнения запроса: %w", err)
|
return "", fmt.Errorf("ошибка выполнения запроса: %w", err)
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
namespace: lcg
|
namespace: lcg
|
||||||
data:
|
data:
|
||||||
# Основные настройки
|
# Основные настройки
|
||||||
LCG_VERSION: "v2.0.4"
|
LCG_VERSION: "v2.0.5"
|
||||||
LCG_BASE_PATH: "/lcg"
|
LCG_BASE_PATH: "/lcg"
|
||||||
LCG_SERVER_HOST: "0.0.0.0"
|
LCG_SERVER_HOST: "0.0.0.0"
|
||||||
LCG_SERVER_PORT: "8080"
|
LCG_SERVER_PORT: "8080"
|
||||||
@@ -16,7 +16,7 @@ data:
|
|||||||
LCG_CONFIG_FOLDER: "/app/data/config"
|
LCG_CONFIG_FOLDER: "/app/data/config"
|
||||||
LCG_NO_HISTORY: "false"
|
LCG_NO_HISTORY: "false"
|
||||||
LCG_ALLOW_EXECUTION: "false"
|
LCG_ALLOW_EXECUTION: "false"
|
||||||
LCG_DEBUG: "false"
|
LCG_DEBUG: "true"
|
||||||
|
|
||||||
# Настройки аутентификации
|
# Настройки аутентификации
|
||||||
LCG_SERVER_REQUIRE_AUTH: "true"
|
LCG_SERVER_REQUIRE_AUTH: "true"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ metadata:
|
|||||||
namespace: lcg
|
namespace: lcg
|
||||||
labels:
|
labels:
|
||||||
app: lcg
|
app: lcg
|
||||||
version: v2.0.4
|
version: v2.0.5
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: 1
|
||||||
selector:
|
selector:
|
||||||
@@ -15,11 +15,10 @@ spec:
|
|||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: lcg
|
app: lcg
|
||||||
version: v2.0.4
|
|
||||||
spec:
|
spec:
|
||||||
containers:
|
containers:
|
||||||
- name: lcg
|
- name: lcg
|
||||||
image: kuznetcovay/lcg:v2.0.4
|
image: kuznetcovay/lcg:v2.0.5
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 8080
|
- containerPort: 8080
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ metadata:
|
|||||||
namespace: lcg
|
namespace: lcg
|
||||||
labels:
|
labels:
|
||||||
app: lcg
|
app: lcg
|
||||||
version: v2.0.4
|
|
||||||
spec:
|
spec:
|
||||||
entryPoints:
|
entryPoints:
|
||||||
- websecure
|
- websecure
|
||||||
|
|||||||
@@ -13,13 +13,13 @@ resources:
|
|||||||
- ingress-route.yaml
|
- ingress-route.yaml
|
||||||
|
|
||||||
# Common labels
|
# Common labels
|
||||||
commonLabels:
|
# commonLabels:
|
||||||
app: lcg
|
# app: lcg
|
||||||
version: v2.0.4
|
# version: v2.0.5
|
||||||
managed-by: kustomize
|
# managed-by: kustomize
|
||||||
|
|
||||||
# Images
|
# Images
|
||||||
images:
|
# images:
|
||||||
- name: lcg
|
# - name: lcg
|
||||||
newName: kuznetcovay/lcg
|
# newName: kuznetcovay/lcg
|
||||||
newTag: v2.0.4
|
# newTag: v2.0.5
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ metadata:
|
|||||||
namespace: lcg
|
namespace: lcg
|
||||||
labels:
|
labels:
|
||||||
app: lcg
|
app: lcg
|
||||||
version: v2.0.4
|
|
||||||
spec:
|
spec:
|
||||||
type: ClusterIP
|
type: ClusterIP
|
||||||
ports:
|
ports:
|
||||||
@@ -15,4 +14,3 @@ spec:
|
|||||||
name: http
|
name: http
|
||||||
selector:
|
selector:
|
||||||
app: lcg
|
app: lcg
|
||||||
version: v2.0.4
|
|
||||||
|
|||||||
3
main.go
3
main.go
@@ -156,6 +156,9 @@ lcg [опции] <описание команды>
|
|||||||
Debug: c.Bool("debug"),
|
Debug: c.Bool("debug"),
|
||||||
}
|
}
|
||||||
disableHistory = config.AppConfig.MainFlags.NoHistory || config.AppConfig.IsNoHistoryEnabled()
|
disableHistory = config.AppConfig.MainFlags.NoHistory || config.AppConfig.IsNoHistoryEnabled()
|
||||||
|
|
||||||
|
config.AppConfig.MainFlags.Debug = config.AppConfig.MainFlags.Debug || config.GetEnvBool("LCG_DEBUG", false)
|
||||||
|
|
||||||
args := c.Args().Slice()
|
args := c.Args().Slice()
|
||||||
|
|
||||||
if len(args) == 0 {
|
if len(args) == 0 {
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ func validateJWTToken(tokenString string) (*JWTClaims, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Парсим токен
|
// Парсим токен
|
||||||
token, err := jwt.ParseWithClaims(tokenString, &JWTClaims{}, func(token *jwt.Token) (interface{}, error) {
|
token, err := jwt.ParseWithClaims(tokenString, &JWTClaims{}, func(token *jwt.Token) (any, error) {
|
||||||
// Проверяем метод подписи
|
// Проверяем метод подписи
|
||||||
if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok {
|
if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok {
|
||||||
return nil, fmt.Errorf("unexpected signing method: %v", token.Header["alg"])
|
return nil, fmt.Errorf("unexpected signing method: %v", token.Header["alg"])
|
||||||
|
|||||||
Reference in New Issue
Block a user