public override List <CloudTask> GetTaskList() { List <CloudTask> tasks = new List <CloudTask>(); string containerName = Environment.GetEnvironmentVariable(AzureEnvConstants.AZURE_STORAGE_K8S_DIRECTORY); IStorageEngine engine = AzureStorageEngine.GetInstance(); string taskName = "Deploy-TESK"; string command = $"/bin/sh -c \"kubectl --kubeconfig=$AZ_BATCH_NODE_STARTUP_DIR/config create -f ./{CMD_DIR}\""; CloudTask task = new CloudTask(taskName, command); task.ResourceFiles = engine.GetResourceFiles(containerName, CMD_DIR); tasks.Add(task); taskName = "Get-Service-NodePort"; command = $"/bin/sh -c \"kubectl --kubeconfig=$AZ_BATCH_NODE_STARTUP_DIR/config get svc/tesk-api\""; task = new CloudTask(taskName, command); tasks.Add(task); return(tasks); }
public override List <CloudTask> GetTaskList() { List <CloudTask> tasks = new List <CloudTask>(); string containerName = "tesk-tasks"; // Name of the storage container containing Tesk tasks IStorageEngine engine = AzureStorageEngine.GetInstance(); string endpoint = "http://127.0.0.1:31882/v1/tasks"; // Adjust NodePort no. /* string taskName = "Get-Local-IP"; * string command = "/bin/sh -c \"ifconfig\""; * CloudTask task = new CloudTask(taskName,command); * tasks.Add(task); */ string taskName = "Get-Tesk-Pods"; string command = "/bin/sh -c \"kubectl --kubeconfig=$AZ_BATCH_NODE_STARTUP_DIR/config get pods\""; CloudTask task = new CloudTask(taskName, command); tasks.Add(task); taskName = "Describe-Tesk-Api-Pod"; command = "/bin/sh -c \"kubectl --kubeconfig=$AZ_BATCH_NODE_STARTUP_DIR/config describe pod\""; task = new CloudTask(taskName, command); tasks.Add(task); taskName = "Print-Env-Vars"; command = $"/bin/sh -c \"curl -X POST -s --header 'Content-Type: application/json' -d @./{APP1_DIR}/env.json {endpoint}\""; task = new CloudTask(taskName, command); task.ResourceFiles = engine.GetResourceFiles(containerName, APP1_DIR); tasks.Add(task); taskName = "Hello-Task"; command = $"/bin/sh -c \"curl -X POST -s --header 'Content-Type: application/json' -d @./{APP2_DIR}/hello.json {endpoint}\""; task = new CloudTask(taskName, command); task.ResourceFiles = engine.GetResourceFiles(containerName, APP2_DIR); tasks.Add(task); // This task requires configuration of PV and PVC's ! /* taskName = "Submit-Tesk-Demo-Task"; * command = * $"/bin/sh -c \"curl -X POST -s --header 'Content-Type: application/json' --header 'Accept: application/json' -d @./{APP3_DIR}/stdout.json {endpoint}\""; * task = new CloudTask(taskName,command); * task.ResourceFiles = engine.GetResourceFiles(containerName,APP3_DIR); * tasks.Add(task); */ taskName = "Get-Tesk-Jobs"; command = "/bin/sh -c \"kubectl --kubeconfig=$AZ_BATCH_NODE_STARTUP_DIR/config get jobs\""; task = new CloudTask(taskName, command); tasks.Add(task); taskName = "Get-Tesk-Task-Status"; command = $"/bin/sh -c \"curl -X GET -s --header 'Accept: application/json' {endpoint}\""; task = new CloudTask(taskName, command); tasks.Add(task); return(tasks); }