7
7
from pathlib import Path
8
8
from typing import Dict , TypeVar , Tuple , Optional
9
9
10
- from external_services import commit_changes_to_educational_plugin , create_review_in_educational_plugin , get_reviewer , has_branch
10
+ from external_services import commit_changes_to_educational_plugin , create_review_in_educational_plugin , get_reviewer , has_branch , \
11
+ get_youtrack_issue , YoutrackIssue
11
12
12
13
K = TypeVar ('K' )
13
14
V = TypeVar ('V' )
@@ -89,7 +90,7 @@ def process_gradle_properties(platform_version: int) -> Changes:
89
90
}
90
91
91
92
92
- def commit_changes (space_token : str , platform_version : int , changes : Changes ):
93
+ def commit_changes (space_token : str , platform_version : int , issue : Optional [ YoutrackIssue ], changes : Changes ):
93
94
files = []
94
95
for path , (modification , content ) in changes .items ():
95
96
if modification == FileModification .Delete :
@@ -104,10 +105,15 @@ def commit_changes(space_token: str, platform_version: int, changes: Changes):
104
105
"content" : {"className" : "GitFileContent.Base64" , "value" : base64_content_value }
105
106
})
106
107
108
+ if issue :
109
+ commit_message = f"EDU-{ issue .issue_number } : Drop { platform_version } support"
110
+ else :
111
+ commit_message = f"Drop { platform_version } support"
112
+
107
113
commit_changes_to_educational_plugin (
108
114
space_token = space_token ,
109
115
branch_name = f"refs/heads/{ branch (platform_version )} " ,
110
- commit_massage = f"Drop { platform_version } support" ,
116
+ commit_massage = commit_message ,
111
117
changes = files
112
118
)
113
119
@@ -116,8 +122,8 @@ def branch(platform_version: int) -> str:
116
122
return f"drop-{ platform_version } "
117
123
118
124
119
- def create_review (space_token : str , youtrack_token : str , platform_version : int ):
120
- reviewer = get_reviewer (youtrack_token , "edu: drop platform" , platform_version )
125
+ def create_review (space_token : str , platform_version : int , issue : Optional [ YoutrackIssue ] ):
126
+ reviewer = get_reviewer (issue )
121
127
create_review_in_educational_plugin (space_token , branch (platform_version ), f"Drop support for { platform_version } platform" , reviewer )
122
128
123
129
@@ -139,9 +145,10 @@ def main():
139
145
print (f"{ branch_name } already exists" )
140
146
return
141
147
148
+ issue = get_youtrack_issue (args .youtrack_token , "edu: drop platform" , platform_version )
142
149
changes = collect_changes (platform_version )
143
- commit_changes (args .space_token , platform_version , changes )
144
- create_review (args .space_token , args . youtrack_token , platform_version )
150
+ commit_changes (args .space_token , platform_version , issue , changes )
151
+ create_review (args .space_token , platform_version , issue )
145
152
146
153
147
154
if __name__ == '__main__' :
0 commit comments