Github actions
Github Repository에서 Actions로 들어가게 되면, 현재 내가 사용하는 언어에 맞게 스크립트를 구성해서 제공해주고 있다.
나는 현재 Gradle로 구축된 Java Spring으로 개발을 진행하고 있으므로 Java With Gradle를 선택했다.
스크립트
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle
name: Java CI with Gradle
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 11
uses: actions/setup-java@v3
with:
java-version: '11'
distribution: 'temurin'
- name: Build with Gradle
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: build
기본적으로 위와 같은 스크립트를 제공하고 있는데, 끝 부분에 아래와 같은 명령어를 추가한다.
- name: Grant execute permission for gradlew
run: chmod +x gradlew
run : ./gradlew clean build --exclude-task test
# 으로 주석 처리한 부분도 잘 확인한다.
맨 아래에 ./gradlew celan build 이후의 --exclude-task test의 뜻은 테스트 관련 빌드 에러가 발생할 수 있으므로 미연에 스킵하는 명령어이다. build시 테스트 관련 이슈가 없다면 제거해도 되는 명령어.
커밋을 진행합니다.
브랜치에 올리는지, 메인에 올리는지 선택지가 나오는데 메인에 바로 올리시면 되고, 커밋이 잘 완료가 되면
파일이 올라갔고, 이후 Actions 탭에 다시 들어가면
열심히 Run하고 있는 모습을 확인할 수 있다.
잠시 시간이 지나면
초록색 체크표시로 변하는데, 이렇게 변하면 일단 빌드 성공!
주의
Actions에서 Commit후 커밋이 완료되었다면, 꼭 해당 프로젝트에서 Pull을 받아야한다.
깜빡하고 Push 하면 에러가 발생!!
참조
Springboot 프로젝트 Github Action을 이용해서 배포 자동화하기
###🔥 주의 🔥 해당 글은 에러와 실패 과정을 모두 포함한 글이므로 만일 따라하실 때는 다 읽으시고 正道만 걸으시라는 뜻..... 참고 블로그 (처음에 따라할 때 ) https://stalker5217.netlify.app/devops/git
velog.io
'Server > Infra' 카테고리의 다른 글
[CI/CD] Github Actions, AWS S3, AWS CodeDeploy를 이용한 CI/CD - 2 (0) | 2023.03.01 |
---|---|
[CI/CD] Github Actions, AWS S3, AWS CodeDeploy를 이용한 CI/CD - 1 (0) | 2023.03.01 |
[AWS S3] 이미지 업로드/삭제 테스트 (0) | 2023.01.26 |
[AWS S3] 버킷 생성 (0) | 2023.01.26 |
[Docker] Docker Images Tag <NONE> 삭제 자동화 (0) | 2022.12.22 |