Skip to content

Commit 27f39e8

Browse files
committed
update gitea integration for 2022.04
1 parent 387b11f commit 27f39e8

File tree

3 files changed

+18
-29
lines changed

3 files changed

+18
-29
lines changed

commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gitea/GiteaPublisher.java

Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -38,15 +38,12 @@ class GiteaPublisher extends HttpBasedCommitStatusPublisher {
3838
private final Gson myGson = new Gson();
3939
private static final GitRepositoryParser VCS_URL_PARSER = new GitRepositoryParser();
4040

41-
private final WebLinks myLinks;
42-
4341
GiteaPublisher(@NotNull CommitStatusPublisherSettings settings,
4442
@NotNull SBuildType buildType, @NotNull String buildFeatureId,
45-
@NotNull WebLinks links,
4643
@NotNull Map<String, String> params,
47-
@NotNull CommitStatusPublisherProblems problems) {
48-
super(settings, buildType, buildFeatureId, params, problems);
49-
myLinks = links;
44+
@NotNull CommitStatusPublisherProblems problems,
45+
@NotNull WebLinks links) {
46+
super(settings, buildType, buildFeatureId, params, problems, links);
5047
}
5148

5249

@@ -71,7 +68,8 @@ public boolean buildQueued(@NotNull BuildPromotion buildPromotion, @NotNull Buil
7168

7269
@Override
7370
public boolean buildRemovedFromQueue(@NotNull BuildPromotion buildPromotion, @NotNull BuildRevision revision, @NotNull AdditionalTaskInfo additionalTaskInfo) throws PublisherException {
74-
publish(buildPromotion, revision, GiteaBuildStatus.PENDING, additionalTaskInfo);
71+
GiteaBuildStatus targetStatus = additionalTaskInfo.isPromotionReplaced() ? GiteaBuildStatus.PENDING : GiteaBuildStatus.WARNING;
72+
publish(buildPromotion, revision, targetStatus, additionalTaskInfo);
7573
return true;
7674
}
7775

@@ -199,7 +197,9 @@ private void publish(@NotNull SBuild build,
199197
@NotNull BuildRevision revision,
200198
@NotNull GiteaBuildStatus status,
201199
@NotNull String description) throws PublisherException {
202-
String message = createMessage(status, build.getBuildTypeName(), revision, myLinks.getViewResultsUrl(build), description);
200+
SBuildType buildType = build.getBuildType();
201+
String buildName = buildType != null ? buildType.getFullName() : build.getBuildTypeExternalId();
202+
String message = createMessage(status, buildName, revision, getViewUrl(build), description);
203203
publish(message, revision, LogUtil.describe(build));
204204
}
205205

@@ -208,24 +208,13 @@ private void publish(@NotNull BuildPromotion buildPromotion,
208208
@NotNull GiteaBuildStatus status,
209209
@NotNull AdditionalTaskInfo additionalTaskInfo) throws PublisherException {
210210
String url = getViewUrl(buildPromotion);
211-
String description = additionalTaskInfo.compileQueueRelatedMessage();
212-
String message = createMessage(status, buildPromotion.getBuildType().getName(), revision, url, description);
211+
String description = additionalTaskInfo.getComment();
212+
SBuildType buildType = buildPromotion.getBuildType();
213+
String buildName = buildType != null ? buildType.getFullName() : buildPromotion.getBuildTypeExternalId();
214+
String message = createMessage(status, buildName, revision, url, description);
213215
publish(message, revision, LogUtil.describe(buildPromotion));
214216
}
215217

216-
private String getViewUrl(BuildPromotion buildPromotion) {
217-
SBuild build = buildPromotion.getAssociatedBuild();
218-
if (build != null) {
219-
return myLinks.getViewResultsUrl(build);
220-
}
221-
SQueuedBuild queuedBuild = buildPromotion.getQueuedBuild();
222-
if (queuedBuild != null) {
223-
return myLinks.getQueuedBuildUrl(queuedBuild);
224-
}
225-
return buildPromotion.getBuildType() != null ? myLinks.getConfigurationHomePageUrl(buildPromotion.getBuildType()) :
226-
myLinks.getRootUrlByProjectExternalId(buildPromotion.getProjectExternalId());
227-
}
228-
229218
private void publish(@NotNull String message,
230219
@NotNull BuildRevision revision,
231220
@NotNull String buildDescription) throws PublisherException {
@@ -274,7 +263,7 @@ private String createMessage(@NotNull GiteaBuildStatus status,
274263
@NotNull String url,
275264
@NotNull String description) {
276265

277-
final Map<String, String> data = new LinkedHashMap<String, String>();
266+
final Map<String, String> data = new LinkedHashMap<>();
278267
data.put("state", status.getName());
279268
data.put("context", name);
280269
data.put("description", description);

commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/gitea/GiteaSettings.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ public String getEditSettingsUrl() {
8080
@NotNull
8181
@Override
8282
public GiteaPublisher createPublisher(@NotNull SBuildType buildType, @NotNull String buildFeatureId, @NotNull Map<String, String> params) {
83-
return new GiteaPublisher(this, buildType, buildFeatureId, myLinks, params, myProblems);
83+
return new GiteaPublisher(this, buildType, buildFeatureId, params, myProblems, myLinks);
8484
}
8585

8686
@Override
@@ -147,7 +147,7 @@ public String describeParameters(@NotNull Map<String, String> params) {
147147

148148
@Nullable
149149
@Override
150-
public PropertiesProcessor getParametersProcessor() {
150+
public PropertiesProcessor getParametersProcessor(@NotNull BuildTypeIdentity buildTypeOrTemplate) {
151151
return new PropertiesProcessor() {
152152
public Collection<InvalidProperty> process(Map<String, String> params) {
153153
List<InvalidProperty> errors = new ArrayList<InvalidProperty>();

commit-status-publisher-server/src/test/java/jetbrains/buildServer/commitPublisher/gitea/GiteaPublisherTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public void test_buildFinishedSuccessfully_server_url_with_subdir() throws Excep
7575
myVcsRoot.setProperties(Collections.singletonMap("url", "https://url.com/subdir/owner/project"));
7676
VcsRootInstance vcsRootInstance = myBuildType.getVcsRootInstanceForParent(myVcsRoot);
7777
myRevision = new BuildRevision(vcsRootInstance, REVISION, "", REVISION);
78-
myPublisher = new GiteaPublisher(myPublisherSettings, myBuildType, FEATURE_ID, myWebLinks, params, myProblems);
78+
myPublisher = new GiteaPublisher(myPublisherSettings, myBuildType, FEATURE_ID, params, myProblems, myWebLinks);
7979
test_buildFinished_Successfully();
8080
}
8181

@@ -86,7 +86,7 @@ public void test_buildFinishedSuccessfully_server_url_with_slash() throws Except
8686
myVcsRoot.setProperties(Collections.singletonMap("url", "https://url.com/subdir/owner/project"));
8787
VcsRootInstance vcsRootInstance = myBuildType.getVcsRootInstanceForParent(myVcsRoot);
8888
myRevision = new BuildRevision(vcsRootInstance, REVISION, "", REVISION);
89-
myPublisher = new GiteaPublisher(myPublisherSettings, myBuildType, FEATURE_ID, myWebLinks, params, myProblems);
89+
myPublisher = new GiteaPublisher(myPublisherSettings, myBuildType, FEATURE_ID, params, myProblems, myWebLinks);
9090
test_buildFinished_Successfully();
9191
}
9292

@@ -157,7 +157,7 @@ protected void setUp() throws Exception {
157157
super.setUp();
158158
myPublisherSettings = new GiteaSettings(new MockPluginDescriptor(), myWebLinks, myProblems, myTrustStoreProvider);
159159
Map<String, String> params = getPublisherParams();
160-
myPublisher = new GiteaPublisher(myPublisherSettings, myBuildType, FEATURE_ID, myWebLinks, params, myProblems);
160+
myPublisher = new GiteaPublisher(myPublisherSettings, myBuildType, FEATURE_ID, params, myProblems, myWebLinks);
161161
myBuildType.getProject().addParameter(new SimpleParameter("teamcity.commitStatusPublisher.publishQueuedBuildStatus", "true"));
162162
}
163163

0 commit comments

Comments
 (0)