2023.07.30
· 약 2분
0. 근황
- 와인앱
- 와인앱은 지금 거의 중단상태다. 다른 우선순위 높은 것들이 너무 많이 나오고 있기 때문이다. 하지만 끝까지 만들기는 할꺼다! 무조껀!
- 와인 자격증
- 와인 자격증은 8월 26일(토)에 신청했다. 같이 공부하는 사람들이 테이스팅을 너무 잘해서 주눅들기는 한데 Level 2 시험은 이론 공부라.. 나는 이론공부 열심히 해서 자격증은 가장 높은 등급으로 따고 싶다.
- 테이스팅 자신감 붙으면 Level 3도 도전 해봐야지 💪
1. vite bundle analyze ci 만들기
rollup-plugin-analyzer 플러그인이 있는데 진짜 유용하다. 실수로 import 한 패키지가 있는지 확인도 유용하고 (dev 환경에만 들어가야 하는데 production에 포함되는지 확인도 가능) lodash 같이 tree-shacking 안되는 라이블러리가 포함되었는지도 확인이 가능하다.
하지만 vite-plugin-legacy과 같이 사용했을 때 vite-plugin-legacy 이후에 플러그인을 넣었을 때 작동하지 않는 문제가 있다. 파보지는 않았는데 legacy bundling된 이후에 if 문으로 다 건너 뛰어 버리는 것 같다. 그래서 vite-plugin-analyzer 이후에 vite-plugin-legacy가 돌도록 선언해줘야 한다.
return {
plugins: [
analyze({
limit: 10,
skipFormatted: false,
summaryOnly: true,
writeTo: (analyzeString) => {
fs.writeFileSync('bundle-analyze.txt', analyzeString);
},
}),
legacy(),
]
}
나는 결과를 pr comment로 받아보고 싶기 때문에 번들링 결과를 파일에 저장하고, 이 파일을 읽어 pr-comment로 달아줘야 한다.
파일을 읽고 인코딩한 후 pr-comment actions의 도움을 받아 코멘트에 값을 추가하면 된다~!!
- name: Read analyze report
id: read-analyze-report
run: |
report=$(cat ./bundle-analyze.txt | sed '1,2d')
report_encoded=$(echo "${report//$'\n'/%0A}")
echo "::set-output name=report::$report_encoded"
- name: PR comment
uses: thollander/actions-comment-pull-request@v2
with:
message: |
<h2> :pencil: Bundle Analyze Report</h2>
<strong>새로운 패키지를 추가했다면 꼭 확인해보세요 🙄 </strong><br/>
번들사이즈가 큰 상위 10개 파일을 확인해볼 수 있어요.
<br/>
<br/>
<details><summary><strong>분석결과 보기</strong></summary>
${{ steps.read-analyze-report.outputs.report }}
</details>
reactions: eyes, rocket
comment_tag: execution
mode: upsert
tada~ 🎉
2. Git commit 내역에서 committer 변경하기
github 회사 계정과 개인 계정을 두개 관리하고 있어서 committer가 잘 못 올라간 적이 많았다. author는 바꾸기 쉬웠는데 committer는 바꾸기 어려웠는데 이번에 방법을 찾아서 기록한다.
git filter-branch --env-filter '
WRONG_EMAIL="변경전 이메일"
NEW_NAME="새로운 이름"
NEW_EMAIL="새로운 이메일"
if [ "$GIT_COMMITTER_EMAIL" = "$WRONG_EMAIL" ]
then
export GIT_COMMITTER_NAME="$NEW_NAME"
export GIT_COMMITTER_EMAIL="$NEW_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$WRONG_EMAIL" ]
then
export GIT_AUTHOR_NAME="$NEW_NAME"
export GIT_AUTHOR_EMAIL="$NEW_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags