Repository: incubator-gobblin Updated Branches: refs/heads/master dcdf7cacd -> 7ab7f8b09
[GOBBLIN-553] Fix FileAwareInputStreamDataWriterTest access to public key Closes #2414 from htran1/encryption_test_fix1 Project: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/commit/7ab7f8b0 Tree: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/tree/7ab7f8b0 Diff: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/diff/7ab7f8b0 Branch: refs/heads/master Commit: 7ab7f8b098a1ca7e2b45fef98f2c28e470796199 Parents: dcdf7ca Author: Hung Tran <[email protected]> Authored: Thu Aug 2 11:53:53 2018 -0700 Committer: Hung Tran <[email protected]> Committed: Thu Aug 2 11:53:53 2018 -0700 ---------------------------------------------------------------------- .../FileAwareInputStreamDataWriterTest.java | 11 +++- .../crypto/GobblinEncryptionProviderTest.java | 10 ++-- .../src/test/resources/testPrivate.key | 59 ++++++++++++++++++++ .../src/test/resources/testPublic.key | 30 ++++++++++ 4 files changed, 103 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/7ab7f8b0/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/copy/writer/FileAwareInputStreamDataWriterTest.java ---------------------------------------------------------------------- diff --git a/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/copy/writer/FileAwareInputStreamDataWriterTest.java b/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/copy/writer/FileAwareInputStreamDataWriterTest.java index e772158..517077e 100644 --- a/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/copy/writer/FileAwareInputStreamDataWriterTest.java +++ b/gobblin-data-management/src/test/java/org/apache/gobblin/data/management/copy/writer/FileAwareInputStreamDataWriterTest.java @@ -23,6 +23,7 @@ import java.io.IOException; import java.util.List; import java.util.Properties; +import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; import org.apache.commons.lang.RandomStringUtils; import org.apache.hadoop.conf.Configuration; @@ -199,9 +200,13 @@ public class FileAwareInputStreamDataWriterTest { state.setProp(ConfigurationKeys.WRITER_OUTPUT_DIR, new Path(testTempPath, "output").toString()); state.setProp(ConfigurationKeys.WRITER_FILE_PATH, RandomStringUtils.randomAlphabetic(5)); state.setProp("writer.encrypt." + EncryptionConfigParser.ENCRYPTION_ALGORITHM_KEY, "gpg"); - state.setProp("writer.encrypt." + EncryptionConfigParser.ENCRYPTION_KEYSTORE_PATH_KEY, - GPGFileEncryptor.class.getResource( - GPGFileEncryptorTest.PUBLIC_KEY).toString()); + + File publicKeyFile = new File(testTempPath.toString(), "public.key"); + + FileUtils.copyInputStreamToFile(GPGFileEncryptor.class.getResourceAsStream(GPGFileEncryptorTest.PUBLIC_KEY), + publicKeyFile); + + state.setProp("writer.encrypt." + EncryptionConfigParser.ENCRYPTION_KEYSTORE_PATH_KEY, publicKeyFile.getAbsolutePath()); state.setProp("writer.encrypt." + EncryptionConfigParser.ENCRYPTION_KEYSTORE_PASSWORD_KEY, GPGFileEncryptorTest.PASSPHRASE); state.setProp("writer.encrypt." + EncryptionConfigParser.ENCRYPTION_KEY_NAME, http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/7ab7f8b0/gobblin-modules/gobblin-crypto-provider/src/test/java/org/apache/gobblin/crypto/GobblinEncryptionProviderTest.java ---------------------------------------------------------------------- diff --git a/gobblin-modules/gobblin-crypto-provider/src/test/java/org/apache/gobblin/crypto/GobblinEncryptionProviderTest.java b/gobblin-modules/gobblin-crypto-provider/src/test/java/org/apache/gobblin/crypto/GobblinEncryptionProviderTest.java index 682e03d..421c7ba 100644 --- a/gobblin-modules/gobblin-crypto-provider/src/test/java/org/apache/gobblin/crypto/GobblinEncryptionProviderTest.java +++ b/gobblin-modules/gobblin-crypto-provider/src/test/java/org/apache/gobblin/crypto/GobblinEncryptionProviderTest.java @@ -34,6 +34,8 @@ import org.apache.gobblin.codec.StreamCodec; public class GobblinEncryptionProviderTest { private static final long KEY_ID = -4435883136602571409L; + private static final String PRIVATE_KEY = "/testPrivate.key"; + private static final String PUBLIC_KEY = "/testPublic.key"; @Test public void testCanBuildAes() throws IOException { @@ -61,7 +63,7 @@ public class GobblinEncryptionProviderTest { Map<String, Object> encryptionProperties = new HashMap<>(); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_ALGORITHM_KEY, GPGCodec.TAG); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_KEYSTORE_PATH_KEY, GPGFileEncryptor.class.getResource( - GPGFileEncryptorTest.PUBLIC_KEY).toString()); + PUBLIC_KEY).toString()); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_KEY_NAME, String.valueOf(GPGFileEncryptorTest.KEY_ID)); testGPG(encryptionProperties); @@ -72,7 +74,7 @@ public class GobblinEncryptionProviderTest { Map<String, Object> encryptionProperties = new HashMap<>(); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_ALGORITHM_KEY, GPGCodec.TAG); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_KEYSTORE_PATH_KEY, GPGFileEncryptor.class.getResource( - GPGFileEncryptorTest.PUBLIC_KEY).toString()); + PUBLIC_KEY).toString()); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_KEY_NAME, String.valueOf(GPGFileEncryptorTest.KEY_ID)); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_CIPHER_KEY, "CAST5"); @@ -84,7 +86,7 @@ public class GobblinEncryptionProviderTest { Map<String, Object> encryptionProperties = new HashMap<>(); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_ALGORITHM_KEY, GPGCodec.TAG); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_KEYSTORE_PATH_KEY, GPGFileEncryptor.class.getResource( - GPGFileEncryptorTest.PUBLIC_KEY).toString()); + PUBLIC_KEY).toString()); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_KEY_NAME, String.valueOf(GPGFileEncryptorTest.KEY_ID)); encryptionProperties.put(EncryptionConfigParser.ENCRYPTION_CIPHER_KEY, "BadCipher"); @@ -98,7 +100,7 @@ public class GobblinEncryptionProviderTest { Map<String, Object> decryptionProperties = new HashMap<>(); decryptionProperties.put(EncryptionConfigParser.ENCRYPTION_ALGORITHM_KEY, GPGCodec.TAG); decryptionProperties.put(EncryptionConfigParser.ENCRYPTION_KEYSTORE_PATH_KEY, GPGFileEncryptor.class.getResource( - GPGFileEncryptorTest.PRIVATE_KEY).toString()); + PRIVATE_KEY).toString()); decryptionProperties.put(EncryptionConfigParser.ENCRYPTION_KEYSTORE_PASSWORD_KEY, GPGFileEncryptorTest.PASSPHRASE); StreamCodec decryptor = EncryptionFactory.buildStreamCryptoProvider(decryptionProperties); Assert.assertNotNull(decryptor); http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/7ab7f8b0/gobblin-modules/gobblin-crypto-provider/src/test/resources/testPrivate.key ---------------------------------------------------------------------- diff --git a/gobblin-modules/gobblin-crypto-provider/src/test/resources/testPrivate.key b/gobblin-modules/gobblin-crypto-provider/src/test/resources/testPrivate.key new file mode 100644 index 0000000..530e2bf --- /dev/null +++ b/gobblin-modules/gobblin-crypto-provider/src/test/resources/testPrivate.key @@ -0,0 +1,59 @@ +-----BEGIN PGP PRIVATE KEY BLOCK----- +Version: GnuPG v2.0.14 (GNU/Linux) + +lQO+BFrGokcBCAC7nwmzuuSZiWj03+mlcRuvQHCX0WEnOHxssgBXO30TEn4SeIoi +fdgsQzVKpUvLdJK6IowQ/uYOO1llG/5EkFZKYBV91+MXuaauo5cpmN7VaFL5Cex1 +5wT2cQq1QUWIsJb0sssnHYlsMU6gNTL/vg5wqtVjK2wvbi2K3q+d3Azph7dYHvUE +VB0IFFdaBweZHY9uMgtOy3EMB+LuNoRAwkh7go8UJNShI2xCFx/dKcHddRXDax3u +vXasxnp+bUawFCNx55l0vpsMCmeWCWrLEaSeKKAPEq/cyDFQkOoUSlqsb7LsIT1u +v6qgOc3Dfex7dwSJyJ/5UvYGyP64jJ0rB7wDABEBAAH+AgMC6tDNPoeqfMHU9JDz +YCueCAeN9GzF/BsthIBo2puV/5gB2LXhPpugJjcbCC0B4/ypYJndBz2pNlWHeaS9 +Y296Pwb80DdUCi5tIJJVZuTpqZDW7vXeKLPPbPPsV23ob4qKmY41tMjKgISBvk2f +2gqCWHdAmKcf+l2/xBZ/3QX2Du0Ph9B6sW0u4j/l67VuEZy7T+56y8GWdWxpLYUN +ga62T2tVv1T7siuygY9JsXIcdVY33g/rY/1/OGHA1C6do+e108wNg5B5Y6WJcYxN +NyxG6VeZiLKzXVHCKYr8FhKFXzGjQVbpC60pYGcozFbBMpY48tjbrSbOdxUMefQ0 +68QPpdIX+YDhDvu1QfjCPkjehniCP2xFvxNyR5xyVEC7PlxyGi7SijENtJZmHKLo +3BwpcU5Z+HfNzAA2MI9j5MtA5pAaClVPkW51Ko7FEKsRZEXX/OjNfw+TdBFyZFoB +TpHn1YUSfC6RQhKkEwIrE/bb9NvFclL4sMhziM438S4pqvqBqduajEUSDxjkL7Db +ZAUb1+o6YbS44cqzSgX0kaIZnE/H6yUcleCll8guYPDNrSA/cEbXmU2HpdzIs7ZL +FmPH0JMR138in4eNJdT+lxgyHnFG54rQFRZyOqZTHocXsmwGqyw+iF3DOCLsrnLX +NLj8sjswL0ZF74FF3RT6okZV6UbQmKUkKEsVJuGeENO1UUq+cREhtyRg01d9X3WK +2x0WLiz0Q+Pv0VqVr19p28mNs9c+3GTPpbqr1izcY6vDequ3+FrZ9uTj/k5GwEWb +hKLKdewmjhiw9xYn90LuyeTxr3uShsu9Pak0ohe8BIZ3+ki4+tuZoQ7MXca5J9Xq +5wclkXPJWjcEjVCITk+/Xb1VrDxmP3rmye9RmDam5cjS8lT17he7ev5ckpIDT5dg +C7QwR29iYmxpbiBUZXN0IChnb2JibGluKSA8Z29iYmxpbkBnb2JibGluLmdvYmJs +aW4+iQE4BBMBAgAiBQJaxqJHAhsDBgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAK +CRDCcJPKIah9bw8SB/41ckPbSP+iudYo+YMbv927AOdK8ps4IIbz+79YCbur6Yn2 +cVIGFj+MqnLVXC1PSHuHL8h/Sojy2JfN8TppfaeMiRRZNGP0OKkHcjZIvPx37KwY +xNJrSB2YXa1fuFdACH+B/z4ZRHUcEhv2+8McX0QeeA/yRaVG92KB63RTvtn4UNE/ +6o56PVdiDEHqILDi4jx1w2jKCEDTB5j/W78YQyh7xojiY2w5bECwTJu7mrU7dNaS +y2SbZNC0SBkPo2RZB7nHr2y+6fWhSrXaz//s11sYZ81vBhbhyb08uaU0FqmV1+qM +/3OZtt/hj8Kbq6anQpB14k2zi0Va/F4N1Ye7oR0RnQO+BFrGokcBCADECehqbZr9 +2t3rb7VNdsskpSYBZoShbMSiequHT8v6/sISW409ECtMKbsHnghyiVhQlZ6MAVFE +lovPbMYGd3Bfh7Jm8TapZJ66NnXglrZJdHxlwdemw93lN0+LFgYqCB7XM1lZQRXm +dxdaqMoLAhJO7GiHSFC7dgmSiWq5kckCzwsfdopNn0ZSTLJLrWswoBqtEiOv/7JR +Ehqw8+292eWVhR/1sM5011NQUd1fBUbXqvb+osvxFkNdo2UonnGpi8qjhN0lCPUK +rh1zI3BCe2sVTkkl8RNpAANkxrXk1JF6hOgpIxNf4gngGyfwsYbdC/japbIFy5ur +SUzW2fLGZ6xBABEBAAH+AgMC6tDNPoeqfMHU9MP+KMSe0fDaDTER+1RmAP6BZSMR +Ts/mkHZCNDrAW1BAsJq+B9ixjZD3+6FmuitbG3wDRNAvZw8sm7Hvh3iWPYUh1lEH +f728unCRdfxzGnqhLff/5YD1blz7eYxB3DM7WtLMpbe35s5koO50q2Ve+6iXdOeI +qC4H7ZFvA7YCq39t9FgNMbo+oWObqKLObUGmx7cIwajJymSpZNq06qaKNubXJB26 +LPGD2oWhFZ5DL0f+w1dEZ3fMqB0pDjINnYtXAY8U4/QANFTzN2xKrABghtkltz2Q ++EGP/yeLBnNmOlYw1zKUd/D857JgsMr2cOA9PPO3CUO672hZcPNpZrU1sJRV2y86 +pA0mMnBdPS9uRwd0DLagQ0Ttu2Vu/Warl5FPjYzQikvKOYoaMth8/cccPhhtnIej +L3WLgTuQbET06LK+pwA8LfOjWvDCDTwcuR9riHfngo9tOOCqJfWxU3aKv6FWVW3w +QSVflPKO11LZNBvQcat68jhU/TSTY9wfGjQeMDzZ1iKcJWM7cRZL0KGYuhLe/1GV +BMKZrTd64BUpWt/KO4q9nAqNJwjAgzkWJKUJXFtuPb+tH1e628XmjRXZt9YcXvSZ +fayV3KhaisVkYPbrx+Vxe7FBDtmMBQmkvxEkDI49iprSu5xJoQyOOdTP8aMc9UJX +5UmBY1kvTBN78246+FA6T6caTW/tPhKBHSAV8I7xS6fCHrWQh8X7x885UGRhVSmT +pVl5EBgHtoBo8GsHdq/4Jk55REbvnkOV47ziIRP0lc5SOjXNt+3v2h9sqyVAnHCy +FEq9oiAGV5NoXxA0qS1zllZc+Xleagw4ezWXe6NqBy6++j/F3Vsu9aVXmqBgXReC +afCbY62xSDjf8HAY1n76lu9XxhntC6D9pqb3rCjH/YkBHwQYAQIACQUCWsaiRwIb +DAAKCRDCcJPKIah9b1c6B/4/W/VSv0m+glv0j+fuF3tkai8vcopSyakhViNu8UZg +prxjFJtLGxUf3XorQltOXvgSiKDucsjnvMwBKa9Y/neEyQqmEssP/aBi1YwByZ4n +eEju7g4xr0yJyMvKGq3bz4/Ou+VHfh9Dju7qViyqr260H1s8bUt9YHolJNmCnAfX +Rp+jAd3GaC8Y45Vkj5Mri96m2sgmtPgs+rqCmvvd07euEiWphqmZb5srcNRPMuE8 +f+0IjbP+6mlaq2E7AY+bZnexEpiGxGgT8UkFwEf/c2Cq2QBF6LbFuwjngE6tXQtN +j37Zz7oJB+lHvjWPZ/C7Zt/mzQmVjhyUmrShpbweDg7S +=27va +-----END PGP PRIVATE KEY BLOCK----- http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/7ab7f8b0/gobblin-modules/gobblin-crypto-provider/src/test/resources/testPublic.key ---------------------------------------------------------------------- diff --git a/gobblin-modules/gobblin-crypto-provider/src/test/resources/testPublic.key b/gobblin-modules/gobblin-crypto-provider/src/test/resources/testPublic.key new file mode 100644 index 0000000..ee68362 --- /dev/null +++ b/gobblin-modules/gobblin-crypto-provider/src/test/resources/testPublic.key @@ -0,0 +1,30 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v2.0.14 (GNU/Linux) + +mQENBFrGokcBCAC7nwmzuuSZiWj03+mlcRuvQHCX0WEnOHxssgBXO30TEn4SeIoi +fdgsQzVKpUvLdJK6IowQ/uYOO1llG/5EkFZKYBV91+MXuaauo5cpmN7VaFL5Cex1 +5wT2cQq1QUWIsJb0sssnHYlsMU6gNTL/vg5wqtVjK2wvbi2K3q+d3Azph7dYHvUE +VB0IFFdaBweZHY9uMgtOy3EMB+LuNoRAwkh7go8UJNShI2xCFx/dKcHddRXDax3u +vXasxnp+bUawFCNx55l0vpsMCmeWCWrLEaSeKKAPEq/cyDFQkOoUSlqsb7LsIT1u +v6qgOc3Dfex7dwSJyJ/5UvYGyP64jJ0rB7wDABEBAAG0MEdvYmJsaW4gVGVzdCAo +Z29iYmxpbikgPGdvYmJsaW5AZ29iYmxpbi5nb2JibGluPokBOAQTAQIAIgUCWsai +RwIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQwnCTyiGofW8PEgf+NXJD +20j/ornWKPmDG7/duwDnSvKbOCCG8/u/WAm7q+mJ9nFSBhY/jKpy1VwtT0h7hy/I +f0qI8tiXzfE6aX2njIkUWTRj9DipB3I2SLz8d+ysGMTSa0gdmF2tX7hXQAh/gf8+ +GUR1HBIb9vvDHF9EHngP8kWlRvdiget0U77Z+FDRP+qOej1XYgxB6iCw4uI8dcNo +yghA0weY/1u/GEMoe8aI4mNsOWxAsEybu5q1O3TWkstkm2TQtEgZD6NkWQe5x69s +vun1oUq12s//7NdbGGfNbwYW4cm9PLmlNBapldfqjP9zmbbf4Y/Cm6ump0KQdeJN +s4tFWvxeDdWHu6EdEbkBDQRaxqJHAQgAxAnoam2a/drd62+1TXbLJKUmAWaEoWzE +onqrh0/L+v7CEluNPRArTCm7B54IcolYUJWejAFRRJaLz2zGBndwX4eyZvE2qWSe +ujZ14Ja2SXR8ZcHXpsPd5TdPixYGKgge1zNZWUEV5ncXWqjKCwISTuxoh0hQu3YJ +kolquZHJAs8LH3aKTZ9GUkyyS61rMKAarRIjr/+yURIasPPtvdnllYUf9bDOdNdT +UFHdXwVG16r2/qLL8RZDXaNlKJ5xqYvKo4TdJQj1Cq4dcyNwQntrFU5JJfETaQAD +ZMa15NSReoToKSMTX+IJ4Bsn8LGG3Qv42qWyBcubq0lM1tnyxmesQQARAQABiQEf +BBgBAgAJBQJaxqJHAhsMAAoJEMJwk8ohqH1vVzoH/j9b9VK/Sb6CW/SP5+4Xe2Rq +Ly9yilLJqSFWI27xRmCmvGMUm0sbFR/deitCW05e+BKIoO5yyOe8zAEpr1j+d4TJ +CqYSyw/9oGLVjAHJnid4SO7uDjGvTInIy8oardvPj8675Ud+H0OO7upWLKqvbrQf +WzxtS31geiUk2YKcB9dGn6MB3cZoLxjjlWSPkyuL3qbayCa0+Cz6uoKa+93Tt64S +JamGqZlvmytw1E8y4Tx/7QiNs/7qaVqrYTsBj5tmd7ESmIbEaBPxSQXAR/9zYKrZ +AEXotsW7COeATq1dC02PftnPugkH6Ue+NY9n8Ltm3+bNCZWOHJSatKGlvB4ODtI= +=02M+ +-----END PGP PUBLIC KEY BLOCK-----
