mirror of
https://github.com/theonedev/onedev.git
synced 2025-12-08 18:26:30 +00:00
chore: Remove auto merge user field
This commit is contained in:
parent
78b31191cc
commit
3f024b687b
@ -1713,7 +1713,6 @@ public class McpHelperResource {
|
|||||||
var autoMerge = new AutoMerge();
|
var autoMerge = new AutoMerge();
|
||||||
autoMerge.setEnabled(autoMergeEnabled);
|
autoMerge.setEnabled(autoMergeEnabled);
|
||||||
autoMerge.setCommitMessage(StringUtils.trimToNull((String) data.remove("autoMergeCommitMessage")));
|
autoMerge.setCommitMessage(StringUtils.trimToNull((String) data.remove("autoMergeCommitMessage")));
|
||||||
autoMerge.setUser(user);
|
|
||||||
var errorMessage = request.checkMergeCommitMessage(user, autoMerge.getCommitMessage());
|
var errorMessage = request.checkMergeCommitMessage(user, autoMerge.getCommitMessage());
|
||||||
if (errorMessage != null)
|
if (errorMessage != null)
|
||||||
throw new NotAcceptableException("Error validating param auto merge commit message: " + errorMessage);
|
throw new NotAcceptableException("Error validating param auto merge commit message: " + errorMessage);
|
||||||
|
|||||||
@ -8193,6 +8193,14 @@ public class DataMigrator {
|
|||||||
for (Element element : dom.getRootElement().elements()) {
|
for (Element element : dom.getRootElement().elements()) {
|
||||||
groupIds.put(element.elementText("name").trim(), element.elementText("id").trim());
|
groupIds.put(element.elementText("name").trim(), element.elementText("id").trim());
|
||||||
}
|
}
|
||||||
|
} else if (file.getName().startsWith("PullRequests.xml")) {
|
||||||
|
VersionedXmlDoc dom = VersionedXmlDoc.fromFile(file);
|
||||||
|
for (Element element : dom.getRootElement().elements()) {
|
||||||
|
var autoMergeUserElement = element.element("autoMerge").element("user");
|
||||||
|
if (autoMergeUserElement != null)
|
||||||
|
autoMergeUserElement.detach();
|
||||||
|
}
|
||||||
|
dom.writeToFile(file, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -502,10 +502,7 @@ public class DefaultPullRequestManager extends BaseEntityManager<PullRequest>
|
|||||||
if (request.isOpen()) {
|
if (request.isOpen()) {
|
||||||
var autoMerge = request.getAutoMerge();
|
var autoMerge = request.getAutoMerge();
|
||||||
if (autoMerge.isEnabled() && request.checkMergeCondition() == null) {
|
if (autoMerge.isEnabled() && request.checkMergeCondition() == null) {
|
||||||
if (autoMerge.getUser() != null)
|
merge(userManager.getSystem(), request, autoMerge.getCommitMessage());
|
||||||
merge(autoMerge.getUser(), request, autoMerge.getCommitMessage());
|
|
||||||
else
|
|
||||||
throw new ExplicitException("Auto merge user not specified");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1308,7 +1308,8 @@ public class PullRequest extends ProjectBelonging
|
|||||||
getBaseCommit().copy(), getLatestUpdate().getHeadCommit().copy(), new HashMap<>());
|
getBaseCommit().copy(), getLatestUpdate().getHeadCommit().copy(), new HashMap<>());
|
||||||
}
|
}
|
||||||
if (error == null && autoMerge.isEnabled()) {
|
if (error == null && autoMerge.isEnabled()) {
|
||||||
var errorMessage = checkMergeCommitMessage(autoMerge.getUser(), autoMerge.getCommitMessage());
|
var system = OneDev.getInstance(UserManager.class).getSystem();
|
||||||
|
var errorMessage = checkMergeCommitMessage(system, autoMerge.getCommitMessage());
|
||||||
if (errorMessage != null)
|
if (errorMessage != null)
|
||||||
error = new CommitMessageError(null, errorMessage);
|
error = new CommitMessageError(null, errorMessage);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,11 +1,12 @@
|
|||||||
package io.onedev.server.model.support.pullrequest;
|
package io.onedev.server.model.support.pullrequest;
|
||||||
|
|
||||||
import io.onedev.server.model.User;
|
import java.io.Serializable;
|
||||||
import org.hibernate.annotations.OptimisticLock;
|
|
||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
import javax.persistence.*;
|
import javax.persistence.Column;
|
||||||
import java.io.Serializable;
|
import javax.persistence.Embeddable;
|
||||||
|
|
||||||
|
import org.hibernate.annotations.OptimisticLock;
|
||||||
|
|
||||||
@Embeddable
|
@Embeddable
|
||||||
public class AutoMerge implements Serializable {
|
public class AutoMerge implements Serializable {
|
||||||
@ -13,20 +14,13 @@ public class AutoMerge implements Serializable {
|
|||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
public static final String COLUMN_ENABLED = "AUTO_MERGE_ENABLED";
|
public static final String COLUMN_ENABLED = "AUTO_MERGE_ENABLED";
|
||||||
|
|
||||||
public static final String COLUMN_USER = "AUTO_MERGE_USER";
|
|
||||||
|
|
||||||
public static final String COLUMN_COMMIT_MESSAGE = "AUTO_MERGE_COMMIT_MESSAGE";
|
public static final String COLUMN_COMMIT_MESSAGE = "AUTO_MERGE_COMMIT_MESSAGE";
|
||||||
|
|
||||||
@Column(name=COLUMN_ENABLED, nullable = false)
|
@Column(name=COLUMN_ENABLED, nullable = false)
|
||||||
@OptimisticLock(excluded=true)
|
@OptimisticLock(excluded=true)
|
||||||
private boolean enabled;
|
private boolean enabled;
|
||||||
|
|
||||||
@ManyToOne(fetch=FetchType.LAZY)
|
|
||||||
@JoinColumn(name=COLUMN_USER)
|
|
||||||
@OptimisticLock(excluded=true)
|
|
||||||
private User user;
|
|
||||||
|
|
||||||
@Column(length=1048576, name=COLUMN_COMMIT_MESSAGE)
|
@Column(length=1048576, name=COLUMN_COMMIT_MESSAGE)
|
||||||
@OptimisticLock(excluded=true)
|
@OptimisticLock(excluded=true)
|
||||||
private String commitMessage;
|
private String commitMessage;
|
||||||
@ -39,14 +33,6 @@ public class AutoMerge implements Serializable {
|
|||||||
this.enabled = enabled;
|
this.enabled = enabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
public User getUser() {
|
|
||||||
return user;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setUser(User user) {
|
|
||||||
this.user = user;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public String getCommitMessage() {
|
public String getCommitMessage() {
|
||||||
return commitMessage;
|
return commitMessage;
|
||||||
|
|||||||
@ -373,7 +373,6 @@ public class PullRequestResource {
|
|||||||
var autoMerge = new AutoMerge();
|
var autoMerge = new AutoMerge();
|
||||||
autoMerge.setEnabled(data.isEnabled());
|
autoMerge.setEnabled(data.isEnabled());
|
||||||
autoMerge.setCommitMessage(data.getCommitMessage());
|
autoMerge.setCommitMessage(data.getCommitMessage());
|
||||||
autoMerge.setUser(user);
|
|
||||||
var errorMessage = request.checkMergeCommitMessage(user, autoMerge.getCommitMessage());
|
var errorMessage = request.checkMergeCommitMessage(user, autoMerge.getCommitMessage());
|
||||||
if (errorMessage != null)
|
if (errorMessage != null)
|
||||||
throw new NotAcceptableException("Error validating auto merge commit message: " + errorMessage);
|
throw new NotAcceptableException("Error validating auto merge commit message: " + errorMessage);
|
||||||
|
|||||||
@ -78,6 +78,7 @@ import io.onedev.server.entitymanager.PullRequestReactionManager;
|
|||||||
import io.onedev.server.entitymanager.PullRequestReviewManager;
|
import io.onedev.server.entitymanager.PullRequestReviewManager;
|
||||||
import io.onedev.server.entitymanager.PullRequestWatchManager;
|
import io.onedev.server.entitymanager.PullRequestWatchManager;
|
||||||
import io.onedev.server.entitymanager.SettingManager;
|
import io.onedev.server.entitymanager.SettingManager;
|
||||||
|
import io.onedev.server.entitymanager.UserManager;
|
||||||
import io.onedev.server.entityreference.EntityReference;
|
import io.onedev.server.entityreference.EntityReference;
|
||||||
import io.onedev.server.entityreference.LinkTransformer;
|
import io.onedev.server.entityreference.LinkTransformer;
|
||||||
import io.onedev.server.git.GitUtils;
|
import io.onedev.server.git.GitUtils;
|
||||||
@ -1379,8 +1380,7 @@ public abstract class PullRequestDetailPage extends ProjectPage implements PullR
|
|||||||
if (request.isMergeCommitMessageRequired()) {
|
if (request.isMergeCommitMessageRequired()) {
|
||||||
tipsContainer = new Fragment("tips", "autoMergeEnabledWithPresetCommitMessageFrag", PullRequestDetailPage.this);
|
tipsContainer = new Fragment("tips", "autoMergeEnabledWithPresetCommitMessageFrag", PullRequestDetailPage.this);
|
||||||
WebMarkupContainer link;
|
WebMarkupContainer link;
|
||||||
if (SecurityUtils.canManagePullRequests(getProject())
|
if (SecurityUtils.canModifyPullRequest(getPullRequest()) && SecurityUtils.canWriteCode(getProject())) {
|
||||||
|| autoMerge.getUser() != null && autoMerge.getUser().equals(SecurityUtils.getUser())) {
|
|
||||||
link = new AjaxLink<Void>("commitMessage") {
|
link = new AjaxLink<Void>("commitMessage") {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -1396,7 +1396,8 @@ public abstract class PullRequestDetailPage extends ProjectPage implements PullR
|
|||||||
@Override
|
@Override
|
||||||
protected String onSave(AjaxRequestTarget target, CommitMessageBean bean) {
|
protected String onSave(AjaxRequestTarget target, CommitMessageBean bean) {
|
||||||
var request = getPullRequest();
|
var request = getPullRequest();
|
||||||
var branchProtection = getProject().getBranchProtection(request.getTargetBranch(), autoMerge.getUser());
|
var system = OneDev.getInstance(UserManager.class).getSystem();
|
||||||
|
var branchProtection = getProject().getBranchProtection(request.getTargetBranch(), system);
|
||||||
var errorMessage = branchProtection.checkCommitMessage(bean.getCommitMessage(),
|
var errorMessage = branchProtection.checkCommitMessage(bean.getCommitMessage(),
|
||||||
request.getMergeStrategy() != SQUASH_SOURCE_BRANCH_COMMITS);
|
request.getMergeStrategy() != SQUASH_SOURCE_BRANCH_COMMITS);
|
||||||
if (errorMessage != null) {
|
if (errorMessage != null) {
|
||||||
@ -1502,7 +1503,6 @@ public abstract class PullRequestDetailPage extends ProjectPage implements PullR
|
|||||||
} else {
|
} else {
|
||||||
var autoMerge = new AutoMerge();
|
var autoMerge = new AutoMerge();
|
||||||
autoMerge.setEnabled(true);
|
autoMerge.setEnabled(true);
|
||||||
autoMerge.setUser(user);
|
|
||||||
autoMerge.setCommitMessage(bean.getCommitMessage());
|
autoMerge.setCommitMessage(bean.getCommitMessage());
|
||||||
getPullRequestChangeManager().changeAutoMerge(getPullRequest(), autoMerge);
|
getPullRequestChangeManager().changeAutoMerge(getPullRequest(), autoMerge);
|
||||||
target.add(autoMergeContainer);
|
target.add(autoMergeContainer);
|
||||||
@ -1523,12 +1523,11 @@ public abstract class PullRequestDetailPage extends ProjectPage implements PullR
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
var autoMerge = new AutoMerge();
|
var autoMerge = new AutoMerge();
|
||||||
autoMerge.setEnabled(true);
|
autoMerge.setEnabled(true);
|
||||||
autoMerge.setUser(SecurityUtils.getUser());
|
autoMerge.setCommitMessage(request.getAutoMerge().getCommitMessage());
|
||||||
autoMerge.setCommitMessage(request.getAutoMerge().getCommitMessage());
|
getPullRequestChangeManager().changeAutoMerge(request, autoMerge);
|
||||||
getPullRequestChangeManager().changeAutoMerge(request, autoMerge);
|
target.add(autoMergeContainer);
|
||||||
target.add(autoMergeContainer);
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
var autoMerge = new AutoMerge();
|
var autoMerge = new AutoMerge();
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
Subproject commit 64ca3d0811a5f1c57090e8d47c720871dd5edb8d
|
Subproject commit 2b7de662ca1fb90d20c0fb506b15f46dffcfe2b2
|
||||||
Loading…
x
Reference in New Issue
Block a user