|
7 | 7 | - "activity-log-service/**" |
8 | 8 | - ".github/workflows/activity-log-service-ci-cd.yml" |
9 | 9 | workflow_dispatch: |
| 10 | + inputs: |
| 11 | + environment: |
| 12 | + description: "Environment to deploy to" |
| 13 | + required: true |
| 14 | + default: "prod" |
| 15 | + type: choice |
| 16 | + options: |
| 17 | + - prod |
| 18 | + - debug |
10 | 19 |
|
11 | 20 | jobs: |
12 | 21 | build-and-deploy: |
@@ -71,34 +80,67 @@ jobs: |
71 | 80 | docker stop activity-log-service || true |
72 | 81 | docker rm activity-log-service || true |
73 | 82 |
|
74 | | - # Basitleştirilmiş container yapılandırması |
75 | | - docker run -d \ |
76 | | - --name activity-log-service \ |
77 | | - --network craftpilot-network \ |
78 | | - --restart unless-stopped \ |
79 | | - -p 8095:8095 \ |
80 | | - -v /opt/craftpilot/gcp-credentials.json:/gcp-credentials.json:ro \ |
81 | | - -e SPRING_PROFILES_ACTIVE=prod \ |
82 | | - -e KAFKA_BOOTSTRAP_SERVERS=kafka:9092 \ |
83 | | - -e EUREKA_CLIENT_SERVICEURL_DEFAULTZONE=http://craftpilot:13579ada@eureka-server:8761/eureka/ \ |
84 | | - -e HOSTNAME=activity-log-service \ |
85 | | - -e GOOGLE_APPLICATION_CREDENTIALS=/gcp-credentials.json \ |
86 | | - -e SPRING_SECURITY_USER_NAME=craftpilot \ |
87 | | - -e SPRING_SECURITY_USER_PASSWORD=13579ada \ |
88 | | - -e SPRING_CLOUD_GCP_PROJECT_ID=craft-pilot-ai \ |
89 | | - -e REDIS_HOST=redis \ |
90 | | - -e REDIS_PORT=6379 \ |
91 | | - -e REDIS_PASSWORD=13579ada \ |
92 | | - -e MANAGEMENT_ENDPOINTS_WEB_BASE_PATH=/actuator \ |
93 | | - -e "MANAGEMENT_ENDPOINTS_WEB_EXPOSURE_INCLUDE=*" \ |
94 | | - -e MANAGEMENT_ENDPOINT_HEALTH_SHOW_DETAILS=always \ |
95 | | - -e "JAVA_OPTS=-XX:+UseContainerSupport -XX:MaxRAMPercentage=70.0 -XX:+UseG1GC -Djava.security.egd=file:/dev/./urandom" \ |
96 | | - --health-cmd="curl -f http://localhost:8095/actuator/health || exit 1" \ |
97 | | - --health-interval=30s \ |
98 | | - --health-timeout=10s \ |
99 | | - --health-retries=3 \ |
100 | | - --health-start-period=60s \ |
101 | | - ${{ secrets.DOCKERHUB_USERNAME }}/activity-log-service:latest-arm64 |
| 83 | + # Debug ve prod modları için farklı container yapılandırması |
| 84 | + if [[ "${{ github.event.inputs.environment }}" == "debug" ]]; then |
| 85 | + # Debug modu container yapılandırması |
| 86 | + docker run -d \ |
| 87 | + --name activity-log-service \ |
| 88 | + --network craftpilot-network \ |
| 89 | + --restart unless-stopped \ |
| 90 | + -p 8095:8095 \ |
| 91 | + -p 5010:5010 \ |
| 92 | + -v /opt/craftpilot/gcp-credentials.json:/gcp-credentials.json:ro \ |
| 93 | + -e SPRING_PROFILES_ACTIVE=prod \ |
| 94 | + -e KAFKA_BOOTSTRAP_SERVERS=kafka:9092 \ |
| 95 | + -e EUREKA_CLIENT_SERVICEURL_DEFAULTZONE=http://craftpilot:13579ada@eureka-server:8761/eureka/ \ |
| 96 | + -e HOSTNAME=activity-log-service \ |
| 97 | + -e GOOGLE_APPLICATION_CREDENTIALS=/gcp-credentials.json \ |
| 98 | + -e SPRING_SECURITY_USER_NAME=craftpilot \ |
| 99 | + -e SPRING_SECURITY_USER_PASSWORD=13579ada \ |
| 100 | + -e SPRING_CLOUD_GCP_PROJECT_ID=craft-pilot-ai \ |
| 101 | + -e REDIS_HOST=redis \ |
| 102 | + -e REDIS_PORT=6379 \ |
| 103 | + -e REDIS_PASSWORD=13579ada \ |
| 104 | + -e MANAGEMENT_ENDPOINTS_WEB_BASE_PATH=/actuator \ |
| 105 | + -e "MANAGEMENT_ENDPOINTS_WEB_EXPOSURE_INCLUDE=*" \ |
| 106 | + -e MANAGEMENT_ENDPOINT_HEALTH_SHOW_DETAILS=always \ |
| 107 | + -e "JAVA_OPTS=-XX:+UseContainerSupport -XX:MaxRAMPercentage=70.0 -XX:+UseG1GC -Djava.security.egd=file:/dev/./urandom -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5010" \ |
| 108 | + --health-cmd="curl -f http://localhost:8095/actuator/health || exit 1" \ |
| 109 | + --health-interval=30s \ |
| 110 | + --health-timeout=10s \ |
| 111 | + --health-retries=3 \ |
| 112 | + --health-start-period=60s \ |
| 113 | + ${{ secrets.DOCKERHUB_USERNAME }}/activity-log-service:latest-arm64 |
| 114 | + else |
| 115 | + # Prod modu container yapılandırması |
| 116 | + docker run -d \ |
| 117 | + --name activity-log-service \ |
| 118 | + --network craftpilot-network \ |
| 119 | + --restart unless-stopped \ |
| 120 | + -p 8095:8095 \ |
| 121 | + -v /opt/craftpilot/gcp-credentials.json:/gcp-credentials.json:ro \ |
| 122 | + -e SPRING_PROFILES_ACTIVE=prod \ |
| 123 | + -e KAFKA_BOOTSTRAP_SERVERS=kafka:9092 \ |
| 124 | + -e EUREKA_CLIENT_SERVICEURL_DEFAULTZONE=http://craftpilot:13579ada@eureka-server:8761/eureka/ \ |
| 125 | + -e HOSTNAME=activity-log-service \ |
| 126 | + -e GOOGLE_APPLICATION_CREDENTIALS=/gcp-credentials.json \ |
| 127 | + -e SPRING_SECURITY_USER_NAME=craftpilot \ |
| 128 | + -e SPRING_SECURITY_USER_PASSWORD=13579ada \ |
| 129 | + -e SPRING_CLOUD_GCP_PROJECT_ID=craft-pilot-ai \ |
| 130 | + -e REDIS_HOST=redis \ |
| 131 | + -e REDIS_PORT=6379 \ |
| 132 | + -e REDIS_PASSWORD=13579ada \ |
| 133 | + -e MANAGEMENT_ENDPOINTS_WEB_BASE_PATH=/actuator \ |
| 134 | + -e "MANAGEMENT_ENDPOINTS_WEB_EXPOSURE_INCLUDE=*" \ |
| 135 | + -e MANAGEMENT_ENDPOINT_HEALTH_SHOW_DETAILS=always \ |
| 136 | + -e "JAVA_OPTS=-XX:+UseContainerSupport -XX:MaxRAMPercentage=70.0 -XX:+UseG1GC -Djava.security.egd=file:/dev/./urandom" \ |
| 137 | + --health-cmd="curl -f http://localhost:8095/actuator/health || exit 1" \ |
| 138 | + --health-interval=30s \ |
| 139 | + --health-timeout=10s \ |
| 140 | + --health-retries=3 \ |
| 141 | + --health-start-period=60s \ |
| 142 | + ${{ secrets.DOCKERHUB_USERNAME }}/activity-log-service:latest-arm64 |
| 143 | + fi |
102 | 144 |
|
103 | 145 | echo "=== Waiting for service startup ===" |
104 | 146 | max_attempts=15 |
|
0 commit comments