Skip to content

[#41] feat: 전체 채팅 조회 기능 #14

[#41] feat: 전체 채팅 조회 기능

[#41] feat: 전체 채팅 조회 기능 #14

name: Deploy Swagger UI
on:
push:
branches:
- main
workflow_dispatch:
jobs:
generate-openapi:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up JDK 24
uses: actions/setup-java@v4
with:
java-version: '24'
distribution: 'oracle'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Generate OpenAPI documentation
run: ./gradlew openapi3
- name: Copy OpenAPI files to server
uses: appleboy/scp-action@master
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USERNAME }}
password: ${{ secrets.SERVER_PASSWORD }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
source: "build/api-spec/openapi3.yaml"
target: "~/app/docs"
strip_components: 2
overwrite: true
deploy:
needs: generate-openapi
runs-on: ubuntu-latest
steps:
- name: Deploy Swagger UI
uses: appleboy/[email protected]
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USERNAME }}
password: ${{ secrets.SERVER_PASSWORD }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
script: |
# Check if container is already running
if docker ps --format '{{.Names}}' | grep -q '^team-ace-swagger$'; then
echo "✅ Swagger UI container is already running. Skipping deployment."
exit 0
fi
# Remove stopped container if exists
docker rm team-ace-swagger 2>/dev/null || true
echo "🚀 Starting Swagger UI container..."
# Run Swagger UI container
docker run -d \
--name team-ace-swagger \
--restart unless-stopped \
-p 8081:8080 \
-e SWAGGER_JSON=/app/openapi3.yaml \
-e FILTER=true \
-e TRY_IT_OUT_ENABLED=true \
-v ~/app/docs/openapi3.yaml:/app/openapi3.yaml:ro \
swaggerapi/swagger-ui:latest
echo "✅ Swagger UI container started successfully!"