Merge pull request 'develop' (#5) from develop into main
Some checks failed
Python Test / python-test (push) Failing after 9s

Reviewed-on: #5
This commit is contained in:
ry.yamafuji 2025-12-04 11:43:55 +09:00
commit 9aaca00e9d
2 changed files with 16 additions and 37 deletions

View File

@ -2,10 +2,10 @@ name: Python Test
on:
workflow_dispatch:
pull_request:
push:
branches:
- main
- develop
# - develop
paths:
- 'src/**'
- 'tests/**'
@ -35,6 +35,18 @@ jobs:
run: |
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
id: CoverageReport
if: success() # テスト成功時のみ実行
@ -46,40 +58,6 @@ jobs:
generate_coverage.save_table()
EOF
- name: Generate coverage-report Branch AND README.md
id: generateCoverageReportBranch
if: success() # テスト成功時のみ実行
run: |
# ブランチ存在確認と安全な作成/チェックアウト処理
set -euo pipefail
git fetch --all --prune
# 未追跡ファイルを一時退避coverage.svg, coverage_table.md など)
mkdir -p /tmp/coverage-backup
if [ -f coverage.svg ]; then mv coverage.svg /tmp/coverage-backup/; fi
if [ -f coverage_table.md ]; then mv coverage_table.md /tmp/coverage-backup/; fi
# 1) リモートの 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 switch -c coverage-report --track origin/coverage-report || git checkout -b coverage-report origin/coverage-report
else
git switch coverage-report || git checkout coverage-report
fi
else
echo "Remote branch missing; creating orphan local branch coverage-report"
# 2) リモートに無い場合は orphan で作成
git switch --orphan coverage-report || git checkout --orphan coverage-report
# ワークツリーを初期化
git rm -rf . || true
fi
# 退避したファイルを復元
if [ -f /tmp/coverage-backup/coverage.svg ]; then mv /tmp/coverage-backup/coverage.svg .; fi
if [ -f /tmp/coverage-backup/coverage_table.md ]; then mv /tmp/coverage-backup/coverage_table.md .; fi
- name: Update Readme
id: updateReadme
run: |
@ -102,4 +80,4 @@ jobs:
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git add README.md coverage.svg
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

View File

@ -77,3 +77,4 @@ sh scripts/generate_linter.sh
ruff check . --output-format json --output-file ruff-report.json
```
`--output-file``github`など様々な形式が指定できます