Details
diff --git a/src/main/java/azkaban/executor/mail/DefaultMailCreator.java b/src/main/java/azkaban/executor/mail/DefaultMailCreator.java
index 4287743..a4e5038 100644
--- a/src/main/java/azkaban/executor/mail/DefaultMailCreator.java
+++ b/src/main/java/azkaban/executor/mail/DefaultMailCreator.java
@@ -113,8 +113,8 @@ public class DefaultMailCreator implements MailCreator {
@Override
public boolean createErrorEmail(ExecutableFlow flow, EmailMessage message,
- String azkabanName, String clientHostname, String clientPortNumber,
- String... vars) {
+ String azkabanName, String scheme, String clientHostname,
+ String clientPortNumber, String... vars) {
ExecutionOptions option = flow.getExecutionOptions();
@@ -141,7 +141,7 @@ public class DefaultMailCreator implements MailCreator {
message.println("</table>");
message.println("");
String executionUrl =
- "http://" + clientHostname + ":" + clientPortNumber + "/"
+ scheme + "://" + clientHostname + ":" + clientPortNumber + "/"
+ "executor?" + "execid=" + execId;
message.println("<a href=\"" + executionUrl + "\">" + flow.getFlowId()
+ " Execution Link</a>");
diff --git a/src/main/java/azkaban/executor/mail/MailCreator.java b/src/main/java/azkaban/executor/mail/MailCreator.java
index f0f16a5..4b66d82 100644
--- a/src/main/java/azkaban/executor/mail/MailCreator.java
+++ b/src/main/java/azkaban/executor/mail/MailCreator.java
@@ -25,8 +25,8 @@ public interface MailCreator {
String clientPortNumber, String... vars);
public boolean createErrorEmail(ExecutableFlow flow, EmailMessage message,
- String azkabanName, String clientHostname, String clientPortNumber,
- String... vars);
+ String azkabanName, String scheme, String clientHostname,
+ String clientPortNumber, String... vars);
public boolean createSuccessEmail(ExecutableFlow flow, EmailMessage message,
String azkabanName, String clientHostname, String clientPortNumber,
diff --git a/src/main/java/azkaban/utils/Emailer.java b/src/main/java/azkaban/utils/Emailer.java
index 9d08163..b032bae 100644
--- a/src/main/java/azkaban/utils/Emailer.java
+++ b/src/main/java/azkaban/utils/Emailer.java
@@ -40,6 +40,7 @@ public class Emailer extends AbstractMailer implements Alerter {
private boolean testMode = false;
+ private String scheme;
private String clientHostname;
private String clientPortNumber;
@@ -66,8 +67,10 @@ public class Emailer extends AbstractMailer implements Alerter {
this.clientHostname = props.getString("jetty.hostname", "localhost");
if (props.getBoolean("jetty.use.ssl", true)) {
+ this.scheme = "https";
this.clientPortNumber = props.getString("jetty.ssl.port");
} else {
+ this.scheme = "http";
this.clientPortNumber = props.getString("jetty.port");
}
@@ -133,7 +136,7 @@ public class Emailer extends AbstractMailer implements Alerter {
+ mailCreator.getClass().getCanonicalName());
boolean mailCreated =
- mailCreator.createErrorEmail(flow, message, azkabanName,
+ mailCreator.createErrorEmail(flow, message, azkabanName, scheme,
clientHostname, clientPortNumber, extraReasons);
if (mailCreated && !testMode) {