Add responses for failed menjacnica transfers and update api key for exchange rates #270
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy backend service to DigitalOcean | |
on: | |
push: | |
branches: | |
- sprint-1 | |
- sprint-2 | |
- sprint-3 | |
- sprint-4 | |
- sprint-5 | |
- main | |
pull_request: | |
types: [opened, synchronize, closed] | |
jobs: | |
test: | |
if: ${{github.event_name == 'pull_request'}} | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{secrets.CURRENT_BRANCH}} | |
- name: Set up JDK 21 | |
uses: actions/setup-java@v2 | |
with: | |
distribution: 'adopt' | |
java-version: '21' | |
- name: Run tests | |
run: mvn -B clean package -Dcheckstyle.skip=true -DskipTests=false | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{secrets.CURRENT_BRANCH}} | |
- name: Set up JDK 21 | |
uses: actions/setup-java@v2 | |
with: | |
distribution: 'adopt' | |
java-version: '21' | |
- name: Build with Maven | |
run: mvn -B clean package -Dcheckstyle.skip=true -DskipTests=true | |
- name: Build Docker image for user service | |
run: docker build -t ${{secrets.DOCKER_USERNAME}}/user-service:latest ./user-service | |
- name: Build Docker image for market service | |
run: docker build -t ${{secrets.DOCKER_USERNAME}}/market-service:latest ./market-service | |
- name: Build Docker image for fetching service | |
run: docker build -t ${{secrets.DOCKER_USERNAME}}/fetching-service:latest ./fetching-service | |
- name: Log into Docker hub | |
uses: docker/login-action@v2 | |
with: | |
username: ${{secrets.DOCKER_USERNAME}} | |
password: ${{secrets.DOCKER_PASSWORD}} | |
- name: Push Docker image - user service | |
run: docker push ${{secrets.DOCKER_USERNAME}}/user-service:latest | |
- name: Push Docker image - market service | |
run: docker push ${{secrets.DOCKER_USERNAME}}/market-service:latest | |
- name: Push Docker image - fetching service | |
run: docker push ${{secrets.DOCKER_USERNAME}}/fetching-service:latest | |
- name: SCP Docker Compose and init.sql to PROD | |
uses: appleboy/scp-action@master | |
with: | |
host: ${{secrets.PRODUCTION_HOST_IP}} | |
port: 22 | |
username: ${{secrets.PRODUCTION_SERVER_USER}} | |
passphrase: ${{secrets.KEY_PASSPHRASE}} | |
key: ${{secrets.PRODUCTION_SERVER_SSH}} | |
source: "./docker.compose.yaml.example.prod,./init.sql.example" | |
target: "/root/" | |
debug: true | |
- name: SSH into PROD | |
uses: appleboy/ssh-action@master | |
with: | |
host: ${{secrets.PRODUCTION_HOST_IP}} | |
username: ${{secrets.PRODUCTION_SERVER_USER}} | |
port: 22 | |
key: ${{secrets.PRODUCTION_SERVER_SSH}} | |
passphrase: ${{secrets.KEY_PASSPHRASE}} | |
script: | | |
docker compose -f /root/docker.compose.yaml.example.prod down -v | |
docker stop $(docker ps -aq) | |
docker rm $(docker ps -aq) | |
docker rmi $(docker images) | |
docker compose -f /root/docker.compose.yaml.example.prod up -d | |
- name: Send notify to Discord | |
env: | |
DISCORD_WEBHOOK: ${{secrets.DISCORD_WEBHOOK_URL}} | |
DISCORD_USERNAME: ${{secrets.DISCORD_BOT_USERNAME}} | |
DISCORD_AVATAR: ${{secrets.DISCORD_AVATAR_URL}} | |
uses: Ilshidur/action-discord@master | |
with: | |
args: 'Deploy je prosao na grani [${{github.ref}}](https://github.com/RAF-SI-2023/Banka-1-Backend/tree/${{github.ref}})! User service se nalazi [ovde](http://161.35.78.6:8080/user). Market service se nalazi [ovde](http://161.35.78.6:8081/). Fetching service se nalazi [ovde](http://161.35.78.6:8082/)' |