@@ -144,27 +144,30 @@ jobs:
144144 - name : Checkout code
145145 uses : actions/checkout@v4
146146
147+ # SINGLE SSH KEY SETUP METHOD
148+ - name : Set up SSH key
149+ run : |
150+ mkdir -p ~/.ssh
151+ echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
152+ chmod 600 ~/.ssh/id_rsa
153+ ssh-keyscan -H ${{ secrets.VM_IP_ADDRESS }} >> ~/.ssh/known_hosts
154+
147155 - name : Deploy to Oracle VM
148156 env :
149- ORACLE_VM_IP : ${{ secrets.ORACLE_VM_IP }}
150- SSH_KEY : ${{ secrets.SSH_PRIVATE_KEY }}
157+ ORACLE_VM_IP : ${{ secrets.VM_IP_ADDRESS }}
151158 DOCKER_REGISTRY : ${{ secrets.OCI_REGISTRY }}
152159 OCI_USERNAME : ${{ secrets.OCI_USERNAME }}
153160 OCI_AUTH_TOKEN : ${{ secrets.OCI_AUTH_TOKEN }}
154161 run : |
155- # Create SSH key file
156- echo "$SSH_KEY" > ssh_key.pem
157- chmod 600 ssh_key.pem
158-
159162 # Verify VM connection
160- ssh -o StrictHostKeyChecking=no -i ssh_key.pem opc@${ORACLE_VM_IP} "echo VM connection verified"
163+ ssh -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa opc@${ORACLE_VM_IP} "echo VM connection verified"
161164
162165 # Create directory and copy docker-compose file
163- ssh -o StrictHostKeyChecking=no -i ssh_key.pem opc@${ORACLE_VM_IP} "mkdir -p ~/music-analytics/vm-deploy"
164- scp -o StrictHostKeyChecking=no -i ssh_key.pem cloud-deploy/docker-compose.direct.yml opc@${ORACLE_VM_IP}:~/music-analytics/vm-deploy/docker-compose.yml
166+ ssh -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa opc@${ORACLE_VM_IP} "mkdir -p ~/music-analytics/vm-deploy"
167+ scp -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa cloud-deploy/docker-compose.direct.yml opc@${ORACLE_VM_IP}:~/music-analytics/vm-deploy/docker-compose.yml
165168
166169 # Execute deployment commands directly
167- ssh -o StrictHostKeyChecking=no -i ssh_key.pem opc@${ORACLE_VM_IP} "cd ~/music-analytics/vm-deploy && \
170+ ssh -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa opc@${ORACLE_VM_IP} "cd ~/music-analytics/vm-deploy && \
168171 docker login ${DOCKER_REGISTRY} -u ${OCI_USERNAME} -p ${OCI_AUTH_TOKEN} && \
169172 export ORACLE_EXTERNAL_HOSTNAME=music-analytics.abenezeranglo.uk && \
170173 export EUREKA_CLIENT_SERVICEURL_DEFAULTZONE=http://eureka-server:8761/eureka/ && \
@@ -174,18 +177,16 @@ jobs:
174177 docker-compose up -d && \
175178 docker-compose ps && \
176179 docker logout ${DOCKER_REGISTRY}"
177-
178- # Clean up
179- rm -f ssh_key.pem
180180
181181 - name : Log out from Oracle Container Registry
182182 if : always()
183183 run : docker logout ${{ secrets.OCI_REGISTRY }}
184184
185- - name : Collect container logs on failure
185+ # CONSOLIDATED DEBUG COMMAND
186+ - name : Debug on failure
186187 if : failure()
187188 run : |
188- ssh -i ${{ secrets.SSH_PRIVATE_KEY }} ${{ secrets.SSH_USERNAME }}@${{ secrets.VM_IP_ADDRESS }} '
189+ ssh -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa ${{ secrets.SSH_USERNAME }}@${{ secrets.VM_IP_ADDRESS }} '
189190 echo "==== EUREKA SERVER LOGS ====" &&
190191 docker logs vm-deploy-eureka-server-1
191192 '
0 commit comments