-
Notifications
You must be signed in to change notification settings - Fork 0
96 lines (79 loc) Β· 3.55 KB
/
Copy pathec2-reboot.yml
File metadata and controls
96 lines (79 loc) Β· 3.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
name: EC2-DIAGNOSTIC
on:
workflow_dispatch:
jobs:
diagnose:
name: Diagnose EC2 Instance
runs-on: ubuntu-latest
steps:
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_PROD_ACCESS_KEY }}
aws-secret-access-key: ${{ secrets.AWS_PROD_SECRET_KEY }}
aws-region: ap-northeast-2
- name: Check IAM identity and permissions
run: |
echo "=== IAM μ 보 ==="
aws sts get-caller-identity 2>&1 || true
echo ""
echo "=== IAM μ μ±
νμΈ ==="
ACCOUNT=$(aws sts get-caller-identity --query Account --output text 2>/dev/null)
USER_NAME=$(aws sts get-caller-identity --query Arn --output text 2>/dev/null | awk -F'/' '{print $NF}')
echo "Account: $ACCOUNT"
echo "User: $USER_NAME"
echo ""
echo "=== Attached Policies ==="
aws iam list-attached-user-policies --user-name "$USER_NAME" 2>&1 || echo "IAM μ μ±
μ‘°ν κΆν μμ"
echo ""
echo "=== Inline Policies ==="
aws iam list-user-policies --user-name "$USER_NAME" 2>&1 || echo "IAM μΈλΌμΈ μ μ±
μ‘°ν κΆν μμ"
- name: CodeDeploy deployment group info
run: |
echo "=== λ°°ν¬ κ·Έλ£Ή μμΈ ==="
aws deploy get-deployment-group \
--application-name runnect-prod-codedeploy \
--deployment-group-name runnect-prod-codedeploy-group \
--output json 2>&1 || echo "λ°°ν¬ κ·Έλ£Ή μ‘°ν μ€ν¨"
- name: Latest deployment details
run: |
echo "=== μ΅κ·Ό λ°°ν¬ λͺ©λ‘ ==="
LATEST=$(aws deploy list-deployments \
--application-name runnect-prod-codedeploy \
--deployment-group-name runnect-prod-codedeploy-group \
--query "deployments[0]" \
--output text 2>/dev/null)
echo "Latest deployment: $LATEST"
if [ -n "$LATEST" ] && [ "$LATEST" != "None" ]; then
echo ""
echo "=== λ°°ν¬ μμΈ ==="
aws deploy get-deployment --deployment-id "$LATEST" --output json 2>&1
echo ""
echo "=== λ°°ν¬ μΈμ€ν΄μ€ λͺ©λ‘ ==="
aws deploy list-deployment-instances --deployment-id "$LATEST" --output json 2>&1 || echo "μΈμ€ν΄μ€ λͺ©λ‘ μ‘°ν μ€ν¨"
echo ""
echo "=== λ°°ν¬ νκ² μμΈ ==="
INSTANCE_IDS=$(aws deploy list-deployment-instances --deployment-id "$LATEST" --query "instancesList" --output text 2>/dev/null)
for INST in $INSTANCE_IDS; do
echo "--- Instance: $INST ---"
aws deploy get-deployment-instance --deployment-id "$LATEST" --instance-id "$INST" --output json 2>&1 || echo "μ‘°ν μ€ν¨"
done
fi
- name: Check SSM access
run: |
echo "=== SSM μΈμ€ν΄μ€ λͺ©λ‘ ==="
aws ssm describe-instance-information --output json 2>&1 || echo "SSM κΆν μμ"
- name: Try EC2 describe (may fail)
run: |
echo "=== EC2 μΈμ€ν΄μ€ μ‘°ν μλ ==="
aws ec2 describe-instances --output json 2>&1 || echo "EC2 κΆν μμ"
echo ""
echo "=== Elastic IP μ‘°ν μλ ==="
aws ec2 describe-addresses --public-ips 3.35.195.11 2>&1 || echo "Elastic IP μ‘°ν μ€ν¨"
echo ""
echo "=== 보μ κ·Έλ£Ή μ‘°ν μλ ==="
aws ec2 describe-security-groups 2>&1 || echo "보μ κ·Έλ£Ή μ‘°ν μ€ν¨"
- name: Check S3 bucket
run: |
echo "=== S3 λ²ν· νμΈ ==="
aws s3 ls s3://runnect-prod-bucket/ 2>&1 || echo "S3 μ κ·Ό μ€ν¨"