chore: release prep
This commit is contained in:
parent
d51cc3215e
commit
c735850306
|
@ -17,3 +17,4 @@ skaffold.yml
|
|||
.woodpecker
|
||||
.kpt-pipeline
|
||||
tmp
|
||||
dist
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
# Visit https://goreleaser.com for documentation on how to customize this
|
||||
# behavior.
|
||||
before:
|
||||
hooks: []
|
||||
builds:
|
||||
- env:
|
||||
- CGO_ENABLED=0
|
||||
mod_timestamp: "{{ .CommitTimestamp }}"
|
||||
flags:
|
||||
- -trimpath
|
||||
ldflags:
|
||||
- -X main.version={{.Version}}
|
||||
goos:
|
||||
- linux
|
||||
goarch:
|
||||
- amd64
|
||||
- arm64
|
||||
binary: "{{ .ProjectName }}_v{{ .Version }}"
|
||||
archives:
|
||||
- format: binary
|
||||
name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
|
||||
checksum:
|
||||
name_template: "{{ .ProjectName }}_{{ .Version }}_SHA256SUMS"
|
||||
algorithm: sha256
|
||||
changelog:
|
||||
skip: false
|
|
@ -21,21 +21,17 @@ steps:
|
|||
notify:
|
||||
image: deblan/woodpecker-email
|
||||
settings:
|
||||
dsn:
|
||||
from_secret: email_dsn
|
||||
from:
|
||||
from_secret: email_from
|
||||
from.name: Woodpecker
|
||||
host:
|
||||
from_secret: email_host
|
||||
username:
|
||||
from_secret: email_username
|
||||
password:
|
||||
from_secret: email_password
|
||||
address:
|
||||
from_secret: email_from_address
|
||||
name: Woodpecker
|
||||
recipients:
|
||||
- notifications@dwysokinski.me
|
||||
- notifications@twhelp.app
|
||||
recipients_only: true
|
||||
subject:
|
||||
"[govulncheck - {{ build.status }}] {{ repo.owner }}/{{ repo.name }}
|
||||
({{ build.branch }} - {{ truncate build.commit 8 }})"
|
||||
"[govulncheck - {{ pipeline.status }}] {{ repo.full_name }} ({{ commit.branch }} - {{ commit.sha[0:8] }}"
|
||||
when:
|
||||
status: [success, failure]
|
||||
event: cron
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
when:
|
||||
event: tag
|
||||
|
||||
variables:
|
||||
- &go_image 'golang:1.22'
|
||||
- &goreleaser_image 'goreleaser/goreleaser'
|
||||
- &docker_buildx_image 'woodpeckerci/plugin-docker-buildx'
|
||||
|
||||
steps:
|
||||
generate:
|
||||
image: *go_image
|
||||
pull: true
|
||||
commands:
|
||||
- go mod vendor
|
||||
- make generate
|
||||
|
||||
release:
|
||||
image: *goreleaser_image
|
||||
depends_on:
|
||||
- generate
|
||||
commands:
|
||||
- goreleaser release --clean
|
||||
secrets:
|
||||
- gitea_token
|
||||
|
||||
docker:
|
||||
image: *docker_buildx_image
|
||||
depends_on:
|
||||
- release
|
||||
settings:
|
||||
platforms: linux/amd64,linux/arm64
|
||||
repo: gitea.dwysokinski.me/twhelp/core
|
||||
registry: gitea.dwysokinski.me
|
||||
dockerfile: ./build/docker/twhelp/prod/Dockerfile
|
||||
auto_tag: true
|
||||
build_args:
|
||||
- CI_COMMIT_TAG=${CI_COMMIT_TAG}
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
|
@ -15,14 +15,14 @@
|
|||
·
|
||||
<a href="https://gitea.dwysokinski.me/twhelp/dcbot">Discord Bot</a>
|
||||
·
|
||||
<a href="mailto:contact@tribalwarshelp.com">Report Bug</a>
|
||||
<a href="mailto:contact@twhelp.app">Report Bug</a>
|
||||
·
|
||||
<a href="mailto:contact@tribalwarshelp.com">Request Feature</a>
|
||||
<a href="mailto:contact@twhelp.app">Request Feature</a>
|
||||
</p>
|
||||
|
||||
## Contributing
|
||||
|
||||
If you would like to contribute to the software, please contact me via [email](mailto:contact@tribalwarshelp.com).
|
||||
If you would like to contribute to the software, please contact me via [email](mailto:contact@twhelp.app).
|
||||
|
||||
## License
|
||||
|
||||
|
|
|
@ -1,21 +1,11 @@
|
|||
FROM golang:1.22.1-alpine3.19 AS builder
|
||||
FROM --platform=$BUILDPLATFORM alpine:3.19
|
||||
LABEL maintainer="contact@twhelp.app"
|
||||
|
||||
WORKDIR /twhelp
|
||||
ARG TARGETOS
|
||||
ARG TARGETARCH
|
||||
|
||||
COPY go.mod go.sum ./
|
||||
RUN go mod download && apk --no-cache add make
|
||||
|
||||
COPY . .
|
||||
RUN make generate
|
||||
ARG CI_COMMIT_TAG="development"
|
||||
RUN CGO_ENABLED=0 go build -ldflags "-X main.version=${CI_COMMIT_TAG##v}" -trimpath -o twhelp ./cmd/twhelp
|
||||
|
||||
######## Start a new stage from scratch #######
|
||||
FROM alpine:3.19
|
||||
|
||||
RUN apk --no-cache add ca-certificates tzdata
|
||||
|
||||
COPY --from=builder /twhelp/twhelp /usr/bin/
|
||||
RUN apk --no-cache add ca-certificates tzdata wget
|
||||
RUN wget -O /usr/bin/twhelp https://gitea.dwysokinski.me/twhelp/core/releases/download/${CI_COMMIT_TAG}/core_${CI_COMMIT_TAG##v}_${TARGETOS}_${TARGETARCH}
|
||||
|
||||
EXPOSE 9234/tcp
|
||||
|
||||
|
|
|
@ -41,8 +41,8 @@ spec:
|
|||
value: "true"
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
cpu: 20m
|
||||
memory: 300Mi
|
||||
limits:
|
||||
cpu: 200m
|
||||
memory: 300Mi
|
||||
|
|
|
@ -43,8 +43,8 @@ spec:
|
|||
periodSeconds: 10
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
cpu: 20m
|
||||
memory: 300Mi
|
||||
limits:
|
||||
cpu: 300m
|
||||
memory: 300Mi
|
||||
|
|
|
@ -38,7 +38,7 @@ spec:
|
|||
key: rabbitmq-connection-string
|
||||
resources:
|
||||
requests:
|
||||
cpu: 50m
|
||||
cpu: 20m
|
||||
memory: 64Mi
|
||||
limits:
|
||||
cpu: 100m
|
||||
|
@ -84,7 +84,7 @@ spec:
|
|||
key: rabbitmq-connection-string
|
||||
resources:
|
||||
requests:
|
||||
cpu: 50m
|
||||
cpu: 20m
|
||||
memory: 64Mi
|
||||
limits:
|
||||
cpu: 100m
|
||||
|
@ -130,7 +130,7 @@ spec:
|
|||
key: rabbitmq-connection-string
|
||||
resources:
|
||||
requests:
|
||||
cpu: 50m
|
||||
cpu: 20m
|
||||
memory: 64Mi
|
||||
limits:
|
||||
cpu: 100m
|
||||
|
@ -176,7 +176,7 @@ spec:
|
|||
key: rabbitmq-connection-string
|
||||
resources:
|
||||
requests:
|
||||
cpu: 50m
|
||||
cpu: 20m
|
||||
memory: 64Mi
|
||||
limits:
|
||||
cpu: 100m
|
||||
|
@ -211,8 +211,8 @@ spec:
|
|||
value: 60s
|
||||
resources:
|
||||
requests:
|
||||
cpu: 50m
|
||||
memory: 64Mi
|
||||
cpu: 20m
|
||||
memory: 128Mi
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 128Mi
|
||||
|
|
|
@ -43,8 +43,8 @@ spec:
|
|||
periodSeconds: 10
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
cpu: 20m
|
||||
memory: 300Mi
|
||||
limits:
|
||||
cpu: 300m
|
||||
memory: 300Mi
|
||||
|
|
|
@ -43,8 +43,8 @@ spec:
|
|||
periodSeconds: 10
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
cpu: 20m
|
||||
memory: 150Mi
|
||||
limits:
|
||||
cpu: 300m
|
||||
memory: 300Mi
|
||||
cpu: 150m
|
||||
memory: 150Mi
|
||||
|
|
|
@ -43,8 +43,8 @@ spec:
|
|||
periodSeconds: 10
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
cpu: 20m
|
||||
memory: 300Mi
|
||||
limits:
|
||||
cpu: 300m
|
||||
memory: 300Mi
|
||||
|
|
|
@ -43,8 +43,8 @@ spec:
|
|||
periodSeconds: 10
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
cpu: 20m
|
||||
memory: 300Mi
|
||||
limits:
|
||||
cpu: 300m
|
||||
memory: 300Mi
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: twhelp-api-v2-deployment
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: twhelp-api-v2
|
||||
image: twhelp
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "10"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "3"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
- name: AUTO_MAX_PROCS
|
||||
value: "true"
|
|
@ -0,0 +1,32 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: twhelp-ennoblement-consumer-deployment
|
||||
spec:
|
||||
replicas: 2
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: twhelp-ennoblement-consumer
|
||||
image: twhelp
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "3"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
- name: AUTO_MAX_PROCS
|
||||
value: "true"
|
|
@ -0,0 +1,31 @@
|
|||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: twhelp-api-v2-ingress
|
||||
annotations:
|
||||
traefik.ingress.kubernetes.io/router.entrypoints: web
|
||||
traefik.ingress.kubernetes.io/router.tls: "false"
|
||||
traefik.ingress.kubernetes.io/router.middlewares:
|
||||
kube-system-cors-twhelp@kubernetescrd,kube-system-compress@kubernetescrd,kube-system-ratelimit-twhelp@kubernetescrd
|
||||
spec:
|
||||
rules:
|
||||
- host: tribalwarshelp.com
|
||||
http:
|
||||
paths:
|
||||
- path: /api/v2
|
||||
pathType: Prefix
|
||||
backend:
|
||||
service:
|
||||
name: twhelp-api-v2-service
|
||||
port:
|
||||
number: 9234
|
||||
- host: twhelp.app
|
||||
http:
|
||||
paths:
|
||||
- path: /api/v2
|
||||
pathType: Prefix
|
||||
backend:
|
||||
service:
|
||||
name: twhelp-api-v2-service
|
||||
port:
|
||||
number: 9234
|
|
@ -0,0 +1,163 @@
|
|||
apiVersion: batch/v1
|
||||
kind: CronJob
|
||||
metadata:
|
||||
name: twhelp-job-sync-data
|
||||
spec:
|
||||
jobTemplate:
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
restartPolicy: Never
|
||||
containers:
|
||||
- name: twhelp-job-sync-data
|
||||
image: twhelp
|
||||
args: [job, sync, data]
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "1"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: CronJob
|
||||
metadata:
|
||||
name: twhelp-job-sync-ennoblements
|
||||
spec:
|
||||
jobTemplate:
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
restartPolicy: Never
|
||||
containers:
|
||||
- name: twhelp-job-sync-ennoblements
|
||||
image: twhelp
|
||||
args: [job, sync, ennoblements]
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "1"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: CronJob
|
||||
metadata:
|
||||
name: twhelp-job-create-snapshots
|
||||
spec:
|
||||
jobTemplate:
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
restartPolicy: Never
|
||||
containers:
|
||||
- name: twhelp-job-create-snapshots
|
||||
image: twhelp
|
||||
args: [job, create, snapshots]
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "1"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: CronJob
|
||||
metadata:
|
||||
name: twhelp-job-cleanup
|
||||
spec:
|
||||
jobTemplate:
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
restartPolicy: Never
|
||||
containers:
|
||||
- name: twhelp-job-cleanup
|
||||
image: twhelp
|
||||
args: [job, cleanup]
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "1"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: twhelp-migrations-job
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: twhelp-migrations
|
||||
image: twhelp
|
||||
args: [db, migrate]
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "1"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: DB_READ_TIMEOUT
|
||||
value: 60s
|
|
@ -0,0 +1,14 @@
|
|||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
namespace: twhelp
|
||||
resources:
|
||||
- ../../base
|
||||
- ingress.yml
|
||||
patchesStrategicMerge:
|
||||
- api.yml
|
||||
- ennoblement-consumer.yml
|
||||
- jobs.yml
|
||||
- player-consumer.yml
|
||||
- server-consumer.yml
|
||||
- tribe-consumer.yml
|
||||
- village-consumer.yml
|
|
@ -0,0 +1,31 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: twhelp-player-consumer-deployment
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: twhelp-player-consumer
|
||||
image: twhelp
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "3"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
- name: AUTO_MAX_PROCS
|
||||
value: "true"
|
|
@ -0,0 +1,31 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: twhelp-server-consumer-deployment
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: twhelp-server-consumer
|
||||
image: twhelp
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "3"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
- name: AUTO_MAX_PROCS
|
||||
value: "true"
|
|
@ -0,0 +1,31 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: twhelp-tribe-consumer-deployment
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: twhelp-tribe-consumer
|
||||
image: twhelp
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "3"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
- name: AUTO_MAX_PROCS
|
||||
value: "true"
|
|
@ -0,0 +1,32 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: twhelp-village-consumer-deployment
|
||||
spec:
|
||||
replicas: 2
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: twhelp-village-consumer
|
||||
image: twhelp
|
||||
env:
|
||||
- name: APP_MODE
|
||||
value: production
|
||||
- name: LOG_LEVEL
|
||||
value: info
|
||||
- name: DB_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: db-connection-string
|
||||
- name: DB_MAX_OPEN_CONNS
|
||||
value: "3"
|
||||
- name: DB_MAX_IDLE_CONNS
|
||||
value: "1"
|
||||
- name: RABBITMQ_CONNECTION_STRING
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: twhelp-secret
|
||||
key: rabbitmq-connection-string
|
||||
- name: AUTO_MAX_PROCS
|
||||
value: "true"
|
Loading…
Reference in New Issue