diff --git a/.github/workflows/Deploy-Chat.yml b/.github/workflows/Deploy-Chat.yml index a20e739..c272bf6 100644 --- a/.github/workflows/Deploy-Chat.yml +++ b/.github/workflows/Deploy-Chat.yml @@ -39,7 +39,7 @@ jobs: }, "AllowedHosts": "*", "ConnectionStrings": { - "DefaultConnection": "Server='${{ secrets.REMOTE_HOST }}';Port=5432;User Id=postgres;Password='${{ secrets.REMOTE_PASSWORD }}';Database=egroo-prod;" + "DefaultConnection": "Server='${{ secrets.REMOTE_HOST_DB }}';Port=5432;User Id='${{ secrets.REMOTE_USER_DB }}';Password='${{ secrets.REMOTE_PASSWORD }}';Database=egroo-prod;" }, "Api": { "AllowedOrigins": [ "https://egroo.org", "https://www.egroo.org"] @@ -71,9 +71,6 @@ jobs: script: | docker load -i /home/ubuntu/images/mobilechat-server-prod.tar rm /home/ubuntu/images/mobilechat-server-prod.tar - docker kill mobilechat-server-prod - docker system prune -f - docker run --name mobilechat-server-prod -p 49117:8080 --restart always -d jihadkhawaja/mobilechat-server-prod:latest dotnet-build-wasm: name: Dotnet Build wasm runs-on: ubuntu-latest @@ -118,6 +115,26 @@ jobs: script: | docker load -i /home/ubuntu/images/mobilechat-wasm-prod.tar rm /home/ubuntu/images/mobilechat-wasm-prod.tar - docker kill mobilechat-wasm-prod - docker system prune -f - docker run --name mobilechat-wasm-prod -p 49168:8080 --restart always -v public:/app/wwwroot/public -d jihadkhawaja/mobilechat-wasm-prod:latest + docker-compose: + name: Docker Compose + needs: [docker-build-wasm,docker-build-api] + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: copy docker-compose via ssh + uses: appleboy/scp-action@v0.1.3 + with: + host: ${{ secrets.REMOTE_HOST }} + username: ${{ secrets.REMOTE_USER }} + key: ${{ secrets.KEY }} + port: 22 + source: "src/docker-compose-egroo.yml" + target: "/home/ubuntu/Configurations/" + - name: executing remote ssh commands + uses: appleboy/ssh-action@master + with: + host: ${{ secrets.REMOTE_HOST }} + username: ${{ secrets.REMOTE_USER }} + key: ${{ secrets.KEY }} + script: | + docker compose -f Configurations/src/docker-compose-egroo.yml up -d diff --git a/.github/workflows/MSTest.yml b/.github/workflows/MSTest.yml index 5ac705f..1c1e338 100644 --- a/.github/workflows/MSTest.yml +++ b/.github/workflows/MSTest.yml @@ -38,7 +38,7 @@ jobs: }, "AllowedHosts": "*", "ConnectionStrings": { - "DefaultConnection": "Server='${{ secrets.REMOTE_HOST }}';Port=5432;User Id=postgres;Password='${{ secrets.REMOTE_PASSWORD }}';Database=\"egroo-dev-test\";" + "DefaultConnection": "Server='${{ secrets.REMOTE_HOST_DB }}';Port=5432;User Id='${{ secrets.REMOTE_USER_DB }}';Password='${{ secrets.REMOTE_PASSWORD }}';Database=\"egroo-dev-test\";" }, "Secrets": { "Jwt": "${{ secrets.JWT_UAT }}" @@ -67,13 +67,34 @@ jobs: script: | docker load -i /home/ubuntu/images/mobilechat-server.tar rm /home/ubuntu/images/mobilechat-server.tar - docker kill mobilechat-server - docker system prune -f - docker run --name mobilechat-server -p 43222:8080 --restart always -d jihadkhawaja/mobilechat-server:latest + + docker-compose: + name: Docker Compose + needs: docker-build + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: copy docker-compose via ssh + uses: appleboy/scp-action@v0.1.3 + with: + host: ${{ secrets.REMOTE_HOST }} + username: ${{ secrets.REMOTE_USER }} + key: ${{ secrets.KEY }} + port: 22 + source: "src/docker-compose-egroo-test.yml" + target: "/home/ubuntu/Configurations/" + - name: executing remote ssh commands + uses: appleboy/ssh-action@master + with: + host: ${{ secrets.REMOTE_HOST }} + username: ${{ secrets.REMOTE_USER }} + key: ${{ secrets.KEY }} + script: | + docker compose -f Configurations/src/docker-compose-egroo-test.yml up -d uni-test: runs-on: ubuntu-latest - needs: docker-build + needs: docker-compose steps: - uses: actions/checkout@v2 - name: Setup .NET Core @@ -108,8 +129,7 @@ jobs: username: ${{ secrets.REMOTE_USER }} key: ${{ secrets.KEY }} script: | - docker kill mobilechat-server - docker system prune -f + docker compose -f Configurations/src/docker-compose-egroo-test.yml down database-drop: name: Database drop needs: docker-stop diff --git a/src/docker-compose-egroo-test.yml b/src/docker-compose-egroo-test.yml new file mode 100644 index 0000000..aef3d42 --- /dev/null +++ b/src/docker-compose-egroo-test.yml @@ -0,0 +1,17 @@ +# service description +services: + + egroo-api-test: + image: jihadkhawaja/mobilechat-server:latest + entrypoint: ["dotnet", "Egroo.Server.dll"] + container_name: egroo-api-test + hostname: egroo-api-test + restart: unless-stopped + networks: + - configurations_CN + ports: + - "43222:8080" + +networks: + configurations_CN: + external: true \ No newline at end of file diff --git a/src/docker-compose-egroo.yml b/src/docker-compose-egroo.yml new file mode 100644 index 0000000..4a7c0d0 --- /dev/null +++ b/src/docker-compose-egroo.yml @@ -0,0 +1,28 @@ +# service description +services: + + egroo-api: + image: jihadkhawaja/mobilechat-server-prod:latest + entrypoint: ["dotnet", "Egroo.Server.dll"] + container_name: egroo-api + hostname: egroo-api + restart: unless-stopped + networks: + - configurations_CN + ports: + - "49117:8080" + + egroo-web: + image: jihadkhawaja/mobilechat-wasm-prod:latest + entrypoint: ["dotnet", "Egroo.dll"] + container_name: egroo-web + hostname: egroo-web + restart: unless-stopped + networks: + - configurations_CN + ports: + - "49168:8080" + +networks: + configurations_CN: + external: true \ No newline at end of file