먼저 .github/workflows/ 경로에 yml 파일을 통해 workflow를 정의해주어야 합니다.
처음부터 형식에 맞춰서 쓰는 것도 좋은 방법이지만, Github 레파지토리의 위 Actions 탭을 클릭하고 New workflow를 누르면, Github에서 많은 suggestion을 제공합니다.
이 중, 저는 Django를 선택했습니다. 아래와 같은 편집 창이 나옵니다.
해당 내용을 원하는 대로 수정하고 커밋해주시면 됩니다.
Django를 쓰시면서 .env를 이용하시는 분들도 계시지만 secrets.json을 이용해 secret key를 json 형태로 분리한 뒤, 따로 관리하시는 분들도 많습니다.
후자의 경우에는 github actions을 사용할 때 어떻게 key를 적용해야하는지 말씀드리겠습니다.
base64 인코딩을 이용한 방법입니다.
cat secrets.json | base64 > secrets
이런 화면이 나옵니다. 이름은 SECRETS_JSON, 내용은 아까 인코딩하여 출력된 내용을 넣어줍니다.
이후엔 yml 파일에 아래와 같이 넣어주시면 됩니다.
- name: Setting Secrets
run: |
echo $SECRETS_JSON | base64 --decode | jq > secrets.json
env:
SECRETS_JSON: ${{secrets.SECRETS_JSON}}
env를 통해서 설정한 이름으로 변수를 불러올 수 있고
이를 환경변수로 활용하며 run에서 사용해주면 됩니다.
.