|
8585
|
7117
|
6
|
5
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
๐ ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ
|
1
|
name: Code Quality Gate
"on":
push:
name: Code Quality Gate
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
strict_mode:
description: 'ไธฅๆ ผๆจกๅผ๏ผๅคฑ่ดฅๅณ้ปๆญขๅๅนถ๏ผ'
required: false
default: true
type: boolean
env:
COVERAGE_THRESHOLD_E2E: "60"
COVERAGE_THRESHOLD_INTEGRATION: "70"
COVERAGE_THRESHOLD_UNIT: "80"
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-test-coverage:
name: "\U0001F4CA ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏๅนถ็ๆ่ฆ็็
run: |
cd backend
npm run test:coverage
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- id: coverage-check
name: ๆฃๆฅ่ฆ็็้ๅผ
run: "cd backend\nif [ -f \"coverage/coverage-summary.json\" ]; then\n LINES_PCT=$(cat coverage/coverage-summary.json | jq '.total.lines.pct')\n STATEMENTS_PCT=$(cat coverage/coverage-summary.json | jq '.total.statements.pct')\n BRANCHES_PCT=$(cat coverage/coverage-summary.json | jq '.total.branches.pct')\n FUNCTIONS_PCT=$(cat coverage/coverage-summary.json | jq '.total.functions.pct')\n\n echo \"\U0001F4CA ่ฆ็็ๆฅๅ๏ผ\"\n echo \" - ่ก่ฆ็็: $LINES_PCT%\"\n echo \" - ่ฏญๅฅ่ฆ็็: $STATEMENTS_PCT%\"\n echo \" - ๅๆฏ่ฆ็็: $BRANCHES_PCT%\"\n echo \" - ๅฝๆฐ่ฆ็็: $FUNCTIONS_PCT%\"\n\n echo \"lines_pct=$LINES_PCT\" >> $GITHUB_OUTPUT\n echo \"statements_pct=$STATEMENTS_PCT\" >> $GITHUB_OUTPUT\n echo \"branches_pct=$BRANCHES_PCT\" >> $GITHUB_OUTPUT\n echo \"functions_pct=$FUNCTIONS_PCT\" >> $GITHUB_OUTPUT\n\n # ๆฃๆฅๆฏๅฆ่พพๅฐ้ๅผ๏ผไฝฟ็จ่ก่ฆ็็ไฝไธบไธป่ฆๆๆ ๏ผ\n if (( $(echo \"$LINES_PCT < ${{ env.COVERAGE_THRESHOLD_UNIT }}\" | bc -l) )); then\n echo \"โ ่ก่ฆ็็ $LINES_PCT% ไฝไบ้ๅผ ${{ env.COVERAGE_THRESHOLD_UNIT }}%\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\n fi\n\n echo \"โ
่ฆ็็ๆฃๆฅ้่ฟ\"\n echo \"coverage_pass=true\" >> $GITHUB_OUTPUT\nelse\n echo \"โ ๏ธ ๆชๆพๅฐ่ฆ็็ๆฅๅ\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\nfi\n"
- if: always()
name: ็ๆ่ฆ็็ๅพฝ็ซ
run: |
COVERAGE="${{ steps.coverage-check.outputs.lines_pct }}"
if [ -z "$COVERAGE" ]; then
COVERAGE="0"
fi
# ็กฎๅฎ้ข่ฒ
if (( $(echo "$COVERAGE >= 80" | bc -l) )); then
COLOR="brightgreen"
elif (( $(echo "$COVERAGE >= 60" | bc -l) )); then
COLOR="yellow"
else
COLOR="red"
fi
echo "Coverage: $COVERAGE% ($COLOR)"
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v4
with:
name: unit-test-coverage
path: |
backend/coverage/
backend/test-results/
retention-days: "14"
- if: github.event_name == 'pull_request'
name: ่ฏ่ฎบ PR ่ฆ็็
uses: actions/github-script@v7
with:
script: "const coverage = '${{ steps.coverage-check.outputs.lines_pct }}';\nconst threshold = '${{ env.COVERAGE_THRESHOLD_UNIT }}';\nconst passed = '${{ steps.coverage-check.outputs.coverage_pass }}' === 'true';\n\nconst emoji = passed ? 'โ
' : 'โ';\nconst status = passed ? '้่ฟ' : 'ๆช้่ฟ';\n\nconst body = [\n `## ${emoji} ๅๅ
ๆต่ฏ่ฆ็็ๆฅๅ`,\n '',\n '| ๆๆ | ๅฝๅๅผ | ้ๅผ | ็ถๆ |',\n '|------|--------|------|------|',\n `| ่ก่ฆ็็ | ${coverage}% | ${threshold}% | ${status} |`,\n `| ่ฏญๅฅ่ฆ็็ | ${{ steps.coverage-check.outputs.statements_pct }}% | - | - |`,\n `| ๅๆฏ่ฆ็็ | ${{ steps.coverage-check.outputs.branches_pct }}% | - | - |`,\n `| ๅฝๆฐ่ฆ็็ | ${{ steps.coverage-check.outputs.functions_pct }}% | - | - |`,\n '',\n passed ? '\U0001F389 ๆญๅ๏ผๆต่ฏ่ฆ็็่พพๆ ใ' : 'โ ๏ธ ่ฏทๅขๅ ๆต่ฏ็จไพไปฅๆ้ซ่ฆ็็ใ'\n].join('\\n');\n\ngithub.rest.issues.createComment({\n issue_number: context.issue.number,\n owner: context.repo.owner,\n repo: context.repo.repo,\n body: body\n});\n"
timeout-minutes: "30"
...
|
unit-test-coverage
|
null
|
["ubuntu-latest"]
|
7378
|
2
|
1773940171
|
1773940188
|
1773939782
|
1773940188
|
|
0
|
|
0
|
Edit
Delete
|
|
8774
|
7235
|
6
|
5
|
0900b15d607e5c78f97fec16a73357ad4f814390
|
0
|
๐ ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ
|
1
|
name: Code Quality Gate
"on":
push:
name: Code Quality Gate
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
strict_mode:
description: 'ไธฅๆ ผๆจกๅผ๏ผๅคฑ่ดฅๅณ้ปๆญขๅๅนถ๏ผ'
required: false
default: true
type: boolean
env:
COVERAGE_THRESHOLD_E2E: "60"
COVERAGE_THRESHOLD_INTEGRATION: "70"
COVERAGE_THRESHOLD_UNIT: "80"
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-test-coverage:
name: "\U0001F4CA ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏๅนถ็ๆ่ฆ็็
run: |
cd backend
npm run test:coverage
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- id: coverage-check
name: ๆฃๆฅ่ฆ็็้ๅผ
run: "cd backend\nif [ -f \"coverage/coverage-summary.json\" ]; then\n LINES_PCT=$(cat coverage/coverage-summary.json | jq '.total.lines.pct')\n STATEMENTS_PCT=$(cat coverage/coverage-summary.json | jq '.total.statements.pct')\n BRANCHES_PCT=$(cat coverage/coverage-summary.json | jq '.total.branches.pct')\n FUNCTIONS_PCT=$(cat coverage/coverage-summary.json | jq '.total.functions.pct')\n\n echo \"\U0001F4CA ่ฆ็็ๆฅๅ๏ผ\"\n echo \" - ่ก่ฆ็็: $LINES_PCT%\"\n echo \" - ่ฏญๅฅ่ฆ็็: $STATEMENTS_PCT%\"\n echo \" - ๅๆฏ่ฆ็็: $BRANCHES_PCT%\"\n echo \" - ๅฝๆฐ่ฆ็็: $FUNCTIONS_PCT%\"\n\n echo \"lines_pct=$LINES_PCT\" >> $GITHUB_OUTPUT\n echo \"statements_pct=$STATEMENTS_PCT\" >> $GITHUB_OUTPUT\n echo \"branches_pct=$BRANCHES_PCT\" >> $GITHUB_OUTPUT\n echo \"functions_pct=$FUNCTIONS_PCT\" >> $GITHUB_OUTPUT\n\n # ๆฃๆฅๆฏๅฆ่พพๅฐ้ๅผ๏ผไฝฟ็จ่ก่ฆ็็ไฝไธบไธป่ฆๆๆ ๏ผ\n if (( $(echo \"$LINES_PCT < ${{ env.COVERAGE_THRESHOLD_UNIT }}\" | bc -l) )); then\n echo \"โ ่ก่ฆ็็ $LINES_PCT% ไฝไบ้ๅผ ${{ env.COVERAGE_THRESHOLD_UNIT }}%\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\n fi\n\n echo \"โ
่ฆ็็ๆฃๆฅ้่ฟ\"\n echo \"coverage_pass=true\" >> $GITHUB_OUTPUT\nelse\n echo \"โ ๏ธ ๆชๆพๅฐ่ฆ็็ๆฅๅ\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\nfi\n"
- if: always()
name: ็ๆ่ฆ็็ๅพฝ็ซ
run: |
COVERAGE="${{ steps.coverage-check.outputs.lines_pct }}"
if [ -z "$COVERAGE" ]; then
COVERAGE="0"
fi
# ็กฎๅฎ้ข่ฒ
if (( $(echo "$COVERAGE >= 80" | bc -l) )); then
COLOR="brightgreen"
elif (( $(echo "$COVERAGE >= 60" | bc -l) )); then
COLOR="yellow"
else
COLOR="red"
fi
echo "Coverage: $COVERAGE% ($COLOR)"
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v4
with:
name: unit-test-coverage
path: |
backend/coverage/
backend/test-results/
retention-days: "14"
- if: github.event_name == 'pull_request'
name: ่ฏ่ฎบ PR ่ฆ็็
uses: actions/github-script@v7
with:
script: "const coverage = '${{ steps.coverage-check.outputs.lines_pct }}';\nconst threshold = '${{ env.COVERAGE_THRESHOLD_UNIT }}';\nconst passed = '${{ steps.coverage-check.outputs.coverage_pass }}' === 'true';\n\nconst emoji = passed ? 'โ
' : 'โ';\nconst status = passed ? '้่ฟ' : 'ๆช้่ฟ';\n\nconst body = [\n `## ${emoji} ๅๅ
ๆต่ฏ่ฆ็็ๆฅๅ`,\n '',\n '| ๆๆ | ๅฝๅๅผ | ้ๅผ | ็ถๆ |',\n '|------|--------|------|------|',\n `| ่ก่ฆ็็ | ${coverage}% | ${threshold}% | ${status} |`,\n `| ่ฏญๅฅ่ฆ็็ | ${{ steps.coverage-check.outputs.statements_pct }}% | - | - |`,\n `| ๅๆฏ่ฆ็็ | ${{ steps.coverage-check.outputs.branches_pct }}% | - | - |`,\n `| ๅฝๆฐ่ฆ็็ | ${{ steps.coverage-check.outputs.functions_pct }}% | - | - |`,\n '',\n passed ? '\U0001F389 ๆญๅ๏ผๆต่ฏ่ฆ็็่พพๆ ใ' : 'โ ๏ธ ่ฏทๅขๅ ๆต่ฏ็จไพไปฅๆ้ซ่ฆ็็ใ'\n].join('\\n');\n\ngithub.rest.issues.createComment({\n issue_number: context.issue.number,\n owner: context.repo.owner,\n repo: context.repo.repo,\n body: body\n});\n"
timeout-minutes: "30"
...
|
unit-test-coverage
|
null
|
["ubuntu-latest"]
|
7557
|
2
|
1774221384
|
1774221401
|
1774220986
|
1774221401
|
|
0
|
|
0
|
Edit
Delete
|
|
8850
|
7252
|
6
|
5
|
80c2bdb2f93a19aa53d16ded06387b70c6084bf8
|
0
|
๐ ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ
|
1
|
name: Code Quality Gate
"on":
push:
name: Code Quality Gate
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
strict_mode:
description: 'ไธฅๆ ผๆจกๅผ๏ผๅคฑ่ดฅๅณ้ปๆญขๅๅนถ๏ผ'
required: false
default: true
type: boolean
env:
COVERAGE_THRESHOLD_E2E: "60"
COVERAGE_THRESHOLD_INTEGRATION: "70"
COVERAGE_THRESHOLD_UNIT: "80"
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-test-coverage:
name: "\U0001F4CA ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏๅนถ็ๆ่ฆ็็
run: |
cd backend
npm run test:coverage
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- id: coverage-check
name: ๆฃๆฅ่ฆ็็้ๅผ
run: "cd backend\nif [ -f \"coverage/coverage-summary.json\" ]; then\n LINES_PCT=$(cat coverage/coverage-summary.json | jq '.total.lines.pct')\n STATEMENTS_PCT=$(cat coverage/coverage-summary.json | jq '.total.statements.pct')\n BRANCHES_PCT=$(cat coverage/coverage-summary.json | jq '.total.branches.pct')\n FUNCTIONS_PCT=$(cat coverage/coverage-summary.json | jq '.total.functions.pct')\n\n echo \"\U0001F4CA ่ฆ็็ๆฅๅ๏ผ\"\n echo \" - ่ก่ฆ็็: $LINES_PCT%\"\n echo \" - ่ฏญๅฅ่ฆ็็: $STATEMENTS_PCT%\"\n echo \" - ๅๆฏ่ฆ็็: $BRANCHES_PCT%\"\n echo \" - ๅฝๆฐ่ฆ็็: $FUNCTIONS_PCT%\"\n\n echo \"lines_pct=$LINES_PCT\" >> $GITHUB_OUTPUT\n echo \"statements_pct=$STATEMENTS_PCT\" >> $GITHUB_OUTPUT\n echo \"branches_pct=$BRANCHES_PCT\" >> $GITHUB_OUTPUT\n echo \"functions_pct=$FUNCTIONS_PCT\" >> $GITHUB_OUTPUT\n\n # ๆฃๆฅๆฏๅฆ่พพๅฐ้ๅผ๏ผไฝฟ็จ่ก่ฆ็็ไฝไธบไธป่ฆๆๆ ๏ผ\n if (( $(echo \"$LINES_PCT < ${{ env.COVERAGE_THRESHOLD_UNIT }}\" | bc -l) )); then\n echo \"โ ่ก่ฆ็็ $LINES_PCT% ไฝไบ้ๅผ ${{ env.COVERAGE_THRESHOLD_UNIT }}%\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\n fi\n\n echo \"โ
่ฆ็็ๆฃๆฅ้่ฟ\"\n echo \"coverage_pass=true\" >> $GITHUB_OUTPUT\nelse\n echo \"โ ๏ธ ๆชๆพๅฐ่ฆ็็ๆฅๅ\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\nfi\n"
- if: always()
name: ็ๆ่ฆ็็ๅพฝ็ซ
run: |
COVERAGE="${{ steps.coverage-check.outputs.lines_pct }}"
if [ -z "$COVERAGE" ]; then
COVERAGE="0"
fi
# ็กฎๅฎ้ข่ฒ
if (( $(echo "$COVERAGE >= 80" | bc -l) )); then
COLOR="brightgreen"
elif (( $(echo "$COVERAGE >= 60" | bc -l) )); then
COLOR="yellow"
else
COLOR="red"
fi
echo "Coverage: $COVERAGE% ($COLOR)"
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v4
with:
name: unit-test-coverage
path: |
backend/coverage/
backend/test-results/
retention-days: "14"
- if: github.event_name == 'pull_request'
name: ่ฏ่ฎบ PR ่ฆ็็
uses: actions/github-script@v7
with:
script: "const coverage = '${{ steps.coverage-check.outputs.lines_pct }}';\nconst threshold = '${{ env.COVERAGE_THRESHOLD_UNIT }}';\nconst passed = '${{ steps.coverage-check.outputs.coverage_pass }}' === 'true';\n\nconst emoji = passed ? 'โ
' : 'โ';\nconst status = passed ? '้่ฟ' : 'ๆช้่ฟ';\n\nconst body = [\n `## ${emoji} ๅๅ
ๆต่ฏ่ฆ็็ๆฅๅ`,\n '',\n '| ๆๆ | ๅฝๅๅผ | ้ๅผ | ็ถๆ |',\n '|------|--------|------|------|',\n `| ่ก่ฆ็็ | ${coverage}% | ${threshold}% | ${status} |`,\n `| ่ฏญๅฅ่ฆ็็ | ${{ steps.coverage-check.outputs.statements_pct }}% | - | - |`,\n `| ๅๆฏ่ฆ็็ | ${{ steps.coverage-check.outputs.branches_pct }}% | - | - |`,\n `| ๅฝๆฐ่ฆ็็ | ${{ steps.coverage-check.outputs.functions_pct }}% | - | - |`,\n '',\n passed ? '\U0001F389 ๆญๅ๏ผๆต่ฏ่ฆ็็่พพๆ ใ' : 'โ ๏ธ ่ฏทๅขๅ ๆต่ฏ็จไพไปฅๆ้ซ่ฆ็็ใ'\n].join('\\n');\n\ngithub.rest.issues.createComment({\n issue_number: context.issue.number,\n owner: context.repo.owner,\n repo: context.repo.repo,\n body: body\n});\n"
timeout-minutes: "30"
...
|
unit-test-coverage
|
null
|
["ubuntu-latest"]
|
7625
|
2
|
1774223318
|
1774223335
|
1774223021
|
1774223335
|
|
0
|
|
0
|
Edit
Delete
|
|
8921
|
7264
|
6
|
5
|
df7b6f46170cb46db4771dd1e07991b0b13d90a0
|
0
|
๐ ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ
|
1
|
name: Code Quality Gate
"on":
push:
name: Code Quality Gate
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
strict_mode:
description: 'ไธฅๆ ผๆจกๅผ๏ผๅคฑ่ดฅๅณ้ปๆญขๅๅนถ๏ผ'
required: false
default: true
type: boolean
env:
COVERAGE_THRESHOLD_E2E: "60"
COVERAGE_THRESHOLD_INTEGRATION: "70"
COVERAGE_THRESHOLD_UNIT: "80"
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-test-coverage:
name: "\U0001F4CA ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏๅนถ็ๆ่ฆ็็
run: |
cd backend
npm run test:coverage
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- id: coverage-check
name: ๆฃๆฅ่ฆ็็้ๅผ
run: "cd backend\nif [ -f \"coverage/coverage-summary.json\" ]; then\n LINES_PCT=$(cat coverage/coverage-summary.json | jq '.total.lines.pct')\n STATEMENTS_PCT=$(cat coverage/coverage-summary.json | jq '.total.statements.pct')\n BRANCHES_PCT=$(cat coverage/coverage-summary.json | jq '.total.branches.pct')\n FUNCTIONS_PCT=$(cat coverage/coverage-summary.json | jq '.total.functions.pct')\n\n echo \"\U0001F4CA ่ฆ็็ๆฅๅ๏ผ\"\n echo \" - ่ก่ฆ็็: $LINES_PCT%\"\n echo \" - ่ฏญๅฅ่ฆ็็: $STATEMENTS_PCT%\"\n echo \" - ๅๆฏ่ฆ็็: $BRANCHES_PCT%\"\n echo \" - ๅฝๆฐ่ฆ็็: $FUNCTIONS_PCT%\"\n\n echo \"lines_pct=$LINES_PCT\" >> $GITHUB_OUTPUT\n echo \"statements_pct=$STATEMENTS_PCT\" >> $GITHUB_OUTPUT\n echo \"branches_pct=$BRANCHES_PCT\" >> $GITHUB_OUTPUT\n echo \"functions_pct=$FUNCTIONS_PCT\" >> $GITHUB_OUTPUT\n\n # ๆฃๆฅๆฏๅฆ่พพๅฐ้ๅผ๏ผไฝฟ็จ่ก่ฆ็็ไฝไธบไธป่ฆๆๆ ๏ผ\n if (( $(echo \"$LINES_PCT < ${{ env.COVERAGE_THRESHOLD_UNIT }}\" | bc -l) )); then\n echo \"โ ่ก่ฆ็็ $LINES_PCT% ไฝไบ้ๅผ ${{ env.COVERAGE_THRESHOLD_UNIT }}%\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\n fi\n\n echo \"โ
่ฆ็็ๆฃๆฅ้่ฟ\"\n echo \"coverage_pass=true\" >> $GITHUB_OUTPUT\nelse\n echo \"โ ๏ธ ๆชๆพๅฐ่ฆ็็ๆฅๅ\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\nfi\n"
- if: always()
name: ็ๆ่ฆ็็ๅพฝ็ซ
run: |
COVERAGE="${{ steps.coverage-check.outputs.lines_pct }}"
if [ -z "$COVERAGE" ]; then
COVERAGE="0"
fi
# ็กฎๅฎ้ข่ฒ
if (( $(echo "$COVERAGE >= 80" | bc -l) )); then
COLOR="brightgreen"
elif (( $(echo "$COVERAGE >= 60" | bc -l) )); then
COLOR="yellow"
else
COLOR="red"
fi
echo "Coverage: $COVERAGE% ($COLOR)"
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v4
with:
name: unit-test-coverage
path: |
backend/coverage/
backend/test-results/
retention-days: "14"
- if: github.event_name == 'pull_request'
name: ่ฏ่ฎบ PR ่ฆ็็
uses: actions/github-script@v7
with:
script: "const coverage = '${{ steps.coverage-check.outputs.lines_pct }}';\nconst threshold = '${{ env.COVERAGE_THRESHOLD_UNIT }}';\nconst passed = '${{ steps.coverage-check.outputs.coverage_pass }}' === 'true';\n\nconst emoji = passed ? 'โ
' : 'โ';\nconst status = passed ? '้่ฟ' : 'ๆช้่ฟ';\n\nconst body = [\n `## ${emoji} ๅๅ
ๆต่ฏ่ฆ็็ๆฅๅ`,\n '',\n '| ๆๆ | ๅฝๅๅผ | ้ๅผ | ็ถๆ |',\n '|------|--------|------|------|',\n `| ่ก่ฆ็็ | ${coverage}% | ${threshold}% | ${status} |`,\n `| ่ฏญๅฅ่ฆ็็ | ${{ steps.coverage-check.outputs.statements_pct }}% | - | - |`,\n `| ๅๆฏ่ฆ็็ | ${{ steps.coverage-check.outputs.branches_pct }}% | - | - |`,\n `| ๅฝๆฐ่ฆ็็ | ${{ steps.coverage-check.outputs.functions_pct }}% | - | - |`,\n '',\n passed ? '\U0001F389 ๆญๅ๏ผๆต่ฏ่ฆ็็่พพๆ ใ' : 'โ ๏ธ ่ฏทๅขๅ ๆต่ฏ็จไพไปฅๆ้ซ่ฆ็็ใ'\n].join('\\n');\n\ngithub.rest.issues.createComment({\n issue_number: context.issue.number,\n owner: context.repo.owner,\n repo: context.repo.repo,\n body: body\n});\n"
timeout-minutes: "30"
...
|
unit-test-coverage
|
null
|
["ubuntu-latest"]
|
7686
|
2
|
1774223813
|
1774223830
|
1774223518
|
1774223831
|
|
0
|
|
0
|
Edit
Delete
|
|
9025
|
7294
|
6
|
5
|
339ea969ec2633756fb1a155d47723d0f61396a4
|
0
|
๐ ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ
|
1
|
name: Code Quality Gate
"on":
push:
name: Code Quality Gate
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
strict_mode:
description: 'ไธฅๆ ผๆจกๅผ๏ผๅคฑ่ดฅๅณ้ปๆญขๅๅนถ๏ผ'
required: false
default: true
type: boolean
env:
COVERAGE_THRESHOLD_E2E: "60"
COVERAGE_THRESHOLD_INTEGRATION: "70"
COVERAGE_THRESHOLD_UNIT: "80"
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-test-coverage:
name: "\U0001F4CA ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏๅนถ็ๆ่ฆ็็
run: |
cd backend
npm run test:coverage
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- id: coverage-check
name: ๆฃๆฅ่ฆ็็้ๅผ
run: "cd backend\nif [ -f \"coverage/coverage-summary.json\" ]; then\n LINES_PCT=$(cat coverage/coverage-summary.json | jq '.total.lines.pct')\n STATEMENTS_PCT=$(cat coverage/coverage-summary.json | jq '.total.statements.pct')\n BRANCHES_PCT=$(cat coverage/coverage-summary.json | jq '.total.branches.pct')\n FUNCTIONS_PCT=$(cat coverage/coverage-summary.json | jq '.total.functions.pct')\n\n echo \"\U0001F4CA ่ฆ็็ๆฅๅ๏ผ\"\n echo \" - ่ก่ฆ็็: $LINES_PCT%\"\n echo \" - ่ฏญๅฅ่ฆ็็: $STATEMENTS_PCT%\"\n echo \" - ๅๆฏ่ฆ็็: $BRANCHES_PCT%\"\n echo \" - ๅฝๆฐ่ฆ็็: $FUNCTIONS_PCT%\"\n\n echo \"lines_pct=$LINES_PCT\" >> $GITHUB_OUTPUT\n echo \"statements_pct=$STATEMENTS_PCT\" >> $GITHUB_OUTPUT\n echo \"branches_pct=$BRANCHES_PCT\" >> $GITHUB_OUTPUT\n echo \"functions_pct=$FUNCTIONS_PCT\" >> $GITHUB_OUTPUT\n\n # ๆฃๆฅๆฏๅฆ่พพๅฐ้ๅผ๏ผไฝฟ็จ่ก่ฆ็็ไฝไธบไธป่ฆๆๆ ๏ผ\n if (( $(echo \"$LINES_PCT < ${{ env.COVERAGE_THRESHOLD_UNIT }}\" | bc -l) )); then\n echo \"โ ่ก่ฆ็็ $LINES_PCT% ไฝไบ้ๅผ ${{ env.COVERAGE_THRESHOLD_UNIT }}%\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\n fi\n\n echo \"โ
่ฆ็็ๆฃๆฅ้่ฟ\"\n echo \"coverage_pass=true\" >> $GITHUB_OUTPUT\nelse\n echo \"โ ๏ธ ๆชๆพๅฐ่ฆ็็ๆฅๅ\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\nfi\n"
- if: always()
name: ็ๆ่ฆ็็ๅพฝ็ซ
run: |
COVERAGE="${{ steps.coverage-check.outputs.lines_pct }}"
if [ -z "$COVERAGE" ]; then
COVERAGE="0"
fi
# ็กฎๅฎ้ข่ฒ
if (( $(echo "$COVERAGE >= 80" | bc -l) )); then
COLOR="brightgreen"
elif (( $(echo "$COVERAGE >= 60" | bc -l) )); then
COLOR="yellow"
else
COLOR="red"
fi
echo "Coverage: $COVERAGE% ($COLOR)"
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v4
with:
name: unit-test-coverage
path: |
backend/coverage/
backend/test-results/
retention-days: "14"
- if: github.event_name == 'pull_request'
name: ่ฏ่ฎบ PR ่ฆ็็
uses: actions/github-script@v7
with:
script: "const coverage = '${{ steps.coverage-check.outputs.lines_pct }}';\nconst threshold = '${{ env.COVERAGE_THRESHOLD_UNIT }}';\nconst passed = '${{ steps.coverage-check.outputs.coverage_pass }}' === 'true';\n\nconst emoji = passed ? 'โ
' : 'โ';\nconst status = passed ? '้่ฟ' : 'ๆช้่ฟ';\n\nconst body = [\n `## ${emoji} ๅๅ
ๆต่ฏ่ฆ็็ๆฅๅ`,\n '',\n '| ๆๆ | ๅฝๅๅผ | ้ๅผ | ็ถๆ |',\n '|------|--------|------|------|',\n `| ่ก่ฆ็็ | ${coverage}% | ${threshold}% | ${status} |`,\n `| ่ฏญๅฅ่ฆ็็ | ${{ steps.coverage-check.outputs.statements_pct }}% | - | - |`,\n `| ๅๆฏ่ฆ็็ | ${{ steps.coverage-check.outputs.branches_pct }}% | - | - |`,\n `| ๅฝๆฐ่ฆ็็ | ${{ steps.coverage-check.outputs.functions_pct }}% | - | - |`,\n '',\n passed ? '\U0001F389 ๆญๅ๏ผๆต่ฏ่ฆ็็่พพๆ ใ' : 'โ ๏ธ ่ฏทๅขๅ ๆต่ฏ็จไพไปฅๆ้ซ่ฆ็็ใ'\n].join('\\n');\n\ngithub.rest.issues.createComment({\n issue_number: context.issue.number,\n owner: context.repo.owner,\n repo: context.repo.repo,\n body: body\n});\n"
timeout-minutes: "30"
...
|
unit-test-coverage
|
null
|
["ubuntu-latest"]
|
7775
|
2
|
1774229461
|
1774229480
|
1774229064
|
1774229480
|
|
0
|
|
0
|
Edit
Delete
|
|
9232
|
7420
|
6
|
5
|
67078f9a95f53530156ad27027eafe15a3126e89
|
0
|
๐ ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ
|
1
|
name: Code Quality Gate
"on":
push:
name: Code Quality Gate
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
strict_mode:
description: 'ไธฅๆ ผๆจกๅผ๏ผๅคฑ่ดฅๅณ้ปๆญขๅๅนถ๏ผ'
required: false
default: true
type: boolean
env:
COVERAGE_THRESHOLD_E2E: "60"
COVERAGE_THRESHOLD_INTEGRATION: "70"
COVERAGE_THRESHOLD_UNIT: "80"
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-test-coverage:
name: "\U0001F4CA ๅๅ
ๆต่ฏ่ฆ็็้จ็ฆ"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏๅนถ็ๆ่ฆ็็
run: |
cd backend
npm run test:coverage
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- id: coverage-check
name: ๆฃๆฅ่ฆ็็้ๅผ
run: "cd backend\nif [ -f \"coverage/coverage-summary.json\" ]; then\n LINES_PCT=$(cat coverage/coverage-summary.json | jq '.total.lines.pct')\n STATEMENTS_PCT=$(cat coverage/coverage-summary.json | jq '.total.statements.pct')\n BRANCHES_PCT=$(cat coverage/coverage-summary.json | jq '.total.branches.pct')\n FUNCTIONS_PCT=$(cat coverage/coverage-summary.json | jq '.total.functions.pct')\n\n echo \"\U0001F4CA ่ฆ็็ๆฅๅ๏ผ\"\n echo \" - ่ก่ฆ็็: $LINES_PCT%\"\n echo \" - ่ฏญๅฅ่ฆ็็: $STATEMENTS_PCT%\"\n echo \" - ๅๆฏ่ฆ็็: $BRANCHES_PCT%\"\n echo \" - ๅฝๆฐ่ฆ็็: $FUNCTIONS_PCT%\"\n\n echo \"lines_pct=$LINES_PCT\" >> $GITHUB_OUTPUT\n echo \"statements_pct=$STATEMENTS_PCT\" >> $GITHUB_OUTPUT\n echo \"branches_pct=$BRANCHES_PCT\" >> $GITHUB_OUTPUT\n echo \"functions_pct=$FUNCTIONS_PCT\" >> $GITHUB_OUTPUT\n\n # ๆฃๆฅๆฏๅฆ่พพๅฐ้ๅผ๏ผไฝฟ็จ่ก่ฆ็็ไฝไธบไธป่ฆๆๆ ๏ผ\n if (( $(echo \"$LINES_PCT < ${{ env.COVERAGE_THRESHOLD_UNIT }}\" | bc -l) )); then\n echo \"โ ่ก่ฆ็็ $LINES_PCT% ไฝไบ้ๅผ ${{ env.COVERAGE_THRESHOLD_UNIT }}%\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\n fi\n\n echo \"โ
่ฆ็็ๆฃๆฅ้่ฟ\"\n echo \"coverage_pass=true\" >> $GITHUB_OUTPUT\nelse\n echo \"โ ๏ธ ๆชๆพๅฐ่ฆ็็ๆฅๅ\"\n echo \"coverage_pass=false\" >> $GITHUB_OUTPUT\n exit 1\nfi\n"
- if: always()
name: ็ๆ่ฆ็็ๅพฝ็ซ
run: |
COVERAGE="${{ steps.coverage-check.outputs.lines_pct }}"
if [ -z "$COVERAGE" ]; then
COVERAGE="0"
fi
# ็กฎๅฎ้ข่ฒ
if (( $(echo "$COVERAGE >= 80" | bc -l) )); then
COLOR="brightgreen"
elif (( $(echo "$COVERAGE >= 60" | bc -l) )); then
COLOR="yellow"
else
COLOR="red"
fi
echo "Coverage: $COVERAGE% ($COLOR)"
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v4
with:
name: unit-test-coverage
path: |
backend/coverage/
backend/test-results/
retention-days: "14"
- if: github.event_name == 'pull_request'
name: ่ฏ่ฎบ PR ่ฆ็็
uses: actions/github-script@v7
with:
script: "const coverage = '${{ steps.coverage-check.outputs.lines_pct }}';\nconst threshold = '${{ env.COVERAGE_THRESHOLD_UNIT }}';\nconst passed = '${{ steps.coverage-check.outputs.coverage_pass }}' === 'true';\n\nconst emoji = passed ? 'โ
' : 'โ';\nconst status = passed ? '้่ฟ' : 'ๆช้่ฟ';\n\nconst body = [\n `## ${emoji} ๅๅ
ๆต่ฏ่ฆ็็ๆฅๅ`,\n '',\n '| ๆๆ | ๅฝๅๅผ | ้ๅผ | ็ถๆ |',\n '|------|--------|------|------|',\n `| ่ก่ฆ็็ | ${coverage}% | ${threshold}% | ${status} |`,\n `| ่ฏญๅฅ่ฆ็็ | ${{ steps.coverage-check.outputs.statements_pct }}% | - | - |`,\n `| ๅๆฏ่ฆ็็ | ${{ steps.coverage-check.outputs.branches_pct }}% | - | - |`,\n `| ๅฝๆฐ่ฆ็็ | ${{ steps.coverage-check.outputs.functions_pct }}% | - | - |`,\n '',\n passed ? '\U0001F389 ๆญๅ๏ผๆต่ฏ่ฆ็็่พพๆ ใ' : 'โ ๏ธ ่ฏทๅขๅ ๆต่ฏ็จไพไปฅๆ้ซ่ฆ็็ใ'\n].join('\\n');\n\ngithub.rest.issues.createComment({\n issue_number: context.issue.number,\n owner: context.repo.owner,\n repo: context.repo.repo,\n body: body\n});\n"
timeout-minutes: "30"
...
|
unit-test-coverage
|
null
|
["ubuntu-latest"]
|
7967
|
2
|
1774263020
|
1774263038
|
1774262378
|
1774263038
|
|
0
|
|
0
|
Edit
Delete
|
|
88
|
44
|
6
|
5
|
89209aba1afe21133399ce0db0a47c2729c9a4b4
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
0
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1771862412
|
1771862389
|
1771862412
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
124
|
48
|
6
|
5
|
a7c22fc0f5e2d113210bb58646dcdbf7381be245
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
0
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1771862495
|
1771862412
|
1771862495
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
158
|
50
|
6
|
5
|
e15e357a819170a89dbcfd25fe33ea58972ae0ff
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
0
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1771862518
|
1771862496
|
1771862518
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
192
|
52
|
6
|
5
|
c8adeb7142f7f1b57a10bfffc3de856524997227
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
0
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1771862651
|
1771862519
|
1771862651
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
226
|
54
|
6
|
5
|
7145a8553a880d8a94356baf7bcb4e2df4631e61
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
1
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
41
|
3
|
1771862764
|
1771862765
|
1771862652
|
1771862765
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
261
|
57
|
6
|
5
|
343b38f6bfbbd7d44a1387e1351700df68013555
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
1
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
44
|
3
|
1771862813
|
1771862814
|
1771862765
|
1771862814
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
295
|
59
|
6
|
5
|
18a5bb9c67c571fc2cad6ffe61e70633bcec36a8
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
0
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1771862907
|
1771862814
|
1771862907
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
329
|
61
|
6
|
5
|
f8a1588d13917a22d3710214cee7468768c4490e
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
0
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1771862930
|
1771862907
|
1771862930
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
363
|
63
|
6
|
5
|
4e9a26e0e1c15538f2a6f033748340bb62b02af2
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
1
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
48
|
3
|
1771862945
|
1771862945
|
1771862931
|
1771862945
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
397
|
65
|
6
|
5
|
546659ec60e857bdf77619972d1b3e4333b621ac
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
1
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
51
|
3
|
1771863008
|
1771863032
|
1771862946
|
1771863032
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
432
|
68
|
6
|
5
|
14c4cca40c3b21a5247fd9117fc9af829acc8ea7
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
1
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
55
|
3
|
1771863095
|
1771863141
|
1771863033
|
1771863141
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
466
|
70
|
6
|
5
|
07ea713c1feff2e0f7d2b91d5ca68f2e0140a963
|
0
|
ๅๅ
ๆต่ฏ & ่ฆ็็
|
1
|
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
name: ๆทฑๅบฆๅฎๆดๅ
จ้ข่ชๅจๅๆต่ฏ
"on":
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
schedule:
# ๆฏๅคฉๅๆจ 2 ็น่ฟ่กๅฎๆดๆต่ฏ
- cron: '0 2 * * *'
env:
NODE_VERSION: "18"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ & ่ฆ็็
runs-on: ubuntu-latest
steps:
- name: Checkout ไปฃ็
uses: actions/checkout@v3
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: cd backend && pnpm test:unit:coverage
- name: ็ๆ่ฆ็็ๆฅๅ
run: cd backend && pnpm test:coverage:json
- name: ไธไผ ่ฆ็็ๅฐ Codecov
uses: codecov/codecov-action@v3
with:
files: ./backend/coverage/lcov.info
flags: unittests
name: unit-coverage
- name: ๆฃๆฅ่ฆ็็้ๅผ
run: |
cd backend
COVERAGE=$(jq '.total.lines.pct' coverage/coverage.json)
echo "ๅฝๅ่ฆ็็: $COVERAGE%"
if (( $(echo "$COVERAGE < 85" | bc -l) )); then
echo "โ ่ฆ็็ไฝไบ 85%"
exit 1
fi
echo "โ
่ฆ็็่พพๆ "
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v3
with:
name: unit-test-results
path: backend/test-results/
- if: always()
name: ไธไผ ่ฆ็็ๆฅๅ
uses: actions/upload-artifact@v3
with:
name: unit-coverage-report
path: backend/coverage/
timeout-minutes: "15"
...
|
unit-tests
|
null
|
["ubuntu-latest"]
|
56
|
2
|
1771863178
|
1771863352
|
1771863142
|
1771863352
|
NULL
|
NULL
|
|
0
|
Edit
Delete
|
|
7852
|
6705
|
6
|
5
|
e112d45af414e4862c0328abad7c4df74d3c1dbf
|
0
|
ๅๅ
ๆต่ฏ
|
0
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1773832745
|
1773831750
|
1773832745
|
|
1
|
|
0
|
Edit
Delete
|
|
7914
|
6715
|
6
|
5
|
b7eb415d7a9689f1efec941bcb2dcd7d098e9c28
|
0
|
ๅๅ
ๆต่ฏ
|
1
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
6804
|
2
|
1773833288
|
1773833303
|
1773832746
|
1773833303
|
|
1
|
|
0
|
Edit
Delete
|
|
8277
|
6998
|
6
|
5
|
bd59e5501292cb061719f669c7a7b7afd4f1a0b7
|
0
|
ๅๅ
ๆต่ฏ
|
0
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1773913346
|
1773912914
|
1773913346
|
|
0
|
|
0
|
Edit
Delete
|
|
8335
|
7006
|
6
|
5
|
01a8ea9191c28b210d2abb3db3cbc65db42fc801
|
0
|
ๅๅ
ๆต่ฏ
|
1
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
7174
|
4
|
1773914195
|
1773914195
|
1773913347
|
1773914196
|
|
1
|
|
0
|
Edit
Delete
|
|
8470
|
7071
|
6
|
5
|
9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f
|
0
|
ๅๅ
ๆต่ฏ
|
1
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
7294
|
2
|
1773929920
|
1773929935
|
1773929409
|
1773929936
|
|
1
|
|
0
|
Edit
Delete
|
|
8579
|
7116
|
6
|
5
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
ๅๅ
ๆต่ฏ
|
1
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
7393
|
2
|
1773940729
|
1773940744
|
1773939781
|
1773940744
|
|
1
|
|
0
|
Edit
Delete
|
|
8768
|
7234
|
6
|
5
|
0900b15d607e5c78f97fec16a73357ad4f814390
|
0
|
ๅๅ
ๆต่ฏ
|
1
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
7573
|
2
|
1774221724
|
1774221754
|
1774220986
|
1774221755
|
|
1
|
|
0
|
Edit
Delete
|
|
8844
|
7251
|
6
|
5
|
80c2bdb2f93a19aa53d16ded06387b70c6084bf8
|
0
|
ๅๅ
ๆต่ฏ
|
1
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
7638
|
4
|
1774223411
|
1774223412
|
1774223021
|
1774223412
|
|
1
|
|
0
|
Edit
Delete
|
|
8915
|
7263
|
6
|
5
|
df7b6f46170cb46db4771dd1e07991b0b13d90a0
|
0
|
ๅๅ
ๆต่ฏ
|
1
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
7699
|
4
|
1774223907
|
1774223907
|
1774223518
|
1774223908
|
|
1
|
|
0
|
Edit
Delete
|
|
9019
|
7293
|
6
|
5
|
339ea969ec2633756fb1a155d47723d0f61396a4
|
0
|
ๅๅ
ๆต่ฏ
|
1
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
7791
|
2
|
1774229570
|
1774229586
|
1774229064
|
1774229587
|
|
1
|
|
0
|
Edit
Delete
|
|
9226
|
7419
|
6
|
5
|
67078f9a95f53530156ad27027eafe15a3126e89
|
0
|
ๅๅ
ๆต่ฏ
|
1
|
name: Integration Tests
"on":
push:
name: Integration Tests
"on":
push:
branches: [main, develop, 'feature/**', 'claude/**']
pull_request:
branches: [main, develop]
workflow_dispatch:
inputs:
run_all_tests:
description: '่ฟ่กๆๆ้ๆๆต่ฏ๏ผๅ
ๆฌๆ
ข้ๆต่ฏ๏ผ'
required: false
default: 'false'
type: boolean
env:
NODE_VERSION: "20"
PNPM_VERSION: "8"
jobs:
unit-tests:
name: ๅๅ
ๆต่ฏ
runs-on: ubuntu-latest
if: needs.detect-changes.outputs.backend == 'true'
steps:
- uses: actions/checkout@v4
- name: ๅฎ่ฃ
pnpm
uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- name: ่ฎพ็ฝฎ Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- name: ๅฎ่ฃ
ไพ่ต
run: pnpm install --frozen-lockfile
- name: ๆๅปบๅ
ฑไบซๅ
run: pnpm --filter @juhi/shared run build
- name: ็ๆ Prisma Client
run: pnpm --filter juhi-api run db:generate
- name: ่ฟ่กๅๅ
ๆต่ฏ
run: pnpm --filter juhi-api run test:unit
env:
NODE_ENV: test
JWT_SECRET: test-jwt-secret
JWT_REFRESH_SECRET: test-jwt-refresh-secret
- if: always()
name: ไธไผ ๆต่ฏ็ปๆ
uses: actions/upload-artifact@v4
with:
name: unit-test-results
path: backend/test-results/
retention-days: "7"
...
|
unit-tests
|
["detect-changes"]
|
["ubuntu-latest"]
|
7985
|
2
|
1774263622
|
1774263638
|
1774262378
|
1774263639
|
|
1
|
|
0
|
Edit
Delete
|
|
30136
|
22804
|
6
|
5
|
b4ec9515ccfba2b467d898fa5734681cbe1d678d
|
0
|
Unit Tests
|
0
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
PNPM_VERSION: "9"
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
with:
version: ${{ env.PNPM_VERSION }}
- uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
0
|
4
|
0
|
0
|
1778721615
|
1778721674
|
|
1
|
|
0
|
Edit
Delete
|
|
30140
|
22805
|
6
|
5
|
a46d1a8248b62d039fbdf3815bc192399beb6ce5
|
0
|
Unit Tests
|
0
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
0
|
4
|
0
|
0
|
1778721836
|
1778722472
|
|
1
|
|
0
|
Edit
Delete
|
|
30147
|
22809
|
6
|
5
|
43427343b191153e949defea09c04fa62f6fec03
|
0
|
Unit Tests
|
0
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
0
|
4
|
0
|
0
|
1778722740
|
1778725648
|
|
1
|
|
0
|
Edit
Delete
|
|
30171
|
22830
|
6
|
5
|
08f51562350c2fde731d1c15574e165eb1ba2246
|
0
|
Unit Tests
|
0
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
0
|
4
|
0
|
0
|
1778728631
|
1778737417
|
|
1
|
|
0
|
Edit
Delete
|
|
30446
|
23095
|
6
|
5
|
adbaa604f38b6cd3e55859ac5b2f5dd4931b3d4a
|
0
|
Unit Tests
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26612
|
2
|
1778816848
|
1778817239
|
1778815337
|
1778817239
|
|
1
|
|
0
|
Edit
Delete
|
|
30495
|
23141
|
6
|
5
|
230f7616b5f0876ecd095ffd76c841876a8381ce
|
0
|
Unit Tests
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26659
|
2
|
1778830504
|
1778830902
|
1778828542
|
1778830902
|
|
1
|
|
0
|
Edit
Delete
|
|
30583
|
23226
|
6
|
5
|
e8e3ea6b39e0d7d48f888052ef823f11e2327271
|
0
|
Unit Tests
|
0
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1778853554
|
1778853215
|
1778853554
|
|
0
|
|
0
|
Edit
Delete
|
|
30589
|
23229
|
6
|
5
|
657482df013e1f2b6926b36a5a37a0dcbc57a77d
|
0
|
Unit Tests
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26751
|
2
|
1778854697
|
1778855114
|
1778853554
|
1778855114
|
|
1
|
|
0
|
Edit
Delete
|
|
30615
|
23252
|
6
|
5
|
7b2b0a68846d02811a69120379a567f86f23cfb6
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26777
|
2
|
1778861239
|
1778861643
|
1778860185
|
1778861643
|
|
1
|
|
0
|
Edit
Delete
|
|
30627
|
23261
|
6
|
5
|
58dfbcbadca38d7a2f0fd6fa5b7ed48281afd735
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26788
|
2
|
1778863423
|
1778863808
|
1778862365
|
1778863808
|
|
1
|
|
0
|
Edit
Delete
|
|
30637
|
23268
|
6
|
5
|
aa3f9e8b4a7ff81e2d629a00345bab76bd22898e
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26799
|
1
|
1778865345
|
1778865729
|
1778864331
|
1778865730
|
|
1
|
|
0
|
Edit
Delete
|
|
30648
|
23276
|
6
|
5
|
2211221970167eb43a3f1402b73ec2f380bd9ca0
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26810
|
1
|
1778867531
|
1778867915
|
1778866507
|
1778867915
|
|
1
|
|
0
|
Edit
Delete
|
|
30727
|
23348
|
6
|
5
|
6b26e758f8b576fb2f910f5bcc25a36635a428bb
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26890
|
1
|
1778889409
|
1778889796
|
1778887102
|
1778889796
|
|
1
|
|
0
|
Edit
Delete
|
|
30748
|
23359
|
6
|
5
|
b58266aad571572bf85ae776d37c43988b9f0a66
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26916
|
1
|
1778895533
|
1778895919
|
1778889918
|
1778895920
|
|
1
|
|
0
|
Edit
Delete
|
|
30759
|
23365
|
6
|
5
|
4bb16bc5f020d52b79a2a0091a8313ef8cbf5d3d
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26918
|
1
|
1778896263
|
1778896654
|
1778891028
|
1778896654
|
|
1
|
|
0
|
Edit
Delete
|
|
30763
|
23366
|
6
|
5
|
095a976491b07c7b0217788dee4cd4aea70c8c0c
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26920
|
1
|
1778897030
|
1778897413
|
1778891428
|
1778897413
|
|
1
|
|
0
|
Edit
Delete
|
|
30767
|
23367
|
6
|
5
|
40eba4256bc04073a7cb6db68db33b3d531b89e2
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26924
|
1
|
1778898834
|
1778899224
|
1778897279
|
1778899224
|
|
1
|
|
0
|
Edit
Delete
|
|
30771
|
23368
|
6
|
5
|
72f9605511c20afc73a9ed71cfe8370253870392
|
0
|
Unit Tests (informational)
|
1
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
26930
|
1
|
1778909523
|
1778909943
|
1778907436
|
1778909943
|
|
1
|
|
0
|
Edit
Delete
|
|
30775
|
23369
|
6
|
5
|
72f9605511c20afc73a9ed71cfe8370253870392
|
0
|
Unit Tests (informational)
|
0
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1778909680
|
1778907499
|
1778909680
|
|
1
|
|
0
|
Edit
Delete
|
|
30779
|
23370
|
6
|
5
|
0bf1c0db6f9af3ddbf538f2c9f2b834a0014fdf8
|
0
|
Unit Tests (informational)
|
0
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1778911115
|
1778909681
|
1778911115
|
|
0
|
|
0
|
Edit
Delete
|
|
30783
|
23371
|
6
|
5
|
132f45128410d630ffc914303de8888a498b7dd4
|
0
|
Unit Tests (informational)
|
0
|
name: CI
"on":
push:
branches: name: CI
"on":
push:
branches: [main]
pull_request:
branches: [main]
env:
NODE_OPTIONS: --max-old-space-size=8192
NODE_VERSION: "20"
jobs:
unit-tests:
name: Unit Tests (informational)
runs-on: ubuntu-latest
steps:
- uses: https://gitea.com/actions/checkout@v4
- uses: https://gitea.com/pnpm/action-setup@v4
- uses: https://gitea.com/actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ env.NODE_VERSION }}
- run: pnpm install --frozen-lockfile --ignore-scripts
- name: Generate Prisma Client
run: pnpm -C backend exec prisma generate
- name: Build shared package
run: pnpm -C shared run build
- name: Run unit tests
run: pnpm -C backend run test:unit
continue-on-error: true
...
|
unit-tests
|
["frontend-typecheck","lint-and-typech ["frontend-typecheck","lint-and-typecheck"]...
|
["ubuntu-latest"]
|
0
|
3
|
0
|
1778911159
|
1778911116
|
1778911159
|
|
0
|
|
0
|
Edit
Delete
|