| 62 | |
| 63 | |
| 64 | def get_git_info() -> tuple[str, str]: |
| 65 | release_tag = os.environ.get("RELEASE_TAG", "") |
| 66 | |
| 67 | try: |
| 68 | latest_tag = run("git tag | grep -E '^[0-9]' | sort -V | tail -1") |
| 69 | latest_tag = latest_tag if latest_tag else "" |
| 70 | except subprocess.CalledProcessError: |
| 71 | latest_tag = "" |
| 72 | |
| 73 | git_sha_short = run("git rev-parse --short HEAD") |
| 74 | full_sha = run("git rev-parse HEAD") |
| 75 | project_number = release_tag or latest_tag or git_sha_short |
| 76 | commit_message = ( |
| 77 | f"{project_number} ({full_sha})" |
| 78 | if project_number != git_sha_short |
| 79 | else project_number |
| 80 | ) |
| 81 | |
| 82 | print(f"Project number: {project_number}") |
| 83 | print(f"Commit message: {commit_message}") |
| 84 | return project_number, commit_message |
| 85 | |
| 86 | |
| 87 | def install_doxygen_windows() -> Path: |