Skip to content

Commit 230010c

Browse files
authored
Bump to rc5 (#19)
* Bump to rc5 Signed-off-by: Bogdan Vaneev <[email protected]> * Add script to build and push tag Signed-off-by: Bogdan Vaneev <[email protected]> * Fix tag Signed-off-by: Bogdan Vaneev <[email protected]> * Remove --info from travis Signed-off-by: Bogdan Vaneev <[email protected]>
1 parent 5c68c51 commit 230010c

File tree

10 files changed

+105
-18
lines changed

10 files changed

+105
-18
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ env:
2121
secure: fKXekuaFWyMO+zEDMaRQ4gQApjunjKDqovNbCPFg/th1oGz7I6xJZB18PgLVN8659gZGREwoIVvijU9MJ6U/Ej+o840D0eosF4QQPDANhQ9kKCNLe22Jv3Co6PK+ENltm9KPP31dsIVRiuhoe3vXGgg5iotYSj+8atVl7cCQl0+j0TirKd/Nfs4Vbe6eiQNGCZK+TPKQMla1fvRurBxUJ/2VeCyThP7lIY93Qbm+PiIok7gTw0bFWvzGHqc6a7VOScCr3b00ruIK0k4CAR0klWw7ICP9n7cPJOzvGW45wAhYVcgON2o9TCxwNqOLotLTeQP4QihIQ5GSFaol3vVD7SsnkyZ03YIF8ZlZiWd5+MpPdShvJ586WPyY9drOaZPP8CnOyuD0le0vlmrLo11kCbNKizRaLYr9XrbM4lDSVHwOw8YS/Nhg24pJp7Bh/e3ULyuyNh2lQ6Q1xdeYHzZRUTUBBIgpU5UL0+4skg06lsD4uJSnlyQqBQk/WbraGPwncf/i03v+AHkSHWctUSI6nSHr641GfQnXqunXcI0KWrH22KI0rlEblzjJHHMP5MLvQyMoWDnPhQZS6Ci6dpZpooaZxibf+7OfrCi45uH2V17kedDOX4TPt6b2by7PPwV+7GwdE8IDPA3eBnAvdK0mYxHTSuxWwJtSUsA/DX5SrwA=
2222
script:
2323
- "./gradlew --daemon"
24-
- "./gradlew build --parallel --build-cache --info"
24+
- "./gradlew build --parallel --build-cache"
2525
- "./gradlew jacocoTestReport"
2626
- bash <(curl -s https://codecov.io/bash) -t ${CODECOV_TOKEN}
2727
after_success:

testcontainers/docker/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM hyperledger/iroha:1.0.0_rc4-hotfix1
1+
FROM hyperledger/iroha:1.0.0_rc5
22
WORKDIR /opt/iroha_data
33
ENTRYPOINT [""]
44
COPY run-iroha.sh wait-for-it.sh /
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/usr/bin/env bash
2+
3+
export TAG=warchantua/iroha:1.0.0_rc5
4+
5+
docker build -t $TAG --compress --squash .
6+
docker push $TAG

testcontainers/src/main/java/jp/co/soramitsu/iroha/testcontainers/IrohaContainer.java

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import java.net.URI;
99
import java.time.Duration;
1010
import jp.co.soramitsu.iroha.java.IrohaAPI;
11+
import jp.co.soramitsu.iroha.testcontainers.detail.LoggerConfig;
1112
import jp.co.soramitsu.iroha.testcontainers.detail.PostgresConfig;
1213
import jp.co.soramitsu.iroha.testcontainers.detail.Verbosity;
1314
import lombok.Getter;
@@ -35,7 +36,7 @@ public class IrohaContainer extends FailureDetectingExternalResource implements
3536
public static final String defaultPostgresAlias = "iroha.postgres";
3637
public static final String defaultIrohaAlias = "iroha";
3738
public static final String irohaWorkdir = "/opt/iroha_data";
38-
public static final String defaultIrohaDockerImage = "warchantua/iroha:1.0.0_rc4-hotfix1";
39+
public static final String defaultIrohaDockerImage = "warchantua/iroha:1.0.0_rc5";
3940
public static final String defaultPostgresDockerImage = "postgres:11-alpine";
4041

4142
// env vars
@@ -44,7 +45,7 @@ public class IrohaContainer extends FailureDetectingExternalResource implements
4445
private static final String KEY = "KEY";
4546
private static final String VERBOSITY = "VERBOSITY";
4647

47-
private Verbosity verbosity = Verbosity.INFO;
48+
private String verbosity = Verbosity.CONFIG_FILE;
4849
private String irohaAlias = defaultIrohaAlias;
4950
private String irohaDockerImage = defaultIrohaDockerImage;
5051
private String postgresAlias = defaultPostgresAlias;
@@ -94,7 +95,7 @@ public IrohaContainer configure() {
9495
.withEnv(POSTGRES_HOST, postgresAlias)
9596
.withEnv(POSTGRES_USER, postgresDockerContainer.getUsername())
9697
.withEnv("WAIT_TIMEOUT", "0") // don't wait for postgres
97-
.withEnv(VERBOSITY, String.valueOf(verbosity.getLevel()))
98+
.withEnv(VERBOSITY, verbosity)
9899
.withNetwork(network)
99100
.withExposedPorts(conf.getIrohaConfig().getTorii_port())
100101
.withFileSystemBind(conf.getDir().getAbsolutePath(), irohaWorkdir, READ_ONLY)
@@ -125,7 +126,13 @@ public IrohaContainer withPeerConfig(@NonNull PeerConfig conf) {
125126
* Setter for irohad verbosity.
126127
*/
127128
public IrohaContainer withVerbosity(Verbosity verbosity) {
128-
this.verbosity = verbosity;
129+
this.verbosity = verbosity.getLevel();
130+
return this;
131+
}
132+
133+
public IrohaContainer withLoggerConfig(LoggerConfig loggerConfig) {
134+
this.verbosity = Verbosity.CONFIG_FILE;
135+
this.conf.getIrohaConfig().setLog(loggerConfig);
129136
return this;
130137
}
131138

testcontainers/src/main/java/jp/co/soramitsu/iroha/testcontainers/PeerConfig.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import static java.nio.charset.StandardCharsets.UTF_8;
44

5+
import com.fasterxml.jackson.annotation.JsonInclude.Include;
56
import com.fasterxml.jackson.databind.ObjectMapper;
67
import com.google.protobuf.util.JsonFormat;
78
import iroha.protocol.BlockOuterClass;
@@ -14,6 +15,7 @@
1415
import javax.xml.bind.DatatypeConverter;
1516
import jp.co.soramitsu.iroha.testcontainers.detail.GenesisBlockBuilder;
1617
import jp.co.soramitsu.iroha.testcontainers.detail.IrohaConfig;
18+
import jp.co.soramitsu.iroha.testcontainers.detail.LoggerConfig;
1719
import jp.co.soramitsu.iroha.testcontainers.detail.RuntimeIOException;
1820
import lombok.AllArgsConstructor;
1921
import lombok.Builder;
@@ -33,6 +35,8 @@
3335
public class PeerConfig {
3436

3537
public static final String peerKeypairName = "iroha_peer_key";
38+
private static final ObjectMapper mapper = new ObjectMapper()
39+
.setSerializationInclusion(Include.NON_NULL);
3640

3741
@Getter
3842
private final Map<String, KeyPair> keyPairMap = new HashMap<String, KeyPair>() {{
@@ -65,6 +69,9 @@ public void finalize() {
6569
.addDefaultTransaction()
6670
.build();
6771

72+
@Getter
73+
private LoggerConfig loggerConfig;
74+
6875
private void writeToFile(String filename, String data) throws IOException {
6976
File file = new File(dir, filename);
7077
PrintWriter writer = new PrintWriter(file);
@@ -77,7 +84,6 @@ private void writeKey(String filename, byte[] key) throws IOException {
7784
}
7885

7986
private void writeJsonConfig() throws IOException {
80-
ObjectMapper mapper = new ObjectMapper();
8187
byte[] data = mapper.writeValueAsBytes(irohaConfig);
8288
writeToFile(IrohaConfig.defaultConfigFileName, new String(data, UTF_8));
8389
}
@@ -90,6 +96,11 @@ private void writeGenesisBlock() throws IOException {
9096
);
9197
}
9298

99+
public void writeLoggerConfig() throws IOException {
100+
byte[] data = mapper.writeValueAsBytes(loggerConfig);
101+
writeToFile(IrohaConfig.defaultConfigFileName, new String(data, UTF_8));
102+
}
103+
93104
public PeerConfig withPeerKeyPair(KeyPair keyPair) {
94105
return withKeyPair(peerKeypairName, keyPair);
95106
}

testcontainers/src/main/java/jp/co/soramitsu/iroha/testcontainers/detail/IrohaConfig.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ public class IrohaConfig implements Cloneable {
5959

6060
@Builder.Default
6161
private int stale_stream_max_rounds = 2;
62+
63+
private LoggerConfig log;
6264

6365
@Override
6466
public IrohaConfig clone() {
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package jp.co.soramitsu.iroha.testcontainers.detail;
2+
3+
import java.util.Map;
4+
import lombok.Builder;
5+
import lombok.Value;
6+
7+
@Builder
8+
@Value
9+
public class LoggerConfig {
10+
11+
@Builder.Default
12+
private Verbosity level = Verbosity.INFO;
13+
14+
private LoggerPattern patterns;
15+
16+
private Map<String, LoggerConfig> children;
17+
18+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package jp.co.soramitsu.iroha.testcontainers.detail;
2+
3+
import lombok.Builder;
4+
import lombok.Value;
5+
6+
@Builder
7+
@Value
8+
public class LoggerPattern {
9+
10+
private String trace;
11+
private String debug;
12+
private String info;
13+
private String warn;
14+
private String error;
15+
private String critical;
16+
17+
}
Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,21 @@
11
package jp.co.soramitsu.iroha.testcontainers.detail;
22

3+
import com.fasterxml.jackson.annotation.JsonValue;
34
import lombok.Getter;
45
import lombok.RequiredArgsConstructor;
56

67
@RequiredArgsConstructor
78
@Getter
89
public enum Verbosity {
9-
TRACE(0),
10-
DEBUG(1),
11-
INFO(2),
12-
WARN(3),
13-
ERROR(4),
14-
CRITICAL(5),
15-
OFF(6);
10+
TRACE("trace"),
11+
DEBUG("debug"),
12+
INFO("info"),
13+
WARN("warn"),
14+
ERROR("error"),
15+
CRITICAL("critical");
1616

17-
private final int level;
17+
@JsonValue
18+
private final String level;
19+
20+
public static final String CONFIG_FILE = "config_file";
1821
}

testcontainers/src/test/groovy/jp/co/soramitsu/iroha/testcontainers/IrohaContainerTest.groovy

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@ import io.reactivex.observers.TestObserver
55
import iroha.protocol.BlockOuterClass
66
import jp.co.soramitsu.iroha.java.IrohaAPI
77
import jp.co.soramitsu.iroha.java.Transaction
8-
import jp.co.soramitsu.iroha.testcontainers.detail.GenesisBlockBuilder
9-
import jp.co.soramitsu.iroha.testcontainers.detail.IrohaConfig
10-
import jp.co.soramitsu.iroha.testcontainers.detail.Verbosity
8+
import jp.co.soramitsu.iroha.testcontainers.detail.*
119
import org.testcontainers.shaded.com.fasterxml.jackson.databind.ObjectMapper
1210
import spock.lang.Specification
1311

@@ -20,6 +18,7 @@ class IrohaContainerTest extends Specification {
2018
def mapper = new ObjectMapper()
2119
def c = ir.getConf()
2220
def d = c.getDir()
21+
println(d)
2322

2423
when: "create tmp dir and dump files"
2524
ir.configure()
@@ -84,4 +83,28 @@ class IrohaContainerTest extends Specification {
8483
!ir.postgresDockerContainer.isCreated()
8584
!ir.postgresDockerContainer.isRunning()
8685
}
86+
87+
def "tree logger test"() {
88+
given:
89+
def consensusLog = LoggerConfig.builder().level(Verbosity.DEBUG).build()
90+
91+
def pattern = LoggerPattern.builder()
92+
.info("HEHEHEHEHEHEHEHEHE %v")
93+
.build()
94+
95+
def lc = LoggerConfig.builder()
96+
.level(Verbosity.INFO)
97+
.patterns(pattern)
98+
.children(Collections.singletonMap("Irohad", consensusLog))
99+
.build()
100+
101+
def iroha = new IrohaContainer()
102+
.withLoggerConfig(lc)
103+
104+
when:
105+
iroha.start()
106+
107+
then:
108+
noExceptionThrown()
109+
}
87110
}

0 commit comments

Comments
 (0)