Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 하이브리드암호화
- AES
- springboot3 jstl
- 지속쿠키
- 내도메인 한국
- 하이브리드 암호화
- jstl dependency
- rsa java
- git
- jenkins git ignore file 추가
- aws lightsail 배포
- 플러터
- Stored Procedure log
- 스왑 메모리
- jstl 종류
- Docker
- lightsail 도메인 연결
- aws
- RSA
- 세션쿠키
- XSS 예방
- fk컬럼 삭제
- springboot 배포
- Flutter
- docker error
- aws lightsail
- rsa 복호화
- 제약조건 제거
- swap file
- spring
Archives
- Today
- Total
easycode
[Git] git secret 폴더에 파일 추가하기 본문
민감정보가 든 파일을 .gitignore에 등록해 두면 git엔 올라가지 않는다. 그럼 git action에서 빌드될 때 오류가 뜬다. 이유는 해당 파일이 깃에 없기 때문! 그렇다고 .gitignore에 등록해 둔 파일을 해제할 수도 없고, 어떻게 하면 될까?
바로 GitHub secret 폴더에 등록해주면 된다. 따라서 오늘은 git secret 폴더에 해당 파일을 추가하는 방법을 알아보자.
1. secret 폴더에 추가할 (.gitignore에 등록한) 파일을 BASE64로 인코딩하기
먼저 터미널(cmd) 창을 열고, 프로젝트 폴더 위치로 가서 아래 명령어를 입력한다.
base64 -i [파일 경로] -o 파일명.txt
파일 경로는 "저장소 루트"이다! 예 ) src/main/resources/gcs-secret.json
2. 해당 폴더에 생성된 파일명.txt 파일을 열어 안에 있는 텍스트를 모두 복사한다.
3. github에서 프로젝트 repository에서 setting을 클릭
4. security - secrets and variables - Actions로 이동
5. New repository secret 클릭
6. Name엔 설정 파일에서 사용할 이름을, Secret엔 아까 Base64로 인코딩해서 복사해 뒀던 텍스트를 붙여 넣기 후, Add secret
예 )
Name : PROPERTIES
Secret : 2번에서 복사했던 텍스트 붙여넣기
7. git action에 올라가는 브랜치의 .github/workflows 폴더로 이동
나는 develop 브랜치여서 develop 브랜치에 있는 .github/workflows 폴더로 이동해 줬다.
8. main.yml 파일 수정
여기가 가장 중요하다!!!!
아까 base64로 인코딩해줬던 걸 다시 디코딩해줘야 한다.
코드를 작성하는 위치는
jobs:
build:
runs-on:
steps:
아래의 - uses: ~ 아랫줄에 아래 코드를 작성한다.
- name: Decode Secret Files
run: |
echo "${{ secrets.시크릿Name }}" | base64 --decode > [시크릿 폴더에 올릴 원본 파일명]
mv [시크릿 폴더에 올릴 원본 파일명] ./파일이 있는 폴더
예시 )
- name: Decode Secret Files
run: |
echo "${{ secrets.PROPERTIES }}" | base64 --decode > application-apikey.properties
mv application-apikey.properties ./src/main/resources/
작성 후 해당 파일을 적용해 주면 완료!
나 같은 경우엔 github 홈페이지에서 바로 코드를 수정했으나, 만약 해당 브랜치에서 진행했다면 commit, push로 반영해 주면 된다.
'Git' 카테고리의 다른 글
[Git] git에 올렸던 파일 cache, history 삭제하기 (feat. properties 파일에서 민감 정보 분리하기) (0) | 2023.09.10 |
---|---|
[Git] Git에서 특정 브랜치 git clone 받아오기 (0) | 2023.08.04 |