π¦οΈ [CHORE] badword log #109
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: CD | |
on: | |
push: | |
branches: [ "develop" ] | |
jobs: | |
deploy-ci: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Check out | |
uses: actions/checkout@v3 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'corretto' | |
java-version: '17' | |
- name: Configure AWS Credentials | |
uses: aws-actions/configure-aws-credentials@v1 | |
with: | |
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY }} | |
aws-secret-access-key: ${{ secrets.AWS_SECRET_KEY }} | |
aws-region: ap-northeast-2 | |
- name: Read secrets from AWS Secrets Manager into environment variables | |
uses: abhilash1in/[email protected] | |
with: | |
secrets: | | |
/secret/lequu | |
parse-json: false | |
- name: application-secret.properties μμ± (νκ²½λ³μκ° AWS Secrets Managerλ³΄λ€ λΉ λ₯΄κ² λ‘λλμ΄μΌ ν λ) | |
run: | | |
cd src/main/resources | |
echo "${{ secrets.PROPERTIES }}" > ./application-secret.properties | |
- name: Build | |
run: | | |
chmod +x gradlew | |
./gradlew build -x test | |
shell: bash | |
### CD flow μμ ### | |
- name: Docker build κ°λ₯νλλ‘ νκ²½ μ€μ | |
uses: docker/[email protected] | |
- name: Docker Hubμ λ‘κ·ΈμΈ | |
uses: docker/[email protected] | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_ACCESSTOKEN }} | |
- name: Docker image λΉλ λ° νΈμ | |
run: | | |
docker build --platform linux/amd64 \ | |
--build-arg AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY }} \ | |
--build-arg AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_KEY }} \ | |
--build-arg AWS_DEFAULT_REGION=ap-northeast-2 \ | |
--build-arg AWS_OUTPUT_FORMAT=None \ | |
-t lequu/lequu-server . | |
docker push lequu/lequu-server | |
deploy-cd: | |
needs: deploy-ci | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: λ컀 컨ν μ΄λ μ€ν | |
uses: appleboy/ssh-action@master | |
with: | |
host: ${{ secrets.RELEASE_SERVER_IP }} | |
username: ${{ secrets.RELEASE_SERVER_USER }} | |
key: ${{ secrets.RELEASE_SERVER_KEY }} | |
script: | | |
cd ~ | |
./deploy.sh | |
docker image prune -f |