Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<parent>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>plugin</artifactId>
<version>4.88</version>
<version>5.5</version>
<relativePath/>
</parent>
<artifactId>docker-workflow</artifactId>
Expand All @@ -31,8 +31,8 @@
<properties>
<changelist>999999-SNAPSHOT</changelist>
<!-- https://www.jenkins.io/doc/developer/plugin-development/choosing-jenkins-baseline/ -->
<jenkins.baseline>2.452</jenkins.baseline>
<jenkins.version>${jenkins.baseline}.4</jenkins.version>
<jenkins.baseline>2.479</jenkins.baseline>
<jenkins.version>${jenkins.baseline}.1</jenkins.version>
<gitHubRepo>jenkinsci/${project.artifactId}-plugin</gitHubRepo>
</properties>
<repositories>
Expand Down Expand Up @@ -62,7 +62,6 @@
<dependency>
<groupId>org.jenkins-ci.plugins</groupId>
<artifactId>docker-commons</artifactId>
<version>419.v8e3cd84ef49c</version>
</dependency>
<dependency>
<groupId>org.jenkins-ci.plugins.workflow</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
import org.jenkinsci.Symbol;
import org.jenkinsci.plugins.docker.commons.credentials.DockerRegistryEndpoint;
import org.kohsuke.stapler.DataBoundSetter;
import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerRequest2;

/**
* The system config.
Expand Down Expand Up @@ -94,7 +94,7 @@ public void setRegistry(DockerRegistryEndpoint registry) {
}

@Override
public boolean configure(StaplerRequest req, JSONObject json) throws FormException {
public boolean configure(StaplerRequest2 req, JSONObject json) throws FormException {
req.bindJSON(this, json);
save();
return true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@
import hudson.model.User;
import jenkins.model.Jenkins;
import jenkins.security.QueueItemAuthenticatorConfiguration;
import org.acegisecurity.Authentication;
import org.jenkinsci.plugins.docker.commons.credentials.DockerRegistryEndpoint;
import org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition;
import org.jenkinsci.plugins.workflow.cps.SnippetizerTester;
Expand Down Expand Up @@ -67,8 +66,6 @@
import org.kohsuke.stapler.DataBoundConstructor;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
import org.jenkinsci.plugins.structs.describable.DescribableModel;
Expand Down Expand Up @@ -169,10 +166,13 @@ public void stepExecutionWithCredentialsAndQueueItemAuthenticator() throws Excep
WorkflowJob p2 = r.createProject(WorkflowJob.class, "prj2");
p2.setDefinition(new CpsFlowDefinition(script, true));

Map<String, Authentication> jobsToAuths = new HashMap<>();
jobsToAuths.put(p1.getFullName(), User.getById("alice", true).impersonate());
jobsToAuths.put(p2.getFullName(), User.getById("bob", true).impersonate());
QueueItemAuthenticatorConfiguration.get().getAuthenticators().replace(new MockQueueItemAuthenticator(jobsToAuths));
QueueItemAuthenticatorConfiguration.get()
.getAuthenticators()
.replace(new MockQueueItemAuthenticator()
.authenticate(
p1.getFullName(), User.getById("alice", true).impersonate2())
.authenticate(
p2.getFullName(), User.getById("bob", true).impersonate2()));

// Alice has Credentials.USE_ITEM permission and should be able to use the credential.
WorkflowRun b1 = r.buildAndAssertSuccess(p1);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,8 @@
import hudson.model.Computer;
import hudson.model.Item;
import hudson.model.User;
import java.util.HashMap;
import jenkins.model.Jenkins;
import jenkins.security.QueueItemAuthenticatorConfiguration;
import org.acegisecurity.Authentication;
import org.jenkinsci.plugins.docker.commons.credentials.DockerServerCredentials;
import org.jenkinsci.plugins.docker.commons.credentials.DockerServerEndpoint;
import org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition;
Expand Down Expand Up @@ -161,10 +159,14 @@ public class ServerEndpointStepTest {
WorkflowJob p2 = story.j.jenkins.createProject(WorkflowJob.class, "prj2");
p2.setDefinition(new CpsFlowDefinition(script, true));

Map<String, Authentication> jobsToAuths = new HashMap<>();
jobsToAuths.put(p1.getFullName(), User.getById("alice", true).impersonate());
jobsToAuths.put(p2.getFullName(), User.getById("bob", true).impersonate());
QueueItemAuthenticatorConfiguration.get().getAuthenticators().replace(new MockQueueItemAuthenticator(jobsToAuths));
QueueItemAuthenticatorConfiguration.get()
.getAuthenticators()
.replace(new MockQueueItemAuthenticator()
.authenticate(
p1.getFullName(),
User.getById("alice", true).impersonate2())
.authenticate(
p2.getFullName(), User.getById("bob", true).impersonate2()));

// Alice has Credentials.USE_ITEM permission and should be able to use the credential.
WorkflowRun b1 = story.j.buildAndAssertSuccess(p1);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
import org.htmlunit.util.NameValuePair;
import edu.umd.cs.findbugs.annotations.NonNull;
import hudson.model.Describable;
import jakarta.servlet.ServletRequest;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
Expand Down Expand Up @@ -137,7 +138,7 @@ private void assertGenerateDirective(@NonNull AbstractDirective desc, @NonNull S
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new NameValuePair("json", staplerJsonForDescr(desc).toString()));
// WebClient.addCrumb *replaces* rather than *adds*:
params.add(new NameValuePair(r.jenkins.getCrumbIssuer().getDescriptor().getCrumbRequestField(), r.jenkins.getCrumbIssuer().getCrumb(null)));
params.add(new NameValuePair(r.jenkins.getCrumbIssuer().getDescriptor().getCrumbRequestField(), r.jenkins.getCrumbIssuer().getCrumb((ServletRequest) null)));
wrs.setRequestParameters(params);
WebResponse response = wc.getPage(wrs).getWebResponse();
assertEquals("text/plain", response.getContentType());
Expand Down
Loading