Fix all EC2 paths: server.js at /app/, node at /usr/local/bin/node
EC2 runs node from /app/ directory (not /home/ubuntu/filamenteka-api). No systemd service exists - restart by killing and re-launching node. Use absolute path /usr/local/bin/node for all node invocations.
This commit is contained in:
@@ -145,7 +145,7 @@ jobs:
|
|||||||
if: needs.detect.outputs.migrations == 'true'
|
if: needs.detect.outputs.migrations == 'true'
|
||||||
run: |
|
run: |
|
||||||
cat > /tmp/migrate-params.json << 'PARAMS'
|
cat > /tmp/migrate-params.json << 'PARAMS'
|
||||||
{"commands":["NODE_PID=$(pgrep -f 'node server.js' | head -1) && echo Node PID: $NODE_PID && ls -la /proc/$NODE_PID/exe && ls -la /proc/$NODE_PID/cwd && cat /proc/$NODE_PID/environ | tr '\\0' '\\n' | grep -E 'PATH|HOME|NODE' || echo 'no node process found'","systemctl cat node-api 2>/dev/null || systemctl list-units --type=service | grep -i node || echo 'no node service'","ls -la /home/ec2-user/*.js /home/ec2-user/*.json 2>/dev/null || echo 'no js in ec2-user home'"]}
|
{"commands":["set -e","cd /tmp","rm -rf repo.tar.gz filamenteka","curl -sf -o repo.tar.gz https://git.demirix.dev/dax/Filamenteka/archive/main.tar.gz","tar xzf repo.tar.gz","mkdir -p /app/api /app/database/migrations","cp -r filamenteka/database/* /app/database/","cp filamenteka/api/migrate.js /app/api/migrate.js","rm -rf repo.tar.gz filamenteka","echo Migration files:","ls -la /app/database/migrations/","cd /app && /usr/local/bin/node api/migrate.js"]}
|
||||||
PARAMS
|
PARAMS
|
||||||
CMD_ID=$(aws ssm send-command \
|
CMD_ID=$(aws ssm send-command \
|
||||||
--region $AWS_REGION \
|
--region $AWS_REGION \
|
||||||
@@ -192,7 +192,7 @@ jobs:
|
|||||||
id: deploy
|
id: deploy
|
||||||
run: |
|
run: |
|
||||||
cat > /tmp/deploy-params.json << 'PARAMS'
|
cat > /tmp/deploy-params.json << 'PARAMS'
|
||||||
{"commands":["set -e","cd /home/ubuntu/filamenteka-api","cp server.js server.js.backup","curl -sf -o server.js https://git.demirix.dev/dax/Filamenteka/raw/branch/main/api/server.js","sudo systemctl restart node-api","echo API deployed and restarted"]}
|
{"commands":["set -e","cd /app","cp server.js server.js.backup","curl -sf -o server.js https://git.demirix.dev/dax/Filamenteka/raw/branch/main/api/server.js","pkill -f 'node server.js' || true","sleep 1","cd /app && nohup /usr/local/bin/node server.js > /var/log/node-api.log 2>&1 &","sleep 2","pgrep -f 'node server.js' && echo API deployed and restarted"]}
|
||||||
PARAMS
|
PARAMS
|
||||||
CMD_ID=$(aws ssm send-command \
|
CMD_ID=$(aws ssm send-command \
|
||||||
--region $AWS_REGION \
|
--region $AWS_REGION \
|
||||||
@@ -253,7 +253,7 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
echo "Rolling back to server.js.backup..."
|
echo "Rolling back to server.js.backup..."
|
||||||
cat > /tmp/rollback-params.json << 'PARAMS'
|
cat > /tmp/rollback-params.json << 'PARAMS'
|
||||||
{"commands":["cd /home/ubuntu/filamenteka-api","if [ -f server.js.backup ]; then cp server.js.backup server.js && sudo systemctl restart node-api && echo Rollback complete; else echo No backup found; fi"]}
|
{"commands":["cd /app","if [ -f server.js.backup ]; then cp server.js.backup server.js && pkill -f 'node server.js' || true && sleep 1 && cd /app && nohup /usr/local/bin/node server.js > /var/log/node-api.log 2>&1 & && echo Rollback complete; else echo No backup found; fi"]}
|
||||||
PARAMS
|
PARAMS
|
||||||
aws ssm send-command \
|
aws ssm send-command \
|
||||||
--region $AWS_REGION \
|
--region $AWS_REGION \
|
||||||
|
|||||||
Reference in New Issue
Block a user