Skip to content

Commit

Permalink
[FIXED JENKINS-14890] PROMOTE permission can be used in project matri…
Browse files Browse the repository at this point in the history
…x-based security
  • Loading branch information
ohtake committed Aug 22, 2012
1 parent add773a commit 92ca035
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
13 changes: 6 additions & 7 deletions src/main/java/hudson/plugins/promoted_builds/Promotion.java
Expand Up @@ -5,17 +5,18 @@
import hudson.model.AbstractProject;
import hudson.model.BuildListener;
import hudson.model.Cause.LegacyCodeCause;
import hudson.model.Hudson;
import hudson.model.Node;
import hudson.model.Result;
import hudson.model.TaskListener;
import hudson.model.TopLevelItem;
import hudson.security.Permission;
import hudson.security.PermissionGroup;
import hudson.security.PermissionScope;
import hudson.slaves.WorkspaceList;
import hudson.slaves.WorkspaceList.Lease;
import hudson.tasks.BuildStep;
import hudson.tasks.BuildTrigger;
import jenkins.model.Jenkins;

import java.io.File;
import java.io.IOException;
Expand Down Expand Up @@ -77,7 +78,7 @@ public EnvVars getEnvironment(TaskListener listener) throws IOException, Interru
EnvVars e = super.getEnvironment(listener);

// Augment environment with target build's information
String rootUrl = Hudson.getInstance().getRootUrl();
String rootUrl = Jenkins.getInstance().getRootUrl();
AbstractBuild<?, ?> target = getTarget();
if(rootUrl!=null)
e.put("PROMOTED_URL",rootUrl+target.getUrl());
Expand Down Expand Up @@ -177,11 +178,9 @@ private boolean preBuild(BuildListener listener, List<BuildStep> steps) {

}

//public static final PermissionGroup PERMISSIONS = new PermissionGroup(Promotion.class, Messages._Promotion_Permissions_Title());
//public static final Permission PROMOTE = new Permission(PERMISSIONS, "Promote", Messages._Promotion_PromotePermission_Description(), Hudson.ADMINISTER);
public static final PermissionGroup PERMISSIONS = new PermissionGroup(Promotion.class, null);
public static final Permission PROMOTE = new Permission(PERMISSIONS, "Promote", null, Hudson.ADMINISTER);

public static final PermissionGroup PERMISSIONS = new PermissionGroup(Promotion.class, Messages._Promotion_Permissions_Title());
public static final Permission PROMOTE = new Permission(PERMISSIONS, "Promote", Messages._Promotion_PromotePermission_Description(), Jenkins.ADMINISTER, PermissionScope.RUN);

@Override
public int compareTo(Promotion that) {
return that.getId().compareTo( this.getId() );
Expand Down
Expand Up @@ -30,4 +30,6 @@ KeepBuildForEverAction.descriptor.displayName=Keep Build Forever
KeepBuildForEverAction.console.notPromotion=This build is not a promotion, how did we get here? Not keeping build.
KeepBuildForEverAction.console.promotionNotGoodEnough=Promotion build result [{0}] is not good enough. Not keeping build.
KeepBuildForEverAction.console.keepingBuild=Marking build to keep forever.
Promotion.Permissions.Title=Promotion
Promotion.PromotePermission.Description=This permission allows user to use force promotion and re-execution of promotion

0 comments on commit 92ca035

Please sign in to comment.