async function run()

in tasks/Node/src/tasks/AzureDtlCreateEnvironment/task.ts [110:145]


async function run(envName?: string, test?: boolean): Promise<void> {
    try {
        console.log('Starting Azure DevTest Labs Create Environment Task');

        const inputData: CreateOrUpdateEnvTaskInputData = getInputData(envName, test);

        const clients: TaskClients = {
            arm: await resutil.getArmClient(inputData.subscriptionId, test),
            dtl: await resutil.getDtlClient(inputData.subscriptionId, test)
        };

        showInputData(inputData);

        await createEnvironment(clients.dtl, inputData);

        const envRgId: string = String(tl.getVariable('environmentResourceGroupId'));
        if (envRgId) {
            if (inputData.outputTemplateVariables) {
                const response: ResourcesGetByIdResponse = await clients.arm.resources.getById(inputData.templateId, '2016-05-15');
                await envutil.setOutputVariables(clients.arm, envRgId, response._response.parsedBody);
            }

            if (inputData.exportEnvTemplate) {
                const envTemplateLocation: string = String(tl.getVariable(inputData.envTemplateLocationVariable));
                const envTemplateSasToken: string = String(tl.getVariable(inputData.envTemplateSasTokenVariable));
                await envutil.exportEnvironmentTemplate(inputData.exportEnvTemplateLocation, envTemplateLocation, envTemplateSasToken);
            }
        }

        tl.setResult(tl.TaskResult.Succeeded, `Lab Environment '${inputData.envName}' was successfully created.`);
    }
    catch (error:any) {
        console.debug(JSON.stringify(error, null, 2));
        tl.setResult(tl.TaskResult.Failed, error.message);
    }
}