Skip to content

#288 [chore] CI, CD 분리 #396

#288 [chore] CI, CD 분리

#288 [chore] CI, CD 분리 #396

Workflow file for this run

name: Peekabook PR Builder
on:
pull_request:
branches: [ "develop" ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Gradle cache
uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'corretto'
cache: gradle
- name: Create Google-Services.json
env:
GOOGLE_SERVICES: ${{ secrets.GOOGLE_SERVICES }}
run: |
touch ./app/google-services.json
echo $GOOGLE_SERVICES >> ./app/google-services.json
cat ./app/google-services.json
- name: Create Local Properties
run: touch local.properties
- name: Access Local Properties
env:
HOST_URI: ${{ secrets.BASE_URI }}
PROD_URI: ${{ secrets.PROD_URI }}
NAVER_URL: ${{ secrets.NAVER_URL }}
CLIENT_ID: ${{ secrets.CLIENT_ID }}
CLIENT_SECRET: ${{ secrets.CLIENT_SECRET }}
KAKAO_NATIVE_APP_KEY: ${{ secrets.KAKAO_NATIVE_APP_KEY }}
KAKAO_REDIRECT_SCHEME: ${{ secrets.KAKAO_REDIRECT_SCHEME }}
STORE_PASSWORD: ${{ secrets.STORE_PASSWORD }}
KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
STORE_FILE: ${{ secrets.STORE_FILE }}
run: |
echo BASE_URI=\"$BASE_URI\" >> local.properties
echo PROD_URI=\"PROD_URI\" >> local.properties
echo NAVER_URL=\"$NAVER_URL\" >> local.properties
echo CLIENT_ID=\"$CLIENT_ID\" >> local.properties
echo CLIENT_SECRET=\"$CLIENT_SECRET\" >> local.properties
echo KAKAO_NATIVE_APP_KEY=\"KAKAO_NATIVE_APP_KEY\" >> local.properties
echo KAKAO_REDIRECT_SCHEME=\"KAKAO_REDIRECT_SCHEME\" >> local.properties
echo STORE_PASSWORD= $STORE_PASSWORD >> local.properties
echo KEY_PASSWORD= $KEY_PASSWORD >> local.properties
echo KEY_ALIAS= $KEY_ALIAS >> local.properties
echo STORE_FILE= $STORE_FILE >> local.properties
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Lint Check
run: ./gradlew ktlintCheck
- name: Build with Gradle
run: ./gradlew build
- name: On Success!! Congratulations
if: ${{ success() }}
uses: rtCamp/action-slack-notify@v2
env:
SLACK_COLOR: '#53A551'
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_TITLE: 'Peekabook/PR Check S.U.C.C.E.S.S 🎉🎉🎉'
MSG_MINIMAL: true
SLACK_USERNAME: Peekabook-AOS
SLACK_MESSAGE: 'PR이 완료되었습니다!!! 🎉🎉🎉'
- name: On Failed, Notify in Slack
if: ${{ failure() }}
uses: rtCamp/action-slack-notify@v2
env:
SLACK_COLOR: '#ff0000'
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_TITLE: 'Peekabook/Android Debug build Fail❌'
MSG_MINIMAL: true
SLACK_USERNAME: Peekabook-AOS
SLACK_MESSAGE: '에러를 확인해주세요'