[Feat]: ci 액션 추가 #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build & Deploy | |
on: | |
push: | |
branches: [ "main" ] # main 브랜치에 push가 발생하면 workflow가 실행됩니다. | |
permissions: | |
contents: read # 권한을 설정합니다. | |
jobs: | |
ci: | |
runs-on: ubuntu-latest | |
# set up java | |
steps: | |
- name: Checkout Repository # 저장소를 체크아웃합니다. | |
uses: actions/checkout@v4 | |
- name: Set up JDK 17 # JDK 17을 설정합니다. | |
uses: actions/setup-java@v4 | |
with: | |
java-version: '17' | |
distribution: 'corretto' | |
- name: Setup Gradle # Gradle을 설정합니다. | |
run: | | |
chmod +x ./gradlew | |
./gradlew clean build | |
- name: Build docker image and push to docker hub # Docker 이미지를 빌드하고 Docker Hub에 푸시합니다. | |
run: | | |
docker login -u ${{ secrets.DOCKERHUB_USERNAME }} -p ${{ secrets.DOCKERHUB_TOKEN }} | |
docker build -t ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKER_REPOSITORY }}:${{ github.sha }} . | |
docker push ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKER_REPOSITORY }}:${{ github.sha }} |