Skip to content

Commit daa7799

Browse files
committed
latest cmmitsMerge branch 'dev2' of https://github.com/Adeesh-bode/FXModel into dev2
2 parents b61f0d9 + 4b645fb commit daa7799

2 files changed

Lines changed: 77 additions & 6 deletions

File tree

.github/workflows/deploy-ec2-ci-ssh.yml

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Deploy on EC2 CI
33
on:
44
push:
55
branches:
6-
- deploy-fxmodel-docker
6+
- dev2
77

88
jobs:
99
deploy:
@@ -18,19 +18,37 @@ jobs:
1818
ssh-keyscan -H ${{ secrets.EC2_HOST }} >> ~/.ssh/known_hosts
1919
2020
- name: Deploy on EC2
21-
# checks if no folder than clones , if exists than pulls latest
22-
# shell scripting, fi is used to mark the end of an if statement
23-
# In shell scripting, EOF (End of File) is commonly used to denote the end of a block of text that is being redirected as input to a command
2421
run: |
2522
ssh ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }} << 'EOF'
23+
24+
# === INSTALL DOCKER IF NOT INSTALLED ===
25+
if ! command -v docker &> /dev/null; then
26+
echo "Installing Docker..."
27+
sudo apt-get update
28+
sudo apt-get install -y ca-certificates curl gnupg
29+
sudo install -m 0755 -d /etc/apt/keyrings
30+
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
31+
echo \
32+
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
33+
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
34+
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
35+
sudo apt-get update
36+
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
37+
fi
38+
39+
# === CLONE OR UPDATE PROJECT ===
2640
cd /home/ubuntu
2741
if [ ! -d "fxmodelci" ]; then
2842
git clone https://github.com/Adeesh-bode/FXModel.git fxmodelci
2943
else
3044
cd fxmodelci
3145
git pull origin deploy-fxmodel-docker
3246
fi
47+
3348
cd /home/ubuntu/fxmodelci
34-
docker-compose down
35-
docker-compose up -d --build
49+
50+
# === RUN DOCKER COMPOSE ===
51+
docker compose down
52+
docker compose up -d --build
53+
3654
EOF

.github/workflows/main.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Deploy on EC2 CI
2+
3+
on:
4+
push:
5+
branches:
6+
- dev2
7+
8+
jobs:
9+
deploy:
10+
runs-on: ubuntu-latest
11+
12+
steps:
13+
- name: Set up SSH
14+
run: |
15+
mkdir -p ~/.ssh
16+
echo "${{ secrets.EC2_SSH_KEY }}" > ~/.ssh/id_rsa
17+
chmod 600 ~/.ssh/id_rsa
18+
ssh-keyscan -H ${{ secrets.EC2_HOST }} >> ~/.ssh/known_hosts
19+
20+
- name: Deploy on EC2
21+
run: |
22+
ssh ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }} << 'EOF'
23+
# Install Docker if not already installed
24+
if ! command -v docker &> /dev/null
25+
then
26+
echo "Installing Docker..."
27+
sudo apt update
28+
sudo apt install -y docker.io
29+
sudo systemctl start docker
30+
sudo systemctl enable docker
31+
sudo usermod -aG docker $USER
32+
fi
33+
34+
# Install Docker Compose if not already installed
35+
if ! command -v docker-compose &> /dev/null
36+
then
37+
echo "Installing Docker Compose..."
38+
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
39+
sudo chmod +x /usr/local/bin/docker-compose
40+
fi
41+
42+
cd /home/ubuntu
43+
if [ ! -d "fxmodelci" ]; then
44+
git clone https://github.com/Adeesh-bode/FXModel.git fxmodelci
45+
else
46+
cd fxmodelci
47+
git pull origin deploy-fxmodel-docker
48+
fi
49+
50+
cd /home/ubuntu/fxmodelci
51+
sudo docker-compose down
52+
sudo docker-compose up -d --build
53+
EOF

0 commit comments

Comments
 (0)