Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
fchabanois committed Jan 18, 2012
1 parent 6b5d942 commit 617aa5e
Showing 1 changed file with 38 additions and 10 deletions.
@@ -1,17 +1,21 @@
package org.jenkinsci.plugins.envinject.service;

import hudson.FilePath;
import hudson.model.*;
import hudson.slaves.EnvironmentVariablesNodeProperty;
import hudson.Util;
import hudson.model.ParameterValue;
import hudson.model.TaskListener;
import hudson.model.TopLevelItem;
import hudson.model.AbstractBuild;
import hudson.model.AbstractProject;
import hudson.model.Computer;
import hudson.model.Hudson;
import hudson.model.Job;
import hudson.model.Node;
import hudson.model.ParametersAction;
import hudson.model.PasswordParameterValue;
import hudson.slaves.NodeProperty;
import hudson.slaves.EnvironmentVariablesNodeProperty;
import hudson.util.LogTaskListener;
import org.jenkinsci.lib.envinject.EnvInjectAction;
import org.jenkinsci.lib.envinject.EnvInjectException;
import org.jenkinsci.lib.envinject.EnvInjectLogger;
import org.jenkinsci.lib.envinject.service.EnvInjectActionRetriever;
import org.jenkinsci.lib.envinject.service.EnvInjectDetector;
import org.jenkinsci.plugins.envinject.EnvInjectJobProperty;
import org.jenkinsci.plugins.envinject.EnvInjectJobPropertyInfo;

import java.io.IOException;
import java.util.HashMap;
Expand All @@ -21,6 +25,14 @@
import java.util.logging.Level;
import java.util.logging.Logger;

import org.jenkinsci.lib.envinject.EnvInjectAction;
import org.jenkinsci.lib.envinject.EnvInjectException;
import org.jenkinsci.lib.envinject.EnvInjectLogger;
import org.jenkinsci.lib.envinject.service.EnvInjectActionRetriever;
import org.jenkinsci.lib.envinject.service.EnvInjectDetector;
import org.jenkinsci.plugins.envinject.EnvInjectJobPropertyInfo;
import org.jenkinsci.plugins.envinject.EnvInjectJobProperty;

/**
* @author Gregory Boissinot
*/
Expand Down Expand Up @@ -69,7 +81,8 @@ public Map<String, String> getBuildVariables(AbstractBuild build, EnvInjectLogge

//Add build variables such as parameters, plugins contributions, ...
result.putAll(build.getBuildVariables());

result.putAll(addPasswordParameter(build));

//Add workspace variable
String workspace = getWorkspaceWithCreation(build, logger);
if (workspace != null) {
Expand All @@ -83,6 +96,21 @@ public Map<String, String> getBuildVariables(AbstractBuild build, EnvInjectLogge
return result;
}

private Map<String, String> addPasswordParameter(AbstractBuild build){
Map<String, String> r = new HashMap<String, String>();

ParametersAction params = build.getAction(ParametersAction.class);
if (params != null){
for (ParameterValue p : params){
if (p instanceof PasswordParameterValue){
r.put(p.getName(),"******");
}
}
}

return r;
}

private String getWorkspaceWithCreation(AbstractBuild build, EnvInjectLogger logger) throws EnvInjectException {
try {
Node node = build.getBuiltOn();
Expand Down

0 comments on commit 617aa5e

Please sign in to comment.