Skip to content

Merge pull request #23 from Kusitms-29th-Meetup-TeamE/feat/22/cicd #63

Merge pull request #23 from Kusitms-29th-Meetup-TeamE/feat/22/cicd

Merge pull request #23 from Kusitms-29th-Meetup-TeamE/feat/22/cicd #63

Workflow file for this run

name: CI CD
on:
push:
branches:
- dev
- test
- feat/cicd
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/[email protected]
- name: Setup Java JDK
uses: actions/[email protected]
with:
java-version: '17'
distribution: 'temurin'
- name: Cache
uses: actions/[email protected]
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Grant execute permission for gradlew
run: chmod u+x gradlew
- name: Build with Gradle
run: ./gradlew build -x test
- name: Build and push Docker image
env:
DOCKER_USERNAME: ${{secrets.DOCKER_USERNAME}}
DOCKER_PASSWORD: ${{secrets.DOCKER_PASSWORD}}
run: |
docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
docker build -t $DOCKER_USERNAME/meetup .
docker push $DOCKER_USERNAME/meetup
deploy:
needs: build
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/[email protected]
- name: SSH Remote Commands
uses: appleboy/[email protected]
with:
host: ${{secrets.EC2_HOST}}
username: ubuntu
key: ${{secrets.EC2_PRIVATE_KEY}}
port: 22
script: |
sudo chmod 777 ./deploy.sh
sudo ./deploy.sh
sudo docker image prune -f