ci: add db migration and config validation to pipeline
This commit is contained in:
parent
525d54645c
commit
ee0b3056a3
@ -15,9 +15,28 @@ jobs:
|
|||||||
secrets:
|
secrets:
|
||||||
REGISTRY_USER: ${{ secrets.REGISTRY_USER }}
|
REGISTRY_USER: ${{ secrets.REGISTRY_USER }}
|
||||||
REGISTRY_PASSWORD: ${{ secrets.REGISTRY_PASSWORD }}
|
REGISTRY_PASSWORD: ${{ secrets.REGISTRY_PASSWORD }}
|
||||||
|
ValidateConfig:
|
||||||
|
runs-on: [squizstaging]
|
||||||
|
uses: https://gitea.pena/PenaDevops/actions.git/.gitea/workflows/validate_config.yml@v1.2.1
|
||||||
|
needs: CreateImage
|
||||||
|
with:
|
||||||
|
runner: hubstaging
|
||||||
|
secrets:
|
||||||
|
REGISTRY_USER: ${{ secrets.REGISTRY_USER }}
|
||||||
|
REGISTRY_PASSWORD: ${{ secrets.REGISTRY_PASSWORD }}
|
||||||
|
MigrateDatabase:
|
||||||
|
runs-on: [squizstaging]
|
||||||
|
uses: http://gitea.pena/PenaDevops/actions.git/.gitea/workflows/migrate.yml@9263e22095fa40bcb36881ad81722d3049acd07f
|
||||||
|
needs: ValidateConfig
|
||||||
|
with:
|
||||||
|
runner: hubstaging
|
||||||
|
branch_name: ${{ github.ref_name }}
|
||||||
|
secrets:
|
||||||
|
REGISTRY_USER: ${{ secrets.REGISTRY_USER }}
|
||||||
|
REGISTRY_PASSWORD: ${{ secrets.REGISTRY_PASSWORD }}
|
||||||
DeployService:
|
DeployService:
|
||||||
runs-on: [squizstaging]
|
runs-on: [squizstaging]
|
||||||
needs: CreateImage
|
needs: MigrateDatabase
|
||||||
uses: http://gitea.pena/PenaDevops/actions.git/.gitea/workflows/deploy.yml@v1.1.4-p7
|
uses: http://gitea.pena/PenaDevops/actions.git/.gitea/workflows/deploy.yml@v1.1.4-p7
|
||||||
with:
|
with:
|
||||||
runner: squizstaging
|
runner: squizstaging
|
||||||
|
@ -3,7 +3,9 @@ WORKDIR /app
|
|||||||
COPY . .
|
COPY . .
|
||||||
RUN go mod download
|
RUN go mod download
|
||||||
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o wrkr ./cmd/main.go
|
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o wrkr ./cmd/main.go
|
||||||
|
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o validator ./cmd/validator/main.go
|
||||||
|
|
||||||
FROM gitea.pena/penadevops/container-images/alpine:main as prod
|
FROM gitea.pena/penadevops/container-images/alpine:main as prod
|
||||||
|
COPY --from=build /app/validator .
|
||||||
COPY --from=build /app/wrkr .
|
COPY --from=build /app/wrkr .
|
||||||
CMD ["/wrkr"]
|
CMD ["/wrkr"]
|
||||||
|
22
deployments/staging/config.env
Normal file
22
deployments/staging/config.env
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
IS_PROD_LOG="false"
|
||||||
|
IS_PROD='false'
|
||||||
|
POSTGRES_URL='host=10.7.0.10 port=5432 user=squiz password=Redalert2 dbname=squiz sslmode=disable'
|
||||||
|
KAFKA_BROKERS= '10.7.0.6:9092'
|
||||||
|
KAFKA_TOPIC= 'tariffs'
|
||||||
|
QUIZ_ID=quizCnt
|
||||||
|
AMOUNT=10
|
||||||
|
UNLIM_ID=quizUnlimTime
|
||||||
|
REDIS_HOST='10.7.0.10:6379'
|
||||||
|
REDIS_PASSWORD='Redalert2'
|
||||||
|
REDIS_DB=2
|
||||||
|
MAIL_SENDER='noreply@mailing.pena.digital'
|
||||||
|
MAIL_API_KEY='P0YsjUB137upXrr1NiJefHmXVKW1hmBWlpev'
|
||||||
|
CUSTOMER_MICROSERVICE_RPC_URL='10.7.0.6:9060'
|
||||||
|
S3_ENDPOINT=s3.timeweb.cloud
|
||||||
|
S3_ACCESS_KEY=5CV77KVDUU9H0II9R24M
|
||||||
|
S3_SECRET_KEY=0W0m8DyvdAKRJnsAy6mB5zndQ7RouJBLhqhtThcu
|
||||||
|
KAFKA_TOPIC_GIGA_CHAT=gigachat
|
||||||
|
KAFKA_GROUP_GIGA_CHAT=""
|
||||||
|
GIGA_CHAT_API_AUTH_KEY=Y2MzZWUxZDMtZGE5MC00ZTFjLWI5YzItM2ViMTZmMDM0YTkwOmY1NTlkOGM3LWUyNmQtNGUwMC1hODE0LTJlYjQ5NDA5ODdjMQ==
|
||||||
|
GIGA_CHAT_API_BASE_URL="https://gigachat.devices.sberbank.ru/api/v1"
|
||||||
|
TELEGRAM_TOKEN=6112841016:AAH2nO1c6mqfMewBvHwdXCDp5PCclOuc99
|
@ -4,25 +4,7 @@ services:
|
|||||||
container_name: squiz-workerv1.0.0
|
container_name: squiz-workerv1.0.0
|
||||||
image: gitea.pena/squiz/worker/staging:$GITHUB_RUN_NUMBER
|
image: gitea.pena/squiz/worker/staging:$GITHUB_RUN_NUMBER
|
||||||
tty: true
|
tty: true
|
||||||
environment:
|
env_file: config.env
|
||||||
IS_PROD_LOG: 'false'
|
ports:
|
||||||
IS_PROD: 'false'
|
- 10.7.0.10:2347:2345
|
||||||
POSTGRES_URL: 'host=10.7.0.10 port=5432 user=squiz password=Redalert2 dbname=squiz sslmode=disable'
|
command: dlv --listen=:2345 --continue --headless=true --log=true --log-output=debugger,debuglineerr,gdbwire,lldbout,rpc --accept-multiclient --api-version=2 exec /wrkr
|
||||||
KAFKA_BROKERS: '10.7.0.6:9092'
|
|
||||||
KAFKA_TOPIC: 'tariffs'
|
|
||||||
QUIZ_ID: quizCnt
|
|
||||||
AMOUNT: 10
|
|
||||||
UNLIM_ID: quizUnlimTime
|
|
||||||
REDIS_HOST: '10.7.0.10:6379'
|
|
||||||
REDIS_PASSWORD: 'Redalert2'
|
|
||||||
REDIS_DB: 2
|
|
||||||
MAIL_SENDER: 'noreply@mailing.pena.digital'
|
|
||||||
MAIL_API_KEY: 'P0YsjUB137upXrr1NiJefHmXVKW1hmBWlpev'
|
|
||||||
CUSTOMER_MICROSERVICE_RPC_URL: '10.7.0.6:9060'
|
|
||||||
S3_ENDPOINT: s3.timeweb.cloud
|
|
||||||
S3_ACCESS_KEY: 5CV77KVDUU9H0II9R24M
|
|
||||||
S3_SECRET_KEY: 0W0m8DyvdAKRJnsAy6mB5zndQ7RouJBLhqhtThcu
|
|
||||||
KAFKA_TOPIC_GIGA_CHAT: gigachat
|
|
||||||
KAFKA_GROUP_GIGA_CHAT: ""
|
|
||||||
GIGA_CHAT_API_AUTH_KEY: Y2MzZWUxZDMtZGE5MC00ZTFjLWI5YzItM2ViMTZmMDM0YTkwOmY1NTlkOGM3LWUyNmQtNGUwMC1hODE0LTJlYjQ5NDA5ODdjMQ==
|
|
||||||
GIGA_CHAT_API_BASE_URL: "https://gigachat.devices.sberbank.ru/api/v1"
|
|
||||||
|
6
deployments/staging/validate_config.yml
Normal file
6
deployments/staging/validate_config.yml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
services:
|
||||||
|
validator:
|
||||||
|
tty: true
|
||||||
|
command: ./validator
|
||||||
|
image: gitea.pena/squiz/worker/staging:$GITHUB_RUN_NUMBER
|
||||||
|
env_file: config.env
|
4
go.mod
4
go.mod
@ -5,10 +5,10 @@ go 1.23.2
|
|||||||
toolchain go1.23.4
|
toolchain go1.23.4
|
||||||
|
|
||||||
require (
|
require (
|
||||||
gitea.pena/PenaSide/common v0.0.0-20250103085335-91ea31fee517
|
gitea.pena/PenaSide/common v0.0.0-20250421103113-7e4b3ae9e1e0
|
||||||
gitea.pena/PenaSide/customer v0.0.0-20250407185330-82e95e8da043
|
gitea.pena/PenaSide/customer v0.0.0-20250407185330-82e95e8da043
|
||||||
gitea.pena/PenaSide/hlog v0.0.0-20241125221102-a54c29c002a9
|
gitea.pena/PenaSide/hlog v0.0.0-20241125221102-a54c29c002a9
|
||||||
gitea.pena/SQuiz/common v0.0.0-20250514124515-870e52266ca5
|
gitea.pena/SQuiz/common v0.0.0-20250601205720-77c1b6362226
|
||||||
github.com/caarlos0/env/v8 v8.0.0
|
github.com/caarlos0/env/v8 v8.0.0
|
||||||
github.com/go-redis/redis/v8 v8.11.5
|
github.com/go-redis/redis/v8 v8.11.5
|
||||||
github.com/go-resty/resty/v2 v2.16.5
|
github.com/go-resty/resty/v2 v2.16.5
|
||||||
|
17
go.sum
17
go.sum
@ -1,22 +1,13 @@
|
|||||||
gitea.pena/PenaSide/common v0.0.0-20250103085335-91ea31fee517 h1:EgBe8VcdPwmxbSzYLndncP+NmR73uYuXxkTeDlEttEE=
|
gitea.pena/PenaSide/common v0.0.0-20250421103113-7e4b3ae9e1e0 h1:+gvpAPo1+1WtCpA+QaCWNy4R9/cIERBBzrVSYrx7hNo=
|
||||||
gitea.pena/PenaSide/common v0.0.0-20250103085335-91ea31fee517/go.mod h1:91EuBCgcqgJ6mG36n2pds8sPwwfaJytLWOzY3h2YFKU=
|
gitea.pena/PenaSide/common v0.0.0-20250421103113-7e4b3ae9e1e0/go.mod h1:91EuBCgcqgJ6mG36n2pds8sPwwfaJytLWOzY3h2YFKU=
|
||||||
gitea.pena/PenaSide/customer v0.0.0-20250407185330-82e95e8da043 h1:a/89TC0bRdWRjS875EIE1c1ZPgmRcDaKMcQoUv+sg+I=
|
gitea.pena/PenaSide/customer v0.0.0-20250407185330-82e95e8da043 h1:a/89TC0bRdWRjS875EIE1c1ZPgmRcDaKMcQoUv+sg+I=
|
||||||
gitea.pena/PenaSide/customer v0.0.0-20250407185330-82e95e8da043/go.mod h1:DDg6CQDhU+aSSTv8R/LbkNGegdCx+Q++DcgPfE2LbZU=
|
gitea.pena/PenaSide/customer v0.0.0-20250407185330-82e95e8da043/go.mod h1:DDg6CQDhU+aSSTv8R/LbkNGegdCx+Q++DcgPfE2LbZU=
|
||||||
gitea.pena/PenaSide/hlog v0.0.0-20241125221102-a54c29c002a9 h1:tBkXWNIt8icmkMMnq8MA421RWkUy4OZh5P7C3q8uCu4=
|
gitea.pena/PenaSide/hlog v0.0.0-20241125221102-a54c29c002a9 h1:tBkXWNIt8icmkMMnq8MA421RWkUy4OZh5P7C3q8uCu4=
|
||||||
gitea.pena/PenaSide/hlog v0.0.0-20241125221102-a54c29c002a9/go.mod h1:sanhSL8aEsfcq21P+eItYiAnKAre+B67nGJmDfk2cf0=
|
gitea.pena/PenaSide/hlog v0.0.0-20241125221102-a54c29c002a9/go.mod h1:sanhSL8aEsfcq21P+eItYiAnKAre+B67nGJmDfk2cf0=
|
||||||
gitea.pena/PenaSide/linters-golang v0.0.0-20241119212350-2759fa93724a h1:UySqMgaOKNsR42Y6GQXoM2wn/waYNc9cakMUSvbEEAg=
|
|
||||||
gitea.pena/PenaSide/linters-golang v0.0.0-20241119212350-2759fa93724a/go.mod h1:gdd+vOT6up9STkEbxa2qESLIMZFjCmRbkcheFQCVgZU=
|
|
||||||
gitea.pena/PenaSide/linters-golang v0.0.0-20241207122018-933207374735 h1:jDVeUhGBTXBibmW5dmtJg2m2+z5z2Rf6J4G0LpjVoJ0=
|
|
||||||
gitea.pena/PenaSide/linters-golang v0.0.0-20241207122018-933207374735/go.mod h1:gdd+vOT6up9STkEbxa2qESLIMZFjCmRbkcheFQCVgZU=
|
|
||||||
gitea.pena/PenaSide/trashlog v0.0.0-20250222101337-a43552caae6f h1:KbZU49A8tGnqWZiDwerKx2LVT7LD69Y13bwHkuyIjrM=
|
|
||||||
gitea.pena/PenaSide/trashlog v0.0.0-20250222101337-a43552caae6f/go.mod h1:GRfWJerTUlgy82CiYAxE4tVYSVV54zEJJQy17Fx46E4=
|
|
||||||
gitea.pena/SQuiz/common v0.0.0-20250221135056-f98c45e04909 h1:iCiqaJ6a7rGESAEUgtVA9IqhVn0oKiwRk7bryTWPV5w=
|
|
||||||
gitea.pena/SQuiz/common v0.0.0-20250221135056-f98c45e04909/go.mod h1:rQRjqLlLyM71FZcvbM95Nv3ciq44F9DFtUHPZmDK3T8=
|
|
||||||
gitea.pena/SQuiz/common v0.0.0-20250514124515-870e52266ca5 h1:C+iCsGMSUJonOTNNk8wWYOfzZ0Jjw+2IQ5FaEGwRVT0=
|
gitea.pena/SQuiz/common v0.0.0-20250514124515-870e52266ca5 h1:C+iCsGMSUJonOTNNk8wWYOfzZ0Jjw+2IQ5FaEGwRVT0=
|
||||||
gitea.pena/SQuiz/common v0.0.0-20250514124515-870e52266ca5/go.mod h1:zCrUwDh0APpztKk6NUqTZv+zhjVbWpGBJiJ5z9dAH0U=
|
gitea.pena/SQuiz/common v0.0.0-20250514124515-870e52266ca5/go.mod h1:zCrUwDh0APpztKk6NUqTZv+zhjVbWpGBJiJ5z9dAH0U=
|
||||||
gitea.pena/SQuiz/common v0.0.0-20250519111841-b15aacb1ad58 h1:MJmBqdHoX0A6+gC/2d6veoU5vKgY5JAX9F+G7CK4z4A=
|
gitea.pena/SQuiz/common v0.0.0-20250601205720-77c1b6362226 h1:gozqNSI34OZn0ymLt1Hv3wb3zk+OzKpGYQnSpt6jJcA=
|
||||||
gitea.pena/SQuiz/common v0.0.0-20250519111841-b15aacb1ad58/go.mod h1:rQRjqLlLyM71FZcvbM95Nv3ciq44F9DFtUHPZmDK3T8=
|
gitea.pena/SQuiz/common v0.0.0-20250601205720-77c1b6362226/go.mod h1:zCrUwDh0APpztKk6NUqTZv+zhjVbWpGBJiJ5z9dAH0U=
|
||||||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
|
||||||
github.com/ClickHouse/clickhouse-go v1.5.4 h1:cKjXeYLNWVJIx2J1K6H2CqyRmfwVJVY1OV1coaaFcI0=
|
github.com/ClickHouse/clickhouse-go v1.5.4 h1:cKjXeYLNWVJIx2J1K6H2CqyRmfwVJVY1OV1coaaFcI0=
|
||||||
github.com/ClickHouse/clickhouse-go v1.5.4/go.mod h1:EaI/sW7Azgz9UATzd5ZdZHRUhHgv5+JMS9NSr2smCJI=
|
github.com/ClickHouse/clickhouse-go v1.5.4/go.mod h1:EaI/sW7Azgz9UATzd5ZdZHRUhHgv5+JMS9NSr2smCJI=
|
||||||
github.com/andybalholm/brotli v1.1.1 h1:PR2pgnyFznKEugtsUo0xLdDop5SKXd5Qf5ysW+7XdTA=
|
github.com/andybalholm/brotli v1.1.1 h1:PR2pgnyFznKEugtsUo0xLdDop5SKXd5Qf5ysW+7XdTA=
|
||||||
|
Loading…
Reference in New Issue
Block a user