Skip to content

Commit

Permalink
core: update errors retryable condition.
Browse files Browse the repository at this point in the history
Format affected source files.

Fixes #1344.

Signed-off-by: rmarian <marianradu12@gmail.com>
  • Loading branch information
Rmarian authored and lburgazzoli committed Apr 3, 2024
1 parent 8e1749e commit c7cb8c6
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 28 deletions.
3 changes: 2 additions & 1 deletion jetcd-core/src/main/java/io/etcd/jetcd/support/Errors.java
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ private Errors() {
}

public static boolean isRetryable(Status status) {
return Status.UNAVAILABLE.getCode().equals(status.getCode()) || isInvalidTokenError(status) || isAuthStoreExpired(status);
return Status.UNAVAILABLE.getCode().equals(status.getCode()) || isInvalidTokenError(status)
|| isAuthStoreExpired(status);
}

public static boolean isInvalidTokenError(Throwable e) {
Expand Down
52 changes: 25 additions & 27 deletions jetcd-core/src/test/java/io/etcd/jetcd/impl/auth/AuthTokenRefreshTest.java
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,41 +1,41 @@
package io.etcd.jetcd.impl.auth;

import java.io.File;
import java.util.List;
import java.util.Objects;
import java.util.concurrent.TimeUnit;

import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Timeout;
import org.junit.jupiter.api.extension.RegisterExtension;

import io.etcd.jetcd.ByteSequence;
import io.etcd.jetcd.Client;
import io.etcd.jetcd.KV;
import io.etcd.jetcd.auth.Permission;
import io.etcd.jetcd.impl.TestUtil;
import io.etcd.jetcd.kv.GetResponse;
import io.etcd.jetcd.test.EtcdClusterExtension;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Timeout;
import org.junit.jupiter.api.extension.RegisterExtension;

import java.io.File;
import java.util.List;
import java.util.Objects;
import java.util.concurrent.TimeUnit;

@Timeout(value = 30)
public class AuthTokenRefreshTest {

@RegisterExtension
public static final EtcdClusterExtension cluster = EtcdClusterExtension.builder()
.withNodes(1)
.withSsl(true)
.withAdditionalArgs(
List.of(
"--auth-token",
"jwt,pub-key=/etc/ssl/etcd/server.pem,priv-key=/etc/ssl/etcd/server-key.pem,sign-method=RS256,ttl=300s"))
.build();
.withNodes(1)
.withSsl(true)
.withAdditionalArgs(
List.of(
"--auth-token",
"jwt,pub-key=/etc/ssl/etcd/server.pem,priv-key=/etc/ssl/etcd/server-key.pem,sign-method=RS256,ttl=300s"))
.build();

private static final ByteSequence key = TestUtil.bytesOf("key");
private static final ByteSequence keyEnd = TestUtil.bytesOf("key1");
private static final ByteSequence user = TestUtil.bytesOf("root");
private static final ByteSequence password = TestUtil.randomByteSequence();


@Test
public void testTokenIsRefreshedWhenRevisionsIsOld() throws Exception {
setUpEnvironment();
Expand Down Expand Up @@ -63,14 +63,13 @@ public void testTokenIsRefreshedWhenRevisionsIsOld() throws Exception {
Assertions.assertEquals(value, getResponse.getKvs().get(0).getValue());
}


private void setUpEnvironment() throws Exception {
final File caFile = new File(Objects.requireNonNull(getClass().getResource("/ssl/cert/ca.pem")).toURI());

Client client = TestUtil.client(cluster)
.authority("etcd0")
.sslContext(b -> b.trustManager(caFile))
.build();
.authority("etcd0")
.sslContext(b -> b.trustManager(caFile))
.build();

// enable authentication to enforce usage of access token
ByteSequence role = TestUtil.bytesOf("root");
Expand All @@ -88,12 +87,11 @@ private Client createAuthClient() throws Exception {
final File caFile = new File(Objects.requireNonNull(getClass().getResource("/ssl/cert/ca.pem")).toURI());

return TestUtil.client(cluster)
.user(user)
.password(password)
.authority("etcd0")
.sslContext(b -> b.trustManager(caFile))
.build();
.user(user)
.password(password)
.authority("etcd0")
.sslContext(b -> b.trustManager(caFile))
.build();
}

}

0 comments on commit c7cb8c6

Please sign in to comment.