의도치 않게 어제 작성한 Github Action을 이용하여 자동으로 signed apk 빌드하기 (23년 5월 기준) 에서 이어지는 글을 작성하게 되었다.
어제 workflow를 구축하고 잘 릴리즈가 되고 있었다.
근데 다시 한 번 확인해 보니 빌드과정중에 warning이 뜨는걸 볼 수 있었고
개인적으로 평소에 deprecated 된 걸 최대한 안쓰려 하는 편이라 저걸 제거해 봐야 겠다는 생각이 들었다.
Node.js 12 actions are deprecated. Please update the following actions to use Node.js 16: actions/create-release@v1, actions/upload-release-asset@v1.0.1.
우선 actions/create-release@v1, actions/upload-release-asset@v1.0.1 는 현재 repository가 readonly 상태이다.
그러면 어떻게 대체할 수 있을까를 확인해봐야 하는데 repository를 보면 대체 할 수 있는 레포지토리 들을 소개해 주고 있다는 것을 확인할 수 있다.
이 중 softprops/action-gh-release 를 선택하였는데 그 이유는 create-release의 기능과 upload-release-asset의 기능 두 가지를 모두 대체 가능하며 가장 많은 사람들이 사용하고 있었기 때문이다.
이에 따라 바뀐 release-apk.yml 은 다음과 같다.
name: release apk
on:
push:
branches:
- main
jobs:
apk:
name: Generate and Release APK
runs-on: ubuntu-latest
permissions: write-all
steps:
- name: Checkout
uses: actions/checkout@v1
- name: Setup JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Generate Keystore file from Github Secrets
run: |
echo "${{ secrets.APP_KEYSTORE_BASE64 }}" > ./keystore.b64
base64 -d -i ./keystore.b64 > ./${{ secrets.KEYFILE }}
cp ./${{ secrets.KEYFILE }} ./app/${{ secrets.KEYFILE }}
- name: Build Signed APK
run: |
bash ./gradlew assembleRelease \
-Pandroid.injected.signing.store.file=${{ secrets.KEYFILE }} \
-Pandroid.injected.signing.store.password=${{ secrets.STORE_PASSWORD }} \
-Pandroid.injected.signing.key.alias=${{ secrets.KEY_ALIAS }} \
-Pandroid.injected.signing.key.password=${{ secrets.KEY_PASSWORD }} \
--stacktrace
- name: set now
run: |
echo "now=v$(date +'%Y.%m.%d.%H%M')" >> $GITHUB_ENV
- name: Create Release
id: create_release
uses: softprops/action-gh-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ env.now }}
files: |
app/build/outputs/apk/release/app-release.apk
job을 하나로 통일해서 처리해 주었다.
이렇게 수정하면 아래 아무런 warning 없이 깔끔하게 성공하는 것을 확인 할 수 있다.
'개발' 카테고리의 다른 글
[Jetpack Compose] Navigation Drawer와 TopAppBar 연결하기 (0) | 2023.06.03 |
---|---|
[Jetpack Compose] State와 DataStore 연결하기 (0) | 2023.06.03 |
[Jetpack Compose] DarkMode 대응하기 (0) | 2023.06.03 |
[Jetpack Compose] nestedScroll connection 을 이용하여 스크롤 시에 AppTopBar를 사라졌다 보였다 하게 하기 (0) | 2023.06.03 |
Github Action을 이용하여 자동으로 signed apk 빌드하기 (23년 5월 기준) (0) | 2023.05.19 |
댓글