diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml deleted file mode 100644 index ced2b7ec..00000000 --- a/.github/workflows/deploy.yml +++ /dev/null @@ -1,78 +0,0 @@ -name: Deploy To EC2 - -on: - pull_request: - branches: [ "main" ] - -env: - BASE_RESOURCE_PATH: ./src/main/resources/application.yml - DB_URI: ${{ secrets.DB_URI }} - DB_USERNAME: ${{ secrets.DB_USERNAME }} - DB_PASSWORD: ${{ secrets.DB_PASSWORD }} - KAKAO_CLIENT_ID: ${{ secrets.KAKAO_CLIENT_ID }} - KAKAO_CLIENT_SECRET: ${{ secrets.KAKAO_CLIENT_SECRET }} - JWT_SECRET: ${{ secrets.JWT_SECRET }} - S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }} - S3_SECRET_KEY: ${{ secrets.S3_SECRET_KEY }} - S3_BUCKET_NAME: ${{ secrets.S3_BUCKET_NAME }} - -permissions: write-all - -jobs: - deploy: - runs-on: ubuntu-latest - steps: - - name: Github Repository 파일 불러오기 - uses: actions/checkout@v4 - - - name: JDK 17버전 설치 - uses: actions/setup-java@v4 - with: - distribution: temurin - java-version: 17 - - - name: application.yml 파일 생성 - run: | - touch ${{ env.BASE_RESOURCE_PATH }} - echo "${{ secrets.APPLICATION }}" | base64 --decode > ${{ env.BASE_RESOURCE_PATH }} - - name: application.yml 파일 내용 확인 - run: cat ./src/main/resources/application.yml - - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v3 - - - name: Build with Gradle - run: ./gradlew build - - - name: AWS Resource에 접근할 수 있게 AWS credentials 설정 - uses: aws-actions/configure-aws-credentials@v4 - with: - aws-region: ap-northeast-2 - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - - - name: ECR에 로그인하기 - id: login-ecr - uses: aws-actions/amazon-ecr-login@v2 - - - name: Docker 이미지 생성 - run: docker build --no-cache -t kampus-dev . - - - name: Docker 이미지에 Tag 붙이기 - run: docker tag kampus-dev ${{ steps.login-ecr.outputs.registry }}/kampus-dev:latest - - - name: ECR에 Docker 이미지 Push하기 - run: docker push ${{ steps.login-ecr.outputs.registry }}/kampus-dev:latest - - - name: 압축하기 - run: tar -czvf $GITHUB_SHA.tar.gz appspec.yml scripts - - - name: S3에 프로젝트 폴더 업로드하기 - run: aws s3 cp --region ap-northeast-2 ./$GITHUB_SHA.tar.gz s3://kampus-server/$GITHUB_SHA.tar.gz - - - name: Code Deploy를 활용해 EC2에 프로젝트 코드 배포 - run: aws deploy create-deployment \ - --application-name kampus-server \ - --deployment-config-name CodeDeployDefault.AllAtOnce \ - --deployment-group-name KampusServerInstances \ - --s3-location bucket=kampus-server,bundleType=tgz,key=$GITHUB_SHA.tar.gz \ No newline at end of file