pytestの修正

This commit is contained in:
ry.yamafuji 2025-12-04 11:43:24 +09:00
parent ee22bc876d
commit 064767da44

View File

@ -2,10 +2,10 @@ name: Python Test
on: on:
workflow_dispatch: workflow_dispatch:
pull_request: push:
branches: branches:
- main - main
- develop # - develop
paths: paths:
- 'src/**' - 'src/**'
- 'tests/**' - 'tests/**'
@ -35,6 +35,18 @@ jobs:
run: | run: |
pytest --junitxml=pytest.xml --cov-report term-missing --cov=src tests/ | tee pytest-coverage.txt pytest --junitxml=pytest.xml --cov-report term-missing --cov=src tests/ | tee pytest-coverage.txt
- name: Generate coverage-report Branch AND README.md
id: generateCoverageReportBranch
if: success() # テスト成功時のみ実行
run: |
# coverage-report ブランチが存在しない場合は作成 あればチェックアウト
if ! git ls-remote --exit-code origin coverage-report; then
git checkout --orphan coverage-report
git rm -rf . # すべてのファイルを削除
else
git checkout coverage-report
fi
- name: Coverage Report - name: Coverage Report
id: CoverageReport id: CoverageReport
if: success() # テスト成功時のみ実行 if: success() # テスト成功時のみ実行
@ -46,43 +58,6 @@ jobs:
generate_coverage.save_table() generate_coverage.save_table()
EOF EOF
- name: Generate coverage-report Branch AND README.md
id: generateCoverageReportBranch
if: success() # テスト成功時のみ実行
run: |
# ブランチ存在確認と安全な作成/チェックアウト処理
set -euo pipefail
# 必要なファイルを一時退避
mkdir -p /tmp/coverage-backup
cp coverage.svg /tmp/coverage-backup/
cp coverage_table.md /tmp/coverage-backup/
# リモート情報を取得
git fetch --all --prune
# coverage-report ブランチへ切り替え
if git ls-remote --exit-code origin coverage-report >/dev/null 2>&1; then
echo "Remote branch exists: origin/coverage-report"
if ! git rev-parse --verify coverage-report >/dev/null 2>&1; then
git checkout -b coverage-report origin/coverage-report
else
git checkout coverage-report
fi
# 既存ファイルをクリアREADME.mdとcoverage.svgのみ残す
git rm -rf . || true
git clean -fdx
else
echo "Remote branch missing; creating orphan local branch coverage-report"
git checkout --orphan coverage-report
git rm -rf . || true
git clean -fdx
fi
# 退避したファイルを復元
cp /tmp/coverage-backup/coverage.svg .
cp /tmp/coverage-backup/coverage_table.md .
- name: Update Readme - name: Update Readme
id: updateReadme id: updateReadme
run: | run: |
@ -105,4 +80,4 @@ jobs:
git config --global user.email "github-actions[bot]@users.noreply.github.com" git config --global user.email "github-actions[bot]@users.noreply.github.com"
git add README.md coverage.svg git add README.md coverage.svg
git commit -m "Update coverage report" git commit -m "Update coverage report"
git push https://actions-bot:${{ secrets.GITEA_TOKEN }}@gitea.pglikers.com/data-science/cloud-run-job-base.git coverage-report --force git push https://actions-bot:${{ secrets.CICD_GITEA_TOKEN }}@gitea.pglikers.com/data-science/cloud-run-job-base.git coverage-report --force