From 724ba0557ac1c685247471b72f36dda541a71380 Mon Sep 17 00:00:00 2001 From: Joachim Jablon Date: Sun, 26 Sep 2021 02:30:25 +0200 Subject: [PATCH] Fix diff detection on wiki --- src/add-to-wiki | 8 +++++--- src/entrypoint | 15 ++++++++++----- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/src/add-to-wiki b/src/add-to-wiki index 72bde66..18bcfaa 100755 --- a/src/add-to-wiki +++ b/src/add-to-wiki @@ -16,13 +16,15 @@ cd $dir git clone "https://${GITHUB_TOKEN}@github.com/${repo_name}.wiki.git" . echo $stdin > "${filename}" -if ! git diff --exit-code -then - git add "${filename}" +git add "${filename}" +if ! git diff --staged --exit-code +then git config --global user.email "coverage-comment-action" git config --global user.name "Coverage Comment Action" git commit -m "$commit_message" git push -u origin +else + echo "No change detected, skipping." fi diff --git a/src/entrypoint b/src/entrypoint index 1176cc4..14e444d 100755 --- a/src/entrypoint +++ b/src/entrypoint @@ -25,6 +25,7 @@ def main(): config = Config.from_environ(os.environ) coverage_info = get_coverage_info(config=config) gh = get_api(config=config) + print(f"Operating on {config.GITHUB_REF}") if config.GITHUB_PR_NUMBER: print(f"Commenting on the coverage on PR {config.GITHUB_PR_NUMBER}") diff_coverage_info = get_diff_coverage_info(config=config) @@ -38,7 +39,6 @@ def main(): ) post_comment(body=comment, gh=gh, config=config) - print(config.BADGE_ENABLED, is_main_branch(gh=gh, config=config)) if config.BADGE_ENABLED and is_main_branch(gh=gh, config=config): print("Running on default branch, saving Badge into the repo wiki") badge = compute_badge(coverage_info=coverage_info, config=config) @@ -90,6 +90,13 @@ class Config: return int(self.GITHUB_REF.split("/")[2]) return None + @property + def GITHUB_BRANCH_NAME(self) -> Optional[str]: + # "refs/pull/2/merge" + if self.GITHUB_REF.startswith("refs/heads/"): + return self.GITHUB_REF.split("/")[-1] + return None + @classmethod def from_environ(cls, environ): possible_variables = [e for e in inspect.signature(cls).parameters] @@ -193,10 +200,8 @@ def get_markdown_comment( def is_main_branch(gh: github.Github, config: Config) -> bool: repo = gh.get_repo(config.GITHUB_REPOSITORY) - # refs/heads/ - if not config.GITHUB_REF.startswith("refs/heads/"): - return False - branch = config.GITHUB_REF.split("/")[-1] + + branch = config.GITHUB_BRANCH_NAME return repo.default_branch == branch