Skip to content

Commit 7b223f1

Browse files
authored
change argo plugin have values checked properly (#657)
Signed-off-by: Lillie Dae <[email protected]>
1 parent fdc5a9d commit 7b223f1

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed

src/TaskManager/Plug-ins/Argo/ArgoPlugin.cs

+13-6
Original file line numberDiff line numberDiff line change
@@ -86,19 +86,22 @@ private void Initialize()
8686
});
8787

8888
if (Event.TaskPluginArguments.ContainsKey(Keys.TimeoutSeconds) &&
89+
!string.IsNullOrWhiteSpace(Event.TaskPluginArguments[Keys.TimeoutSeconds]) &&
8990
int.TryParse(Event.TaskPluginArguments[Keys.TimeoutSeconds], out var result))
9091
{
9192
_activeDeadlineSeconds = result;
9293
}
9394

94-
if (Event.TaskPluginArguments.ContainsKey(Keys.ArgoApiToken))
95+
if (Event.TaskPluginArguments.ContainsKey(Keys.ArgoApiToken) &&
96+
!string.IsNullOrWhiteSpace(Event.TaskPluginArguments[Keys.ArgoApiToken]))
9597
{
9698
_apiToken = Event.TaskPluginArguments[Keys.ArgoApiToken];
9799
}
98100

99101
bool updateEvent = false;
100102

101-
if (Event.TaskPluginArguments.ContainsKey(Keys.Namespace))
103+
if (Event.TaskPluginArguments.ContainsKey(Keys.Namespace) &&
104+
!string.IsNullOrWhiteSpace(Event.TaskPluginArguments[Keys.Namespace]))
102105
{
103106
_namespace = Event.TaskPluginArguments[Keys.Namespace];
104107
}
@@ -109,7 +112,8 @@ private void Initialize()
109112
updateEvent = true;
110113
}
111114

112-
if (Event.TaskPluginArguments.ContainsKey(Keys.AllowInsecureseUrl))
115+
if (Event.TaskPluginArguments.ContainsKey(Keys.AllowInsecureseUrl) &&
116+
!string.IsNullOrWhiteSpace(Event.TaskPluginArguments[Keys.AllowInsecureseUrl]))
113117
{
114118
_allowInsecure = string.Compare("true", Event.TaskPluginArguments[Keys.AllowInsecureseUrl], true) == 0;
115119
}
@@ -120,7 +124,8 @@ private void Initialize()
120124
updateEvent = true;
121125
}
122126

123-
if (Event.TaskPluginArguments.ContainsKey(Keys.BaseUrl))
127+
if (Event.TaskPluginArguments.ContainsKey(Keys.BaseUrl) &&
128+
!string.IsNullOrWhiteSpace(Event.TaskPluginArguments[Keys.BaseUrl]))
124129
{
125130
_baseUrl = Event.TaskPluginArguments[Keys.BaseUrl];
126131
}
@@ -153,7 +158,8 @@ private void ValidateEvent()
153158

154159
foreach (var key in Keys.RequiredParameters)
155160
{
156-
if (!Event.TaskPluginArguments.ContainsKey(key))
161+
if (!Event.TaskPluginArguments.ContainsKey(key) &&
162+
string.IsNullOrWhiteSpace(Event.TaskPluginArguments[key]))
157163
{
158164
throw new InvalidTaskException($"Required parameter to execute Argo workflow is missing: {key}");
159165
}
@@ -167,7 +173,8 @@ private void ValidateEvent()
167173
}
168174
}
169175

170-
if (Event.TaskPluginArguments.ContainsKey(Keys.BaseUrl) && !Uri.IsWellFormedUriString(Event.TaskPluginArguments[Keys.BaseUrl], UriKind.Absolute))
176+
if (Event.TaskPluginArguments.ContainsKey(Keys.BaseUrl) &&
177+
!string.IsNullOrWhiteSpace(Event.TaskPluginArguments[Keys.BaseUrl]) && !Uri.IsWellFormedUriString(Event.TaskPluginArguments[Keys.BaseUrl], UriKind.Absolute))
171178
{
172179
throw new InvalidTaskException($"The value '{Event.TaskPluginArguments[Keys.BaseUrl]}' provided for '{Keys.BaseUrl}' is not a valid URI.");
173180
}

0 commit comments

Comments
 (0)