diff --git a/.gitea/workflows/demo.yaml b/.gitea/workflows/demo.yaml deleted file mode 100644 index e942159..0000000 --- a/.gitea/workflows/demo.yaml +++ /dev/null @@ -1,19 +0,0 @@ -name: Gitea Actions Demo -run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 -on: [push] - -jobs: - Explore-Gitea-Actions: - runs-on: ubuntu-latest - steps: - - run: echo "🎉 The job was automatically and automagically triggered by a ${{ gitea.event_name }} event." - - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!" - - run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}." - - name: Check out repository code - uses: actions/checkout@v4 - - run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner." - - run: echo "🖥️ The workflow is now ready to test your code on the runner." - - name: List files in the repository - run: | - ls ${{ gitea.workspace }} - - run: echo "🍏 This job's status is ${{ job.status }}." diff --git a/.github/workflows/image_creation.yml b/.github/workflows/image_creation.yml new file mode 100644 index 0000000..2f68a5e --- /dev/null +++ b/.github/workflows/image_creation.yml @@ -0,0 +1,106 @@ +name: ${{ github.actor }} executed Build Push Prod +on: + push: + tags: + - 'v[0-9]+\.[0-9]+\.[0-9]+' +jobs: + build: + runs-on: ubuntu-latest + env: + TOKEN: ${{ secrets.TOKEN }} + USERNAME: ${{ vars.USERNAME }} + TAG_VERSION: ${{ github.ref_name }} + steps: + - name: echo repo dir + id: repo-url + run: | + echo "repourl=$(echo ${{ github.server_url }} | sed -e 's;https://;;')" >> $GITHUB_OUTPUT + + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Quemu + uses: docker/setup-qemu-action@v3 + + - name: Set Up BuildX + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker + uses: docker/login-action@v3 + with: + registry: https://git.maximotejeda.com + username: ${{ vars.USERNAME }} + password: ${{ secrets.PWD }} + + - name: calculate short sha + id: calculate-sha + run: | + echo "shortsha=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT + + - name: Build and push + uses: docker/build-push-action@v6 + with: + context: . + platforms: linux/amd64,linux/arm64 + push: true + tags: "${{ steps.repo-url.outputs.repourl }}/${{ github.repository }}:${{ github.ref_name }}" + build-args: | + version=${{ github.ref_name }} + SHORTSHA=${{ steps.calculate-sha.outputs.shortsha }} + + deploy: + runs-on: ubuntu-latest + needs: build + env: + TOKEN: ${{ secrets.TOKEN }} + BOT_TOKEN: ${{ secrets.BOT_TOKEN }} + TAG: ${{ github.ref_name }} + PASSWORD: ${{ secrets.PWD }} + USERNAME: ${{ vars.USERNAME }} + TAG_VERSION: ${{ github.ref_name }} + NATS_SERVICE_URL: "${{ vars.NATS_SERVICE_URL }}" + DOLLAR_SERVICE_URL: "${{ vars.DOLLAR_SERVICE_URL }}" + TGBUSER_SERVICE_URL: "${{ TGBUSER_SERVICE_URL }}" + ENV: "${{ vars.ENV }}" + steps: + - name: echo repo dir + id: repo-url + run: | + echo "repourl=$(echo ${{ github.server_url }} | sed -e 's;https://;;')" >> $GITHUB_OUTPUT + echo "repoName=$(echo ${{ github.repository }} | sed -e 's;${{ github.actor }}/;;')" >> $GITHUB_OUTPUT + echo "${{ github.repository }} | sed -e 's;${{ github.actor }}/;;')" + - name: Checkout code + uses: actions/checkout@v4 + + - name: install envsubst + run: | + apt update + apt install -y gettext-base + apt clean + + - name: create deployment files + env: + IMAGE: "${{ steps.repo-url.outputs.repourl }}/${{ github.repository }}:${{ github.ref_name }}" + REPONAME: "${{ steps.repo-url.outputs.repoName }}" + run: | + envsubst < k8s/deployment.yml.template > k8s/deployment.yml + - name: Download kubectl + run: curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" + + - name: install kubectl + run: sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl + + - name: insert kube config + run: | + mkdir ~/.kube + export IMAGE="$( echo ${{ github.server_url }} | sed -e 's;https://;;')/${{ github.repository }}:${{ github.ref_name }}" + echo "${{ secrets.KUBECONFIG }}" > ~/.kube/config + - name: check pod + run: kubectl apply -f k8s/deployment.yml + + - name: scale down deployment + continue-on-error: true + run: kubectl scale deployment ${{ steps.repo-url.outputs.repoName }} --replicas=0 + + - name: scale up deployment + run: kubectl scale deployment ${{ steps.repo-url.outputs.repoName }} --replicas=1 diff --git a/.github/workflows/test_project.yml b/.github/workflows/test_project.yml new file mode 100644 index 0000000..a26dd48 --- /dev/null +++ b/.github/workflows/test_project.yml @@ -0,0 +1,65 @@ +name: "dev test" +on: + push: + branches: + - master + - dev + - 'feature/**' + paths: + - '**.go' + - '**.yml' + - '**.yaml' +jobs: + test: + runs-on: ubuntu-latest + env: + TOKEN: ${{ secrets.TOKEN }} + USERNAME: ${{ vars.USERNAME }} + TAG_VERSION: ${{ github.ref_name }} + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Go + uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: test with go + run: go test -v ./... + + vulnCheck: + runs-on: ubuntu-latest + needs: test + env: + TOKEN: ${{ secrets.TOKEN }} + USERNAME: ${{ vars.USERNAME }} + TAG_VERSION: ${{ github.ref_name }} + steps: + - name: checkout Code + uses: actions/checkout@v4 + + - name: go vuln check + uses: golang/govulncheck-action@v1 + with: + go-version-file: 'go.mod' + go-package: ./... + + Ci-Lint: + runs-on: ubuntu-latest + needs: vulnCheck + env: + TOKEN: ${{ secrets.TOKEN }} + USERNAME: ${{ vars.USERNAME }} + TAG_VERSION: ${{ github.ref_name }} + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Go + uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + - name: CI lint Check + uses: golangci/golangci-lint-action@v6 + with: + only-new-issues: true diff --git a/Dockerfile b/Dockerfile index 2e67f74..009e6f3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,19 @@ -#FROM golang:latest as builder -#WORKDIR /app -#COPY . . -#RUN go mod download && go mod tidy -#RUN go build -o ./bin/us-dop-bot ./cmd/bot - -FROM debian:unstable-slim -ARG BINAME=us-dop-bot-linux-arm64-0.0.0_1 -RUN apt-get update -RUN apt-get install -y ca-certificates - -COPY ./bin/${BINAME} /app/us-dop-bot +FROM golang:alpine AS builder +ARG TARGETARCH +ARG version=not-set +ARG SHORTSHA=not-set WORKDIR /app -RUN echo "bin name ${BINAME}" -# RUN mv /app/${BINAME} /app/us-dop-bot -CMD ["/app/us-dop-bot"] +COPY . . +# https://stackoverflow.com/questions/70369368/check-architecture-in-dockerfile-to-get-amd-arm +RUN go build -o bin/us-dop-bot \ + -ldflags "-X main.Shortsha=${SHORTSHA} \ + -X main.Version=${version} \ + -X main.Aarch=${TARGETARCH}" ./cmd + +FROM alpine AS runner +COPY --from=builder /app/bin/us-dop-bot /usr/bin/ +WORKDIR /app +RUN apk --no-cache add --no-check-certificate ca-certificates \ + && update-ca-certificates +ENTRYPOINT /usr/bin/us-dop-bot diff --git a/cmd/bot/main.go b/cmd/bot/main.go index 1f22f62..e3c365a 100644 --- a/cmd/bot/main.go +++ b/cmd/bot/main.go @@ -9,12 +9,12 @@ import ( "syscall" tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5" - "github.com/maximotejeda/us_dop_bot/config" - "github.com/maximotejeda/us_dop_bot/internal/adapters/dolar" - "github.com/maximotejeda/us_dop_bot/internal/adapters/user" - "github.com/maximotejeda/us_dop_bot/internal/application/api" - "github.com/maximotejeda/us_dop_bot/internal/application/broadcaster" - "github.com/maximotejeda/us_dop_bot/internal/ports" + "git.maximotejeda.com/maximo/us-dop-bot/config" + "git.maximotejeda.com/maximo/us-dop-bot/internal/adapters/dolar" + "git.maximotejeda.com/maximo/us-dop-bot/internal/adapters/user" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/api" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/broadcaster" + "git.maximotejeda.com/maximo/us-dop-bot/internal/ports" "golang.org/x/sync/semaphore" "github.com/nats-io/nats.go" diff --git a/config/config.go b/config/config.go index 815590e..bd3ca4b 100644 --- a/config/config.go +++ b/config/config.go @@ -6,15 +6,11 @@ import ( ) func GetToken() string { - return getEnvVariable("TOKEN") -} - -func GetDBUSERURI() string { - return getEnvVariable("DBURIUSER") + return getEnvVariable("BOT_TOKEN") } func GetNatsURI() string { - return getEnvVariable("NATSURI") + return getEnvVariable("NATS_SERVICE_URL") } func GetDollarServiceURL() string { diff --git a/go.mod b/go.mod index 85a8302..e4e0922 100644 --- a/go.mod +++ b/go.mod @@ -1,24 +1,26 @@ -module github.com/maximotejeda/us_dop_bot +module git.maximotejeda.com/maximo/us-dop-bot -go 1.22.0 +go 1.23 + +toolchain go1.23.2 require ( + git.maximotejeda.com/maximo/dolar v0.0.1 + git.maximotejeda.com/maximo/tgb-user v0.0.4 github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1 - github.com/maximotejeda/msvc-proto/golang/dolar v0.0.0-8 - github.com/maximotejeda/msvc-proto/golang/tgbuser v0.0.0-11 - github.com/nats-io/nats.go v1.34.1 - golang.org/x/sync v0.6.0 - golang.org/x/text v0.14.0 - google.golang.org/grpc v1.63.2 + github.com/nats-io/nats.go v1.37.0 + golang.org/x/sync v0.10.0 + golang.org/x/text v0.21.0 + google.golang.org/grpc v1.68.1 ) require ( - github.com/klauspost/compress v1.17.2 // indirect - github.com/nats-io/nkeys v0.4.7 // indirect + github.com/klauspost/compress v1.17.11 // indirect + github.com/nats-io/nkeys v0.4.8 // indirect github.com/nats-io/nuid v1.0.1 // indirect - golang.org/x/crypto v0.22.0 // indirect - golang.org/x/net v0.24.0 // indirect - golang.org/x/sys v0.19.0 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240415180920-8c6c420018be // indirect - google.golang.org/protobuf v1.33.0 // indirect + golang.org/x/crypto v0.30.0 // indirect + golang.org/x/net v0.32.0 // indirect + golang.org/x/sys v0.28.0 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20241202173237-19429a94021a // indirect + google.golang.org/protobuf v1.35.2 // indirect ) diff --git a/go.sum b/go.sum index 36699fc..7719fa3 100644 --- a/go.sum +++ b/go.sum @@ -1,32 +1,54 @@ +git.maximotejeda.com/maximo/dolar v0.0.1 h1:pRO0qHRHzKlTsZtXRM4QT8VjPsS2AwOduOKIISWbXTU= +git.maximotejeda.com/maximo/dolar v0.0.1/go.mod h1:I3q+2GDNEwMSfSLg/7g5lkI+EWPR/90JvMO94KoFKBs= +git.maximotejeda.com/maximo/tgb-user v0.0.4 h1:TJQl+J2OEAstHUqlzDdYQ960QLgp+5Q/kGenEdki2kA= +git.maximotejeda.com/maximo/tgb-user v0.0.4/go.mod h1:7KpTUAnwap6cp5pHRKgJygxrN3rftAdTkpCG2zJIpYI= github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1 h1:wG8n/XJQ07TmjbITcGiUaOtXxdrINDz1b0J1w0SzqDc= github.com/go-telegram-bot-api/telegram-bot-api/v5 v5.5.1/go.mod h1:A2S0CWkNylc2phvKXWBBdD3K0iGnDBGbzRpISP2zBl8= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/klauspost/compress v1.17.2 h1:RlWWUY/Dr4fL8qk9YG7DTZ7PDgME2V4csBXA8L/ixi4= github.com/klauspost/compress v1.17.2/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE= -github.com/maximotejeda/msvc-proto/golang/dolar v0.0.0-8 h1:ldphxrQiAhmctWBMCaNShDphZfHmOeKuoSWwCxV62Ho= -github.com/maximotejeda/msvc-proto/golang/dolar v0.0.0-8/go.mod h1:bAs0mlC1Vyn/BkHONL2Ik8ox9px9s9bhbJWgUQFMMWo= -github.com/maximotejeda/msvc-proto/golang/tgbuser v0.0.0-11 h1:4ePlM4kOlvqygH5o6K039DRJSRBEsJ9HbswrbaiA8+U= -github.com/maximotejeda/msvc-proto/golang/tgbuser v0.0.0-11/go.mod h1:UeWAtY6XdFuWJwdJPAK++BLE50F6KPotvX7F5DYgCls= +github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc= +github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0= github.com/nats-io/nats.go v1.34.1 h1:syWey5xaNHZgicYBemv0nohUPPmaLteiBEUT6Q5+F/4= github.com/nats-io/nats.go v1.34.1/go.mod h1:Ubdu4Nh9exXdSz0RVWRFBbRfrbSxOYd26oF0wkWclB8= +github.com/nats-io/nats.go v1.37.0 h1:07rauXbVnnJvv1gfIyghFEo6lUcYRY0WXc3x7x0vUxE= +github.com/nats-io/nats.go v1.37.0/go.mod h1:Ubdu4Nh9exXdSz0RVWRFBbRfrbSxOYd26oF0wkWclB8= github.com/nats-io/nkeys v0.4.7 h1:RwNJbbIdYCoClSDNY7QVKZlyb/wfT6ugvFCiKy6vDvI= github.com/nats-io/nkeys v0.4.7/go.mod h1:kqXRgRDPlGy7nGaEDMuYzmiJCIAAWDK0IMBtDmGD0nc= +github.com/nats-io/nkeys v0.4.8 h1:+wee30071y3vCZAYRsnrmIPaOe47A/SkK/UBDPdIV70= +github.com/nats-io/nkeys v0.4.8/go.mod h1:kqXRgRDPlGy7nGaEDMuYzmiJCIAAWDK0IMBtDmGD0nc= github.com/nats-io/nuid v1.0.1 h1:5iA8DT8V7q8WK2EScv2padNa/rTESc1KdnPw4TC2paw= github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c= golang.org/x/crypto v0.22.0 h1:g1v0xeRhjcugydODzvb3mEM9SQ0HGp9s/nh3COQ/C30= golang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M= +golang.org/x/crypto v0.30.0 h1:RwoQn3GkWiMkzlX562cLB7OxWvjH1L8xutO2WoJcRoY= +golang.org/x/crypto v0.30.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk= golang.org/x/net v0.24.0 h1:1PcaxkF854Fu3+lvBIx5SYn9wRlBzzcnHZSiaFFAb0w= golang.org/x/net v0.24.0/go.mod h1:2Q7sJY5mzlzWjKtYUEXSlBWCdyaioyXzRB2RtU8KVE8= +golang.org/x/net v0.32.0 h1:ZqPmj8Kzc+Y6e0+skZsuACbx+wzMgo5MQsJh9Qd6aYI= +golang.org/x/net v0.32.0/go.mod h1:CwU0IoeOlnQQWJ6ioyFrfRuomB8GKF6KbYXZVyeXNfs= golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ= golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ= +golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.19.0 h1:q5f1RH2jigJ1MoAWp2KTp3gm5zAGFUTarQZ5U386+4o= golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= +golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240415180920-8c6c420018be h1:LG9vZxsWGOmUKieR8wPAUR3u3MpnYFQZROPIMaXh7/A= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240415180920-8c6c420018be/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= +golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo= +golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240429193739-8cf5692501f6 h1:DujSIu+2tC9Ht0aPNA7jgj23Iq8Ewi5sgkQ++wdvonE= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240429193739-8cf5692501f6/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241202173237-19429a94021a h1:hgh8P4EuoxpsuKMXX/To36nOFD7vixReXgn8lPGnt+o= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241202173237-19429a94021a/go.mod h1:5uTbfoYQed2U9p3KIj2/Zzm02PYhndfdmML0qC3q3FU= google.golang.org/grpc v1.63.2 h1:MUeiw1B2maTVZthpU5xvASfTh3LDbxHd6IJ6QQVU+xM= google.golang.org/grpc v1.63.2/go.mod h1:WAX/8DgncnokcFUldAxq7GeB5DXHDbMF+lLvDomNkRA= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/grpc v1.68.1 h1:oI5oTa11+ng8r8XMMN7jAOmWfPZWbYpCFaMUTACxkM0= +google.golang.org/grpc v1.68.1/go.mod h1:+q1XYFJjShcqn0QZHvCyeR4CXPA+llXIeUIfIe00waw= +google.golang.org/protobuf v1.34.0 h1:Qo/qEd2RZPCf2nKuorzksSknv0d3ERwp1vFG38gSmH4= +google.golang.org/protobuf v1.34.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.35.2 h1:8Ar7bF+apOIoThw1EdZl0p1oWvMqTHmpA2fRTyZO8io= +google.golang.org/protobuf v1.35.2/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= diff --git a/internal/adapters/dolar/dolar.go b/internal/adapters/dolar/dolar.go index 542f71d..5bad7de 100644 --- a/internal/adapters/dolar/dolar.go +++ b/internal/adapters/dolar/dolar.go @@ -3,8 +3,8 @@ package dolar import ( "context" - "github.com/maximotejeda/msvc-proto/golang/dolar" - "github.com/maximotejeda/us_dop_bot/internal/application/domain" + "git.maximotejeda.com/maximo/dolar/proto/golang/dolar" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/domain" "google.golang.org/grpc" ) diff --git a/internal/adapters/user/user.go b/internal/adapters/user/user.go index dcc3fb7..34d7477 100644 --- a/internal/adapters/user/user.go +++ b/internal/adapters/user/user.go @@ -5,8 +5,8 @@ import ( "log/slog" tgb "github.com/go-telegram-bot-api/telegram-bot-api/v5" - "github.com/maximotejeda/msvc-proto/golang/tgbuser" - "github.com/maximotejeda/us_dop_bot/internal/application/domain" + "git.maximotejeda.com/maximo/tgb-user/proto/golang/tgbuser" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/domain" "google.golang.org/grpc" ) diff --git a/internal/application/api/api.go b/internal/application/api/api.go index afcc334..35fdab1 100644 --- a/internal/application/api/api.go +++ b/internal/application/api/api.go @@ -6,10 +6,10 @@ import ( "strings" tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5" - "github.com/maximotejeda/us_dop_bot/internal/application/command" - "github.com/maximotejeda/us_dop_bot/internal/application/message" - "github.com/maximotejeda/us_dop_bot/internal/application/query" - "github.com/maximotejeda/us_dop_bot/internal/ports" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/command" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/message" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/query" + "git.maximotejeda.com/maximo/us-dop-bot/internal/ports" ) type api struct { diff --git a/internal/application/broadcaster/broadcaster.go b/internal/application/broadcaster/broadcaster.go index f2dc845..da1a465 100644 --- a/internal/application/broadcaster/broadcaster.go +++ b/internal/application/broadcaster/broadcaster.go @@ -9,9 +9,9 @@ import ( "time" tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5" - "github.com/maximotejeda/us_dop_bot/internal/application/domain" - "github.com/maximotejeda/us_dop_bot/internal/application/helpers" - "github.com/maximotejeda/us_dop_bot/internal/ports" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/domain" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/helpers" + "git.maximotejeda.com/maximo/us-dop-bot/internal/ports" ) type Broadcaster struct { diff --git a/internal/application/command/command.go b/internal/application/command/command.go index bfb4882..b37f60f 100644 --- a/internal/application/command/command.go +++ b/internal/application/command/command.go @@ -7,8 +7,8 @@ import ( "sync" tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5" - "github.com/maximotejeda/us_dop_bot/internal/application/helpers" - "github.com/maximotejeda/us_dop_bot/internal/ports" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/helpers" + "git.maximotejeda.com/maximo/us-dop-bot/internal/ports" ) var commandPool *sync.Pool diff --git a/internal/application/message/message.go b/internal/application/message/message.go index c74d5c6..6032c1f 100644 --- a/internal/application/message/message.go +++ b/internal/application/message/message.go @@ -9,9 +9,9 @@ import ( "sync" tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5" - "github.com/maximotejeda/us_dop_bot/internal/application/domain" - "github.com/maximotejeda/us_dop_bot/internal/application/static" - "github.com/maximotejeda/us_dop_bot/internal/ports" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/domain" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/static" + "git.maximotejeda.com/maximo/us-dop-bot/internal/ports" ) var ChatPool *sync.Pool diff --git a/internal/application/query/query.go b/internal/application/query/query.go index d23ac9a..d97c0b6 100644 --- a/internal/application/query/query.go +++ b/internal/application/query/query.go @@ -9,9 +9,9 @@ import ( "time" tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5" - "github.com/maximotejeda/us_dop_bot/internal/application/domain" - "github.com/maximotejeda/us_dop_bot/internal/application/helpers" - "github.com/maximotejeda/us_dop_bot/internal/ports" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/domain" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/helpers" + "git.maximotejeda.com/maximo/us-dop-bot/internal/ports" ) var chatPool *sync.Pool diff --git a/internal/ports/dolar.go b/internal/ports/dolar.go index 3da99b7..1a64fc6 100644 --- a/internal/ports/dolar.go +++ b/internal/ports/dolar.go @@ -1,6 +1,6 @@ package ports -import "github.com/maximotejeda/us_dop_bot/internal/application/domain" +import "git.maximotejeda.com/maximo/us-dop-bot/internal/application/domain" type DolarService interface { GetLatest(name string) (*domain.History, error) diff --git a/internal/ports/user.go b/internal/ports/user.go index 20e33db..c5bb53f 100644 --- a/internal/ports/user.go +++ b/internal/ports/user.go @@ -2,7 +2,7 @@ package ports import ( tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5" - "github.com/maximotejeda/us_dop_bot/internal/application/domain" + "git.maximotejeda.com/maximo/us-dop-bot/internal/application/domain" ) type UserService interface { diff --git a/k8s/deployment.yml.template b/k8s/deployment.yml.template index b6e4ea2..4d0ba3f 100644 --- a/k8s/deployment.yml.template +++ b/k8s/deployment.yml.template @@ -1,33 +1,31 @@ apiVersion: apps/v1 kind: Deployment metadata: - name: us-dop-bot + name: $REPONAME labels: - app: us-dop-bot + app: $REPONAME spec: replicas: 1 selector: matchLabels: - app: us-dop-bot + app: $REPONAME template: metadata: labels: - app: us-dop-bot - name: us-dop-bot + app: $REPONAME + name: $REPONAME spec: containers: - - name: us-dop-bot - image: localhost:32000/us-dop-bot:latest + - name: $REPONAME + image: $IMAGE env: - - name: DBURI - value: $DBURI - - name: NATSURI - value: "nats://nats-svc:4222" - - name: TOKEN - value: "$PRODTOKEN" + - name: NATS_SERVICE_URL + value: "$NATS_SERVICE_URL" + - name: BOT_TOKEN + value: "$BOT_TOKEN" - name: DOLLAR_SERVICE_URL - value: "dolar-grpc-svc:80" + value: "$DOLLAR_SERVICE_URL" - name: TGBUSER_SERVICE_URL - value: "tgbuser-grpc-svc:80" + value: "$TGBUSER_SERVICE_URL" - name: ENV - value: "production" + value: "$ENV"