Skip to content

Commit 2dc5769

Browse files
committed
chore: CI/CD 업데이트
1 parent 2b81b55 commit 2dc5769

File tree

1 file changed

+94
-0
lines changed

1 file changed

+94
-0
lines changed

.github/workflows/build.yml

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
name: build
2+
3+
on:
4+
push:
5+
tags:
6+
- '[0-9]+.[0-9]+.[0-9]+'
7+
8+
jobs:
9+
build:
10+
runs-on: ubuntu-latest
11+
environment: production
12+
strategy:
13+
matrix:
14+
node-version: [22.x]
15+
16+
steps:
17+
- uses: actions/checkout@v2
18+
19+
- name: Extract tag name
20+
id: get_version
21+
run: |
22+
echo "VERSION=${GITHUB_REF/refs\/tags\//}" >> $GITHUB_ENV
23+
24+
- name: Generate Environment Variables File for Production
25+
run: |
26+
echo "VITE_SENTRY_AUTH_TOKEN=$VITE_SENTRY_AUTH_TOKEN" >> .env.production
27+
echo "VITE_BASE_HOSTNAME=$VITE_BASE_HOSTNAME" >> .env.production
28+
echo "VITE_BASE_URL=$VITE_BASE_URL" >> .env.production
29+
echo "VITE_BUILD_ENV=$VITE_BUILD_ENV" >> .env.production
30+
echo "VITE_CHROMIUM_RATE_EXT_LINK=$VITE_CHROMIUM_RATE_EXT_LINK" >> .env.production
31+
echo "VITE_DOCUMENTATION=$VITE_DOCUMENTATION" >> .env.production
32+
echo "VITE_DONATE_LINK=$VITE_DONATE_LINK" >> .env.production
33+
echo "VITE_FIREFOX_RATE_EXT_LINK=$VITE_FIREFOX_RATE_EXT_LINK" >> .env.production
34+
echo "VITE_MAXNUMCHATS_DEFAULT=$VITE_MAXNUMCHATS_DEFAULT" >> .env.production
35+
env:
36+
VITE_SENTRY_AUTH_TOKEN: ${{ secrets.VITE_SENTRY_AUTH_TOKEN }}
37+
VITE_BASE_HOSTNAME: ${{ vars.VITE_BASE_HOSTNAME }}
38+
VITE_BASE_URL: ${{ vars.VITE_BASE_URL }}
39+
VITE_BUILD_ENV: ${{ vars.VITE_BUILD_ENV }}
40+
VITE_CHROMIUM_RATE_EXT_LINK: ${{ vars.VITE_CHROMIUM_RATE_EXT_LINK }}
41+
VITE_DOCUMENTATION: ${{ vars.VITE_DOCUMENTATION }}
42+
VITE_DONATE_LINK: ${{ vars.VITE_DONATE_LINK }}
43+
VITE_FIREFOX_RATE_EXT_LINK: ${{ vars.VITE_FIREFOX_RATE_EXT_LINK }}
44+
VITE_MAXNUMCHATS_DEFAULT: ${{ vars.VITE_MAXNUMCHATS_DEFAULT }}
45+
46+
- name: Print environment variable
47+
run: |
48+
cat ./.env.production
49+
50+
- name: Use Node.js ${{ matrix.node-version }}
51+
uses: actions/setup-node@v1
52+
with:
53+
node-version: ${{ matrix.node-version }}
54+
55+
- name: Install Dependencies
56+
run: npm ci
57+
58+
- name: Build
59+
run: npm run build --if-present
60+
61+
- name: Create Release
62+
id: create_release
63+
uses: actions/create-release@v1
64+
env:
65+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
66+
with:
67+
tag_name: v${{ env.VERSION }}
68+
release_name: Release v${{ env.VERSION }}
69+
body: |
70+
Release v${{ env.VERSION }}
71+
draft: false
72+
prerelease: false
73+
74+
- name: Upload Chromium Files
75+
id: upload_chromium_files
76+
uses: actions/upload-release-asset@v1
77+
env:
78+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
79+
with:
80+
upload_url: ${{ steps.create_release.outputs.upload_url }}
81+
asset_path: ./.output/twitch-badge-collector-extension-${{ env.VERSION }}-chrome.zip
82+
asset_name: twitch-badge-collector-extension-${{ env.VERSION }}-chrome.zip
83+
asset_content_type: application/zip
84+
85+
- name: Upload Firefox Files
86+
id: upload_firefox_files
87+
uses: actions/upload-release-asset@v1
88+
env:
89+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
90+
with:
91+
upload_url: ${{ steps.create_release.outputs.upload_url }}
92+
asset_path: ./.output/twitch-badge-collector-extension-${{ env.VERSION }}-firefox.zip
93+
asset_name: twitch-badge-collector-extension-${{ env.VERSION }}-firefox.zip
94+
asset_content_type: application/zip

0 commit comments

Comments
 (0)