Github Actions 에서는 환경변수를 관리할 수 있는 기능을 제공한다. Secrets 와 Variables 로 나뉜다.
- Secrets : 민감 정보로, 한번 지정하고서는 암호화되며 워크 플로우에서 활용 시 마스킹 되어서 확인할 수 없다. API 키, 토큰, 비밀번호, 인증서 데이터 등에 활용할 수 있겠다.
- Variables : 단순 변수로 공개돼도 괜찮은 값. 서버 주소, 사용자 이름, 포트 번호 등 덜 민감한 값.

variables 나 secrets 의 경우 두가지 유형이 있다.
- Environment : 특정 환경으로 묶어둔 변수들
- Repository : 저장소 단위의 공통 변수들
yml
- name: Build Dev
env:
NODE_OPTIONS: "--max_old_space_size=4096"
VITE_SAMPLE_APP_ID: ${{ secrets.VITE_SAMPLE_APP_ID }}
VITE_SAMPLE_CLIENT_TOKEN: ${{ secrets.VITE_SAMPLE_CLIENT_TOKEN }}
VITE_SAMPLE_LOG_TOKEN: ${{ secrets.VITE_SAMPLE_LOG_TOKEN }}
VITE_SAMPLE_PUBLIC_KEY: ${{ secrets.VITE_SAMPLE_PUBLIC_KEY }}
run: |
yarn build:dev
secrets 는 actions 에서 secrets 객체를 접근하면 사용할 수 있다. repository secrets 는 조건 없이 사용 가능하다.
yml
jobs:
build:
environment: dev # 이부분
runs-on: ubuntu-latest
environment secrets 는 environment 에다가 사용할 환경을 지정해주면, 그 환경에 맞는 환경변수를 사용할 수 있다.

특정 브랜치 혹은 보호 규칙을 지정해서 조건을 추가할 수 있고, 사용할 secrets 을 지정하면 된다. 환경 지정 시 그 환경에 등록된 변수를 사용한다.
댓글 0개