Compare commits
10 Commits
5e66111182
...
f68533fbef
Author | SHA1 | Date | |
---|---|---|---|
f68533fbef | |||
59bc677f0d | |||
![]() |
b51bd5b03e | ||
![]() |
ed9c96ba9e | ||
![]() |
729b16a6fb | ||
![]() |
83556b2261 | ||
![]() |
84b70a07b4 | ||
![]() |
4b8950242a | ||
![]() |
5be090e4bc | ||
![]() |
903a596996 |
@ -7,7 +7,7 @@ services:
|
||||
image: mathwave/sprint-repo:b-jokes-nginx
|
||||
networks:
|
||||
- b-jokes-net
|
||||
- b-jokes-nginx
|
||||
- common-infra-nginx
|
||||
deploy:
|
||||
mode: replicated
|
||||
restart_policy:
|
||||
@ -49,5 +49,5 @@ services:
|
||||
networks:
|
||||
b-jokes-net:
|
||||
driver: overlay
|
||||
b-jokes-nginx:
|
||||
external: true
|
||||
common-infra-nginx:
|
||||
external: true
|
@ -7,11 +7,15 @@ services:
|
||||
image: mathwave/sprint-repo:b-jokes-nginx
|
||||
networks:
|
||||
- b-jokes-net
|
||||
- b-jokes-nginx
|
||||
- common-infra-nginx
|
||||
deploy:
|
||||
mode: replicated
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == worker
|
||||
- node.labels.zone == ru
|
||||
update_config:
|
||||
parallelism: 1
|
||||
order: start-first
|
||||
@ -23,12 +27,16 @@ services:
|
||||
environment:
|
||||
MONGO_HOST: "mongo.sprinthub.ru"
|
||||
MONGO_PASSWORD: $MONGO_PASSWORD_PROD
|
||||
DEBUG: false
|
||||
DEBUG: "false"
|
||||
command: api
|
||||
deploy:
|
||||
mode: replicated
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == worker
|
||||
- node.labels.zone == ru
|
||||
update_config:
|
||||
parallelism: 1
|
||||
order: start-first
|
||||
@ -38,12 +46,16 @@ services:
|
||||
environment:
|
||||
MONGO_HOST: "mongo.sprinthub.ru"
|
||||
MONGO_PASSWORD: $MONGO_PASSWORD_PROD
|
||||
DEBUG: false
|
||||
DEBUG: "false"
|
||||
command: poll
|
||||
deploy:
|
||||
mode: replicated
|
||||
restart_policy:
|
||||
condition: any
|
||||
placement:
|
||||
constraints:
|
||||
- node.role == worker
|
||||
- node.labels.zone == ru
|
||||
update_config:
|
||||
parallelism: 1
|
||||
order: start-first
|
||||
@ -51,5 +63,5 @@ services:
|
||||
networks:
|
||||
b-jokes-net:
|
||||
driver: overlay
|
||||
b-jokes-nginx:
|
||||
common-infra-nginx:
|
||||
external: true
|
||||
|
47
.gitea/workflows/deploy-dev.yaml
Normal file
47
.gitea/workflows/deploy-dev.yaml
Normal file
@ -0,0 +1,47 @@
|
||||
name: Deploy Dev
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- dev
|
||||
types: [closed]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build
|
||||
runs-on: [ dev ]
|
||||
steps:
|
||||
- name: login
|
||||
run: docker login -u mathwave -p ${{ secrets.DOCKERHUB_PASSWORD }}
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: dev
|
||||
- name: build
|
||||
run: docker build -t mathwave/sprint-repo:b-jokes .
|
||||
- name: build-nginx
|
||||
run: docker build -t mathwave/sprint-repo:b-jokes-nginx nginx
|
||||
push:
|
||||
name: Push
|
||||
runs-on: [ dev ]
|
||||
needs: build
|
||||
steps:
|
||||
- name: push
|
||||
run: docker push mathwave/sprint-repo:b-jokes
|
||||
- name: push-nginx
|
||||
run: docker push mathwave/sprint-repo:b-jokes-nginx
|
||||
deploy-dev:
|
||||
name: Deploy dev
|
||||
runs-on: [dev]
|
||||
needs: push
|
||||
steps:
|
||||
- name: login
|
||||
run: docker login -u mathwave -p ${{ secrets.DOCKERHUB_PASSWORD }}
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: dev
|
||||
- name: deploy
|
||||
env:
|
||||
MONGO_PASSWORD_DEV: ${{ secrets.MONGO_PASSWORD_DEV }}
|
||||
run: docker stack deploy --with-registry-auth -c ./.deploy/deploy-dev.yaml b-jokes
|
43
.gitea/workflows/deploy-prod.yaml
Normal file
43
.gitea/workflows/deploy-prod.yaml
Normal file
@ -0,0 +1,43 @@
|
||||
name: Deploy Prod
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- prod
|
||||
types: [closed]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build
|
||||
runs-on: [ dev ]
|
||||
steps:
|
||||
- name: login
|
||||
run: docker login -u mathwave -p ${{ secrets.DOCKERHUB_PASSWORD }}
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: prod
|
||||
- name: build
|
||||
run: docker build -t mathwave/sprint-repo:b-jokes .
|
||||
push:
|
||||
name: Push
|
||||
runs-on: [ dev ]
|
||||
needs: build
|
||||
steps:
|
||||
- name: push
|
||||
run: docker push mathwave/sprint-repo:b-jokes
|
||||
deploy-prod:
|
||||
name: Deploy prod
|
||||
runs-on: [prod]
|
||||
needs: push
|
||||
steps:
|
||||
- name: login
|
||||
run: docker login -u mathwave -p ${{ secrets.DOCKERHUB_PASSWORD }}
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: prod
|
||||
- name: deploy
|
||||
env:
|
||||
MONGO_PASSWORD_PROD: ${{ secrets.MONGO_PASSWORD_PROD }}
|
||||
run: docker stack deploy --with-registry-auth -c ./.deploy/deploy-prod.yaml b-jokes
|
@ -18,7 +18,6 @@ build:
|
||||
.deploy:
|
||||
before_script:
|
||||
- docker login -u mathwave -p $DOCKERHUB_PASSWORD
|
||||
- docker network create -d overlay --attachable b-jokes-nginx || true
|
||||
|
||||
deploy-dev:
|
||||
extends:
|
||||
|
7
main.py
7
main.py
@ -1,5 +1,6 @@
|
||||
from flask import Flask, request, make_response
|
||||
|
||||
import settings
|
||||
from helpers.events import events
|
||||
from processor import Processor
|
||||
|
||||
@ -32,4 +33,8 @@ def run():
|
||||
def today():
|
||||
return events.today_json()
|
||||
|
||||
app.run(host="0.0.0.0", port=8000)
|
||||
@app.route('/check_sentry')
|
||||
def check_sentry():
|
||||
a = 1 / 0
|
||||
|
||||
app.run(host="0.0.0.0", port=8000, debug=settings.DEBUG)
|
||||
|
@ -1,3 +1,4 @@
|
||||
blinker==1.5
|
||||
certifi==2022.9.24
|
||||
charset-normalizer==2.1.1
|
||||
click==8.1.3
|
||||
|
@ -2,6 +2,7 @@ import logging
|
||||
import os
|
||||
|
||||
import sentry_sdk
|
||||
from sentry_sdk.integrations.flask import FlaskIntegration
|
||||
|
||||
MONGO_USER = os.getenv("MONGO_USER", "mongo")
|
||||
MONGO_PASSWORD = os.getenv("MONGO_PASSWORD", "password")
|
||||
@ -14,7 +15,10 @@ def setup():
|
||||
if not DEBUG:
|
||||
sentry_sdk.init(
|
||||
dsn=f"https://{os.getenv('SENTRY_TOKEN')}@o1155463.ingest.sentry.io/4503964727050240",
|
||||
traces_sample_rate=1.0
|
||||
traces_sample_rate=1.0,
|
||||
integrations=[
|
||||
FlaskIntegration(),
|
||||
]
|
||||
)
|
||||
logging.basicConfig(level=logging.INFO)
|
||||
logging.info("app is set up")
|
||||
|
Loading…
Reference in New Issue
Block a user