Repository: incubator-slider Updated Branches: refs/heads/releases/slider-0.50 8434b8971 -> b0031870a
SLIDER-633 add processing for token file for oozie based slider invocations Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/b0031870 Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/b0031870 Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/b0031870 Branch: refs/heads/releases/slider-0.50 Commit: b0031870a625ce78528b84b340b253f690ecef40 Parents: 8434b89 Author: Jon Maron <[email protected]> Authored: Mon Dec 1 16:54:15 2014 -0500 Committer: Jon Maron <[email protected]> Committed: Mon Dec 1 16:54:15 2014 -0500 ---------------------------------------------------------------------- .../org/apache/slider/core/launch/AbstractLauncher.java | 12 +++++++++++- .../apache/slider/core/launch/AppMasterLauncher.java | 8 +++++--- 2 files changed, 16 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/b0031870/slider-core/src/main/java/org/apache/slider/core/launch/AbstractLauncher.java ---------------------------------------------------------------------- diff --git a/slider-core/src/main/java/org/apache/slider/core/launch/AbstractLauncher.java b/slider-core/src/main/java/org/apache/slider/core/launch/AbstractLauncher.java index 644f627..c72f520 100644 --- a/slider-core/src/main/java/org/apache/slider/core/launch/AbstractLauncher.java +++ b/slider-core/src/main/java/org/apache/slider/core/launch/AbstractLauncher.java @@ -38,6 +38,7 @@ import org.apache.slider.core.conf.MapOperations; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.io.File; import java.io.IOException; import java.nio.ByteBuffer; import java.util.ArrayList; @@ -171,7 +172,16 @@ public abstract class AbstractLauncher extends Configured { DataOutputBuffer dob = new DataOutputBuffer(); - credentials.writeTokenStorageToStream(dob); + String tokenFileName = this.getConf().get("mapreduce.job.credentials.binary"); + if (tokenFileName != null) { + // use delegation tokens, i.e. from Oozie + Credentials creds = Credentials.readTokenStorageFile(new File(tokenFileName), getConf()); + creds.writeTokenStorageToStream(dob); + } else { + // normal auth + credentials.writeTokenStorageToStream(dob); + } + ByteBuffer tokenBuffer = ByteBuffer.wrap(dob.getData(), 0, dob.getLength()); containerLaunchContext.setTokens(tokenBuffer); http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/b0031870/slider-core/src/main/java/org/apache/slider/core/launch/AppMasterLauncher.java ---------------------------------------------------------------------- diff --git a/slider-core/src/main/java/org/apache/slider/core/launch/AppMasterLauncher.java b/slider-core/src/main/java/org/apache/slider/core/launch/AppMasterLauncher.java index bd8a0a5..8229c63 100644 --- a/slider-core/src/main/java/org/apache/slider/core/launch/AppMasterLauncher.java +++ b/slider-core/src/main/java/org/apache/slider/core/launch/AppMasterLauncher.java @@ -204,9 +204,11 @@ public class AppMasterLauncher extends AbstractLauncher { ); } - // For now, only getting tokens for the default file-system. - FileSystem fs = coreFileSystem.getFileSystem(); - fs.addDelegationTokens(tokenRenewer, credentials); + if (this.getConf().get("mapreduce.job.credentials.binary") == null) { + // For now, only getting tokens for the default file-system. + FileSystem fs = coreFileSystem.getFileSystem(); + fs.addDelegationTokens(tokenRenewer, credentials); + } }
