Skip to content

Commit 41ce855

Browse files
committed
Integrated into run command.
1 parent 8eafb47 commit 41ce855

File tree

12 files changed

+105
-22
lines changed

12 files changed

+105
-22
lines changed

src/main/groovy/org/pipelinelabs/pipeline/cli/dsl/script/PipelineScript.groovy

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package org.pipelinelabs.pipeline.cli.dsl.script
33
import org.pipelinelabs.pipeline.dsl.PipelineDsl
44

55
public abstract class PipelineScript extends Script {
6-
76
@Delegate
87
private PipelineDsl pipeline;
98

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
package org.pipelinelabs.pipeline.dsl;
22

3+
import java.util.List;
4+
35
import groovy.lang.Closure;
46

7+
import org.pipelinelabs.pipeline.messenger.MessageContext;
8+
59
public interface AnnounceDsl {
610
void email(Closure config);
11+
List<MessageContext> toContexts();
712
}

src/main/groovy/org/pipelinelabs/pipeline/dsl/EmailDsl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import java.util.List;
44
import org.pipelinelabs.pipeline.messenger.internal.EmailContext;
55

6-
public interface EmailDsl {
6+
public interface EmailDsl extends MessageContextDsl<EmailContext> {
77
List<String> getTo();
88
void to(String... to);
99
void setTo(List<String> to);

src/main/groovy/org/pipelinelabs/pipeline/dsl/EmailMessengerDsl.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ public interface EmailMessengerDsl {
77
void setHost(String host);
88
int getPort();
99
void setPort(int port);
10+
boolean getTls();
11+
void setTls(boolean tls);
1012
String getUsername();
1113
void setUsername(String username);
1214
String getPassword();
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package org.pipelinelabs.pipeline.dsl;
2+
3+
import org.pipelinelabs.pipeline.messenger.MessageContext;
4+
5+
public interface MessageContextDsl<T extends MessageContext> {
6+
T toContext();
7+
}

src/main/groovy/org/pipelinelabs/pipeline/dsl/MessengerDsl.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
import groovy.lang.Closure;
44

5+
import org.pipelinelabs.pipeline.messenger.Messenger;
6+
57
public interface MessengerDsl {
68
void email(Closure config);
9+
Messenger toMessenger();
710
}

src/main/groovy/org/pipelinelabs/pipeline/dsl/PipelineDsl.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,11 @@ public interface PipelineDsl {
99

1010
void echo(String format, Object... values);
1111

12+
// MessengerDsl getMessenger();
13+
1214
MessengerDsl messenger(Closure closure);
1315

16+
// AnnounceDsl getAnnounce();
17+
1418
AnnounceDsl announce(Closure closure);
1519
}
Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,20 @@
11
package org.pipelinelabs.pipeline.dsl.internal
22

33
import org.pipelinelabs.pipeline.dsl.AnnounceDsl
4+
import org.pipelinelabs.pipeline.dsl.EmailDsl
45
import org.pipelinelabs.pipeline.dsl.internal.DefaultEmailDsl
56
import org.pipelinelabs.pipeline.messenger.MessageContext
7+
import org.pipelinelabs.pipeline.util.ConfigureUtil
68

79
class DefaultAnnounceDsl implements AnnounceDsl {
8-
private final List<MessageContext> contexts = []
10+
final EmailDsl email = new DefaultEmailDsl()
911

1012
@Override
1113
void email(Closure config) {
12-
new DefaultEmailDsl().with {
13-
ConfigureUtil.configure(dsl, config)
14-
contexts << dsl.toContext()
15-
}
14+
ConfigureUtil.configure(email, config)
15+
}
16+
17+
List<MessageContext> toContexts() {
18+
return [email].collect { it.toContext() }
1619
}
1720
}

src/main/groovy/org/pipelinelabs/pipeline/dsl/internal/DefaultEmailMessengerDsl.groovy

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import org.springframework.mail.javamail.JavaMailSenderImpl
88
class DefaultEmailMessengerDsl implements EmailMessengerDsl {
99
String host
1010
int port
11+
boolean tls = false
1112
String username
1213
String password
1314
String from
@@ -18,6 +19,10 @@ class DefaultEmailMessengerDsl implements EmailMessengerDsl {
1819
port = this.port
1920
username = this.username
2021
password = this.password
22+
if (tls) {
23+
javaMailProperties = new Properties()
24+
javaMailProperties['mail.smtp.starttls.enable'] = 'true'
25+
}
2126
it
2227
}
2328
return new EmailMessenger(sender, from)
Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,22 @@
11
package org.pipelinelabs.pipeline.dsl.internal
22

33
import org.pipelinelabs.pipeline.messenger.Messenger
4+
import org.pipelinelabs.pipeline.messenger.internal.AggregateMessenger
45
import org.pipelinelabs.pipeline.dsl.MessengerDsl
6+
import org.pipelinelabs.pipeline.dsl.EmailMessengerDsl
7+
import org.pipelinelabs.pipeline.dsl.internal.DefaultEmailMessengerDsl
8+
import org.pipelinelabs.pipeline.util.ConfigureUtil
59

610
class DefaultMessengerDsl implements MessengerDsl {
7-
private final List<Messenger> messengers = []
11+
final EmailMessengerDsl email = new DefaultEmailMessengerDsl()
812

913
@Override
1014
void email(Closure config) {
11-
new DefaultEmailMessengerDsl().with {
12-
ConfigureUtil.configure(dsl, config)
13-
messengers << dsl.toMessenger()
14-
}
15+
ConfigureUtil.configure(email, config)
16+
}
17+
18+
@Override
19+
Messenger toMessenger() {
20+
return new AggregateMessenger([email].collect { it.toMessenger() });
1521
}
1622
}

0 commit comments

Comments
 (0)