embulk-input-sftp 0.2.11 → 0.2.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aee50a24af4aefe560e866185b937b75fd55c6de
|
4
|
+
data.tar.gz: 89a75e4a81249fb7b72a94843da40c3f46884dba
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4d6ff3b1f944e43d293c1354b671f0b7e888a67c8b5375ba199ef717a5236cae3f192803f120ce267447fb10b1a11ade82cafee9b7b675f0bb5f440a3619df37
|
7
|
+
data.tar.gz: 33974b8d4d2746a0a731d0afaf72604a36ee6804fccda0ddfaea36bd79b0f1d0a44ca5e0f255b78c0ef693d9cb583d9acc7a9d028cd1f129515e6cd0f722cb8a
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
## 0.2.12 - 2018-10-05
|
2
|
+
* [maintenance] Give up processing and throw ConfigException when "Auth fail" first appears [#33](https://github.com/embulk/embulk-input-sftp/pull/33)
|
3
|
+
|
1
4
|
## 0.2.11 - 2018-05-07
|
2
5
|
* [maintenance] Use java.util.regex.Pattern for host name validation [#32](https://github.com/embulk/embulk-input-sftp/pull/32)
|
3
6
|
|
data/build.gradle
CHANGED
@@ -264,6 +264,12 @@ public class SftpFileInput
|
|
264
264
|
@Override
|
265
265
|
public boolean isRetryableException(Exception exception)
|
266
266
|
{
|
267
|
+
if (exception.getCause() != null && exception.getCause().getCause() != null) {
|
268
|
+
Throwable cause = exception.getCause().getCause();
|
269
|
+
if (cause.getMessage() != null && cause.getMessage().contains("Auth fail")) {
|
270
|
+
throw new ConfigException(exception);
|
271
|
+
}
|
272
|
+
}
|
267
273
|
if (exception instanceof ConfigException) {
|
268
274
|
return false;
|
269
275
|
}
|
@@ -288,14 +294,6 @@ public class SftpFileInput
|
|
288
294
|
public void onGiveup(Exception firstException, Exception lastException)
|
289
295
|
throws RetryGiveupException
|
290
296
|
{
|
291
|
-
// Generally, Auth fail should be caught and throw ConfigException when first retry. But this library is a bit unstable.
|
292
|
-
// So we throw ConfigException after all retries are completed
|
293
|
-
if (lastException.getCause() != null && lastException.getCause().getCause() != null) {
|
294
|
-
Throwable cause = lastException.getCause().getCause();
|
295
|
-
if (cause.getMessage().contains("Auth fail")) {
|
296
|
-
throw new ConfigException(lastException);
|
297
|
-
}
|
298
|
-
}
|
299
297
|
}
|
300
298
|
});
|
301
299
|
}
|
@@ -56,6 +56,7 @@ import java.util.Collections;
|
|
56
56
|
import java.util.List;
|
57
57
|
|
58
58
|
import static org.junit.Assert.assertEquals;
|
59
|
+
import static org.junit.Assert.fail;
|
59
60
|
|
60
61
|
public class TestSftpFileInputPlugin
|
61
62
|
{
|
@@ -248,6 +249,36 @@ public class TestSftpFileInputPlugin
|
|
248
249
|
assertEquals(SftpFileInput.getRelativePath(task, Optional.of(expected.get(1).get(0))), configDiff.get(String.class, "last_path"));
|
249
250
|
}
|
250
251
|
|
252
|
+
@Test
|
253
|
+
public void testListFilesAuthFail() throws Exception
|
254
|
+
{
|
255
|
+
uploadFile(Resources.getResource("sample_01.csv").getPath(), REMOTE_DIRECTORY + "sample_01.csv", true);
|
256
|
+
uploadFile(Resources.getResource("sample_02.csv").getPath(), REMOTE_DIRECTORY + "sample_02.csv", true);
|
257
|
+
|
258
|
+
PluginTask task = config.deepCopy().set("user", "wrong_user").loadConfig(PluginTask.class);
|
259
|
+
|
260
|
+
plugin.transaction(config, new FileInputPlugin.Control() {
|
261
|
+
@Override
|
262
|
+
public List<TaskReport> run(TaskSource taskSource, int taskCount)
|
263
|
+
{
|
264
|
+
assertEquals(2, taskCount);
|
265
|
+
return emptyTaskReports(taskCount);
|
266
|
+
}
|
267
|
+
});
|
268
|
+
|
269
|
+
Method listFilesByPrefix = SftpFileInput.class.getDeclaredMethod("listFilesByPrefix", PluginTask.class);
|
270
|
+
listFilesByPrefix.setAccessible(true);
|
271
|
+
try {
|
272
|
+
listFilesByPrefix.invoke(plugin, task);
|
273
|
+
fail();
|
274
|
+
}
|
275
|
+
catch (Exception ex) {
|
276
|
+
Throwable cause = ex.getCause();
|
277
|
+
assertEquals(cause.getClass(), ConfigException.class);
|
278
|
+
assertEquals(cause.getCause().getCause().getCause().getMessage(), "Auth fail");
|
279
|
+
}
|
280
|
+
}
|
281
|
+
|
251
282
|
@Test
|
252
283
|
public void testListFilesWithPathPrefixPointToFile() throws Exception
|
253
284
|
{
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: embulk-input-sftp
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.12
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Satoshi Akama
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-05
|
11
|
+
date: 2018-10-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
@@ -69,10 +69,10 @@ files:
|
|
69
69
|
- src/test/resources/id_rsa.pub
|
70
70
|
- src/test/resources/sample_01.csv
|
71
71
|
- src/test/resources/sample_02.csv
|
72
|
-
- classpath/commons-io-2.6.jar
|
73
72
|
- classpath/commons-logging-1.2.jar
|
73
|
+
- classpath/embulk-input-sftp-0.2.12.jar
|
74
74
|
- classpath/commons-vfs2-2.2.jar
|
75
|
-
- classpath/
|
75
|
+
- classpath/commons-io-2.6.jar
|
76
76
|
- classpath/jsch-0.1.54.jar
|
77
77
|
homepage: https://github.com/embulk/embulk-input-sftp
|
78
78
|
licenses:
|