/** * Creates an environment variable override to be used for launching processes on this node. * * @see ProcStarter#envs(Map) * @since 1.489 */ public @Nonnull EnvVars buildEnvironment(@Nonnull TaskListener listener) throws IOException, InterruptedException { EnvVars env = new EnvVars(); Node node = getNode(); if (node==null) return env; // bail out for (NodeProperty nodeProperty: Jenkins.getInstance().getGlobalNodeProperties()) { nodeProperty.buildEnvVars(env,listener); } for (NodeProperty nodeProperty: node.getNodeProperties()) { nodeProperty.buildEnvVars(env,listener); } // TODO: hmm, they don't really belong String rootUrl = Jenkins.getInstance().getRootUrl(); if(rootUrl!=null) { env.put("HUDSON_URL", rootUrl); // Legacy. env.put("JENKINS_URL", rootUrl); } return env; }
@Test @Issue("Issue #173") @ConfiguredWithCode("SetEnvironmentVariable.yml") public void shouldSetEnvironmentVariable() throws Exception { final DescribableList<NodeProperty<?>, NodePropertyDescriptor> properties = Jenkins.getInstance().getNodeProperties(); EnvVars env = new EnvVars(); for (NodeProperty<?> property : properties) { property.buildEnvVars(env, TaskListener.NULL); } assertEquals("BAR", env.get("FOO")); }
private static void addEnvVars(final EnvVars vars, final Iterable<? extends NodeProperty<?>> nodeProperties) throws IOException, InterruptedException { if (nodeProperties != null) { for (final NodeProperty<?> nodeProperty : nodeProperties) { nodeProperty.buildEnvVars(vars, LOGGER_LISTENER); } } }
public void superBuildEnvVars(EnvVars env, TaskListener listener) throws IOException, InterruptedException { super.buildEnvVars(env, listener); }
@Override public void buildEnvVars(EnvVars env, TaskListener listener) throws IOException, InterruptedException { initPython(); if (pexec.isImplemented(5)) { pexec.execPythonVoid("build_env_vars", env, listener); } else { super.buildEnvVars(env, listener); } }
/** * Creates an environment variable override to be used for launching processes on this node. * * @see ProcStarter#envs(Map) * @since 1.489 */ public @Nonnull EnvVars buildEnvironment(@Nonnull TaskListener listener) throws IOException, InterruptedException { EnvVars env = new EnvVars(); Node node = getNode(); if (node==null) return env; // bail out for (NodeProperty nodeProperty: Jenkins.getInstance().getGlobalNodeProperties()) { nodeProperty.buildEnvVars(env,listener); } for (NodeProperty nodeProperty: node.getNodeProperties()) { nodeProperty.buildEnvVars(env,listener); } // TODO: hmm, they don't really belong String rootUrl = Jenkins.getInstance().getRootUrl(); if(rootUrl!=null) { env.put("HUDSON_URL", rootUrl); // Legacy. env.put("JENKINS_URL", rootUrl); } return env; }
@Override public EnvVars getEnvironment(TaskListener listener) throws IOException, InterruptedException { EnvVars env = super.getEnvironment(listener); Jenkins instance = Jenkins.getInstance(); if (instance != null) { for (NodeProperty nodeProperty : instance.getGlobalNodeProperties()) { nodeProperty.buildEnvVars(env, listener); } } // TODO EnvironmentContributingAction does not support Job yet: ParametersAction a = getAction(ParametersAction.class); if (a != null) { for (ParameterValue v : a) { v.buildEnvironment(this, env); } } EnvVars.resolve(env); return env; }