Skip to content

Commit

Permalink
Add label with release type
Browse files Browse the repository at this point in the history
  • Loading branch information
marcoacierno committed Aug 25, 2019
1 parent 2e59ca7 commit a77f7b3
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 3 deletions.
3 changes: 2 additions & 1 deletion .github/release-check-action/check.py
Expand Up @@ -19,6 +19,7 @@
release_file = pathlib.Path(GITHUB_WORKSPACE) / RELEASE_FILE_PATH

exit_code = 0
release_info = None

if not release_file.exists():
print("release file does not exist")
Expand All @@ -36,6 +37,6 @@


add_or_edit_comment(event_data, comment)
update_labels(event_data, exit_code == 0)
update_labels(event_data, release_info)

sys.exit(exit_code)
19 changes: 17 additions & 2 deletions .github/release-check-action/github.py
Expand Up @@ -3,6 +3,7 @@

import httpx
from config import GITHUB_TOKEN
from release import ReleaseInfo


SIGNATURE = "<!-- action-check: release-file -->"
Expand Down Expand Up @@ -57,13 +58,18 @@ def add_or_edit_comment(github_event_data: dict, comment: str):
print(request.status_code)


def update_labels(github_event_data: dict, has_valid_release_file: bool):
def update_labels(github_event_data: dict, release_info: typing.Optional[ReleaseInfo]):
labels_to_add = {"bot:has-release-file"}
labels_to_remove: typing.Set[str] = set()

if not has_valid_release_file:
new_release_label = None

if release_info is None:
labels_to_remove = labels_to_add
labels_to_add = set()
else:
new_release_label = f"bot:release-type-{release_info.change_type.value}"
labels_to_add.add(new_release_label)

labels_url = get_labels_link(github_event_data)

Expand All @@ -74,6 +80,15 @@ def update_labels(github_event_data: dict, has_valid_release_file: bool):

current_labels = set(current_labels_url_by_name.keys())

release_labels_to_remove = [
label
for label in current_labels
if label.startswith("bot:release-type-") and label != new_release_label
]
labels_to_remove.update(release_labels_to_remove)

print("current_labels", current_labels, "labels_to_remove", labels_to_remove)

if not current_labels.issuperset(labels_to_add):
request = httpx.post(
labels_url,
Expand Down

0 comments on commit a77f7b3

Please sign in to comment.