问题标签 [azure-automation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - 如何从 PSWorkflow Runbook 中的 InlineScript 将 PowerShell 脚本作为 Azure 自动化 Runbook 执行?
在 PowerShell 工作流活动中,我可以使用 InlineScript 调用本机 PowerShell 脚本:
但是在 Azure 自动化中,点路径(至少在我的测试中)正在返回c:\windows\system32
,并且 Azure 自动化中的 script-as-runbook 不存在(或者更确切地说,它无法执行,因为它找不到脚本)。
- 是否可以像这样执行存储在 AAuto 中的本机 PS Runbook?
- 如果是这样,我如何指定文件的路径?
- 这是 Azure 自动化对工作流 Runbook 和 InlineScript 活动的解析/编译过程中的错误/疏忽,从而阻止了依赖的 Runbook 被复制到工作人员?
我做了一点搜索,发现在执行原生 PS Runbook 时:
- 首先检查它们是否有任何其他 Runbook 引用。
- 作为部署到工作人员执行的一部分,在下面创建一个随机命名的文件夹
C:\Temp\
- 引用的 Runbook 最终会复制到此文件夹。
- 如果未找到引用 Runbook,则不会将它们复制到临时目录。
- 根 Runbook 似乎没有复制到该文件夹中。
- 执行 Workflow Runbook 时,不会创建动态命名的文件夹(在 c:\Temp 下)。
- 作为标准工作流编译的一部分,InlineScript 活动将其内容复制到自动生成的 xaml。我不确定链接文件,尽管基于看起来是运行时问题的行为。我的猜测是,每次执行工作流时都会进行编译(因此延迟启动),并在工作人员上进行,使用标准的 PS 工作流编译,就像本地一样。
我无法(轻松)将此脚本转换为工作流,并且它在其他工作流活动中使用。现在,我可以使这个“工作”的唯一方法是将脚本复制并粘贴到需要它的工作流中的第一个 InlineScript 中,从维护的角度来看,这显然是乏味和烦人的。
据推测,作为一种解决方法,我可以使用 Hybrid Worker,但这会带来许多其他问题,例如确保子 Runbook 在那里发布并且必须单独维护它们,或者 AAuto 不会自动将自定义模块从自动化帐户推送到工人(尽管这是计划好的)等。
azure - Azure 自动化 powershell,不起作用 int 输入参数
我使用天蓝色自动化,
并有这样的代码
在测试窗格中(在https://portal.azure.com上)我为此参数设置了下一个值:“测试”和 2
在控制台中我看到下一个结果:
$Name 运行良好
,但 $MyCount 未显示
根据文档,我做的一切都是正确的
https://technet.microsoft.com/en-us/library/hh847743.aspx
如何使用 int 输入参数?
powershell - 用于复制所有 webapp 设置的 Azure Runbook powershell 脚本
我正在尝试将以下脚本作为运行手册运行,以将所有设置从一个 webapp 复制到另一个 webapp,但出现以下错误。
例外:
azure - Get-AzureAutomationAccount 返回空集合
我似乎无法cmdlets
从 azure Runbook 访问 Azure 自动化的任何内容。下面我成功获取了订阅中的所有虚拟机,但调用Get-AzureAutomationAccount
返回一个空集合(我确实有 2 个自动化帐户)。我可以使用自动化进行的任何其他调用cmdlets
要么返回空异常,要么返回未找到异常。
在此先感谢您的任何建议!
azure - Get-AzureRmRoleAssignment - 拒绝访问指定的 API 版本
更新:我发现问题与IncludeClassicAdministrators
参数无关 - 没有那个问题仍然会发生。我已经相应地更新了这个问题。
背景
我正在编写一个 Azure 自动化脚本来监控谁有权访问我的订阅。我打电话Get-AzureRmRoleAssignment
来获取管理员列表。当我在本地运行我的脚本并以我自己的身份进行身份验证时,它工作正常。当我在自动化中运行它时,我正在使用服务主体进行身份验证,并且由于Access denied to the specified API version失败。
详细信息
我启用了调试输出,我可以看到Get-AzureRmRoleAssignment
进行了 3 个 API 调用:
在 Azure 自动化中,这是最后一次调用(获取第一次调用返回的用户对象 ID 的用户详细信息)失败:
我在本地运行时看到完全相同的调用,所以我认为这不是版本问题。(我正在使用图库中的 MSOnline 模块。)
我在想我需要向我的服务主体授予一些额外的权限,但不确定哪些权限。我添加了以下所有权限,但仍然收到相同的错误:
Windows Azure Active Directory
应用程序权限
- 读/写目录数据
- 读取目录数据
委托权限
- 读取目录数据
- 阅读所有用户的完整个人资料
- 阅读所有用户的基本资料
Windows Azure 服务管理 API
委派权限
- 以组织用户身份访问 Azure 服务管理
Microsoft Graph
应用程序权限
- 读取目录数据
powershell - 通过 Azure API、门户或 ISE 加载项启动 Runbook 会产生“输入参数类型不匹配”错误
给定一个简单的运行手册:
当通过 Azure 门户作为新作业(已发布)、通过测试窗格或使用 Azure 自动化 PowerShell ISE 附加组件以数值(即:5)启动它时,将返回以下错误并且执行失败。
[编辑] 出于好奇,我尝试了其他一些值。'true' 或 'false'(在 ise/ui 中没有引号)也会导致错误(并在引号内发送到 API)。[\edit]
为根活动的参数提供的值不满足根活动的要求:“DynamicActivity”:对于名为“Numeric”的参数,需要一个“System.String”类型的输入参数值。参数名称:rootArgumentValues
AFAIK,当我通过父 runbook、webhook 等执行时,这不是一个因素。
PowerShell ISE 附加组件向 API 发出此 PUT 请求:( https://management.azure.com/subscriptions/<id>/resourceGroups/<rg>/providers/Microsoft.Automation/automationAccounts/<aa>/runbooks/<rb>/draft/testJob?api-version=2015-10-31
)
powershell - 如何使用 Azure 自动化运行存储过程?
我对 Azure 平台真的很陌生,也许这是一个愚蠢的问题,但我还没有设法找到有关此主题的信息。我真的需要帮助。我正在为一个大学项目部署一个 Web 服务使用的数据库。在这个数据库中,我有一个存储过程,需要每天运行它。
发现使用 Azure 自动化可以编程或安排此类操作。我“安装”了该服务,并尝试创建“运行手册”,但不知道如何或在此处编写什么代码,因为我从来没有使用过 PowerShell。
提供的任何帮助将不胜感激。提前致谢!
编辑1:
所以我试图用这段代码来创造魔法:
问题是当我保存 RunBook 并发布它时,它说没有错误。当我运行 RunBook 时,它开始并完成发送,没有错误也没有异常,所以你可以期望它做的对吗?但是当查询数据库时,表中没有修改该过程旨在修改。这可能是什么错误?我究竟做错了什么?
我从https://gallery.technet.microsoft.com/scriptcenter/How-to-use-a-SQL-Command-be77f9d2#content中获取了参考代码,对其进行了个性化处理并去掉了“参数”,因为 RunBook 时开始时,从未要求任何入口参数,所以我决定使用完整的连接字符串。我使用与我的 c# 项目相同的连接字符串,它可以完美地连接和工作。
我正在使用“新”天蓝色界面,不知道这在这方面是否有任何重要性。
再次感谢您提供的任何帮助。
powershell - PowerShell 会话/环境隔离 - 共享相同上下文的作业?
我正在测试一个使用 Add-Type 添加一些自定义 C# 代码的工作流运行手册。
突然之间,我开始在后续测试作业中出现“类型已存在”错误,好像没有创建新的 PSSession。
换句话说,看起来新作业共享相同的执行上下文。如果我尝试为每个 PS 实例运行两次相同的命令,我只会在本地得到这个。
有问题的类型是带有一些扩展方法的静态类。由于它也恰好是源代码块中声明的第一个类型,我不怀疑其他非静态类型也会引发错误。
我已经执行了好几次了,所以我完全希望“最终”这将停止发生,但我似乎无法强迫它,我不知道我能做些什么让它陷入这种情况, 任何一个。
看到像这样跨作业共享执行上下文的证据 - 甚至(尤其是?)如果只是暂时的 - 让我想知道我们过去在进行和部署更改以及执行后续测试时看到的部分或全部一般执行不一致 -之后都与此有关。
我很想认为这只是测试作业和“真实”作业之间差异的一部分,但这引发了关于测试作业本身 WRT 模仿已发布作业的有效性的问题。
是否所有 Azure 自动化作业都应该隔离执行?这可以由开发人员控制/利用吗?
powershell - 导出的 Azure 自动化图形运行手册定义 (.graphrunbook) 如何编码/加密?
这是从 Azure 门户导出后 .graphrunbook 的(修剪后的)内容。
Runbook 定义可能是基于 XML 或 XAML 的,虽然这看起来像 base64 编码的文本,但将其解码会导致大部分仍然编码/难以辨认。
背景:我正在开发与 ARM 配合使用的 Sync-VsoGitRunbook 的改进版本,不需要任意文件夹层次结构(通过自动确定依赖项),并且还可以部署图形运行手册 - 为什么不呢!这几乎是 Native & Workflow 的全部内容,这些只是要实现的最后一部分。
我目前没有使用任何图形运行手册,但如果/一旦我们这样做,我希望它们符合架构。我还计划在打包/清理代码后开源代码。
powershell - Azure Runbook GetMember 错误
我有以下运行手册脚本,它应该将应用程序设置从一个 Web 应用程序复制到另一个,但是当我运行它时出现错误。
错误: