private string GetScriptPath(ArmTemplateScript script)
        {
            string scriptPath = script.ScriptUri;

            if (Path.IsPathRooted(scriptPath))
            {
                return(scriptPath);
            }
            return(Path.Combine(_workingDirectory, scriptPath));
        }
 private void RunUserScript(ArmTemplateScript script)
 {
     try
     {
         LogVerbose(string.Format("Running user script {0}", GetScriptPath(script)));
         _userScriptFunctions.UnionWith(GetDefinedFunctionNames(File.ReadAllText(GetScriptPath(script))));
         JavaScriptContext.RunScript(File.ReadAllText(GetScriptPath(script)), _scriptToSourceContexts[script],
                                     script.ScriptUri);
     }
     catch (JavaScriptScriptException eX)
     {
         Console.Error.WriteLine("Error executing script '{0}': {1}", script.ScriptUri, GetExceptionString(eX.Error));
         throw;
     }
 }