-
Notifications
You must be signed in to change notification settings - Fork 0
/
IKuduWebJobApiClient.cs
135 lines (116 loc) · 4.59 KB
/
IKuduWebJobApiClient.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
using System.Collections.Generic;
using System.Threading.Tasks;
using KuduApi.Client.Abstractions.WebJobs.Models;
namespace KuduApi.Client.Abstractions.WebJobs
{
public interface IKuduWebJobApiClient
{
/// <summary>
/// List all web jobs
/// </summary>
/// <returns></returns>
Task<ICollection<KuduWebJob>> GetAll();
/// <summary>
/// List all triggered jobs
/// </summary>
/// <returns></returns>
Task<ICollection<KuduTriggeredWebJob>> GetAllTriggered();
/// <summary>
/// Get a specific triggered job by name
/// </summary>
/// <param name="webJobName"></param>
/// <returns></returns>
Task<KuduTriggeredWebJob> GetTriggered(string webJobName);
// /// <summary>
// /// Using a zip file containing the files for it, or just a single file (e.g foo.exe).
// /// </summary>
// /// <param name="webJobName"></param>
// /// <param name="content"></param>
// /// <returns></returns>
// Task UploadTriggered(string webJobName, object content);
/// <summary>
/// Delete a triggered job
/// </summary>
/// <param name="webJobName"></param>
/// <returns></returns>
Task DeleteTriggered(string webJobName);
/// <summary>
/// Invoke a triggered web job
/// </summary>
/// <param name="webJobName"></param>
/// <returns></returns>
Task RunTriggered(string webJobName);
/// <summary>
/// Invoke a triggered web job
/// </summary>
/// <param name="webJobName"></param>
/// <param name="arguments">To run with arguments use the arguments parameters that will be added to the script when invoked. It also gets passed to the WebJob as the WEBJOBS_COMMAND_ARGUMENTS environment variable.</param>
/// <returns></returns>
Task RunTriggered(string webJobName, string arguments);
/// <summary>
/// List all triggered job runs history
/// </summary>
/// <param name="webJobName"></param>
/// <returns></returns>
Task<KuduTriggeredWebJobHistory> GetTriggeredRunHistory(string webJobName);
/// <summary>
/// Get settings from a triggered job
/// </summary>
/// <param name="webJobName"></param>
/// <returns></returns>
Task<KuduWebJobSettings> GetTriggeredSettings(string webJobName);
/// <summary>
/// Update settings for a triggered job
/// </summary>
/// <param name="webJobName"></param>
/// <param name="request"></param>
/// <returns></returns>
Task UpdateTriggeredSettings(string webJobName, KuduTriggeredWebJobSettingsUpdateRequest request);
/// <summary>
/// List all continuous jobs
/// </summary>
/// <returns></returns>
Task<ICollection<KuduContinuousWebJob>> GetAllContinuous();
/// <summary>
/// Get a specific continuous job by name
/// </summary>
/// <returns></returns>
Task<KuduContinuousWebJob> GetContinuous(string webJobName);
// /// <summary>
// /// Upload a continuous job as zip
// /// </summary>
// /// <returns></returns>
// Task UploadContinuous(string webJobName, object @object);
/// <summary>
/// Delete a continuous job
/// </summary>
/// <param name="webJobName"></param>
/// <returns></returns>
Task DeleteContinuous(string webJobName);
/// <summary>
/// Start a continuous job
/// </summary>
/// <param name="webJobName"></param>
/// <returns></returns>
Task StartContinuous(string webJobName);
/// <summary>
/// Stop a continuous job
/// </summary>
/// <param name="webJobName"></param>
/// <returns></returns>
Task StopContinuous(string webJobName);
/// <summary>
/// Get settings from a continuous job
/// </summary>
/// <param name="webJobName"></param>
/// <returns></returns>
Task<KuduWebJobSettings> GetContinuousSettings(string webJobName);
/// <summary>
/// Update settings for a continuous job
/// </summary>
/// <param name="webJobName"></param>
/// <param name="updateRequest"></param>
/// <returns></returns>
Task UpdateContinuousSettings(string webJobName, KuduContinuousWebJobSettingsUpdateRequest updateRequest);
}
}