问题标签 [dsc]
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 - 使用 Powershell DSC 安装可执行文件
我正在尝试使用 PowerShell DSC 安装 Visual Studio 2013,但遇到了一些问题,希望你们能帮我解决。DSC 是否能够重新启动节点,然后继续安装 VS?有谁知道这个错误是什么意思?“已安装 vs_ultimate.exe,但指定的 ProductId 和/或名称与包详细信息不匹配”
有没有人有任何尝试使用这种方法安装 .exe 的具体示例?
有人如何找到 ProductID?
有谁知道 ReturnCode 的确切语法?
任何帮助都会很棒!
powershell - Powershell DSC:有人可以提供一个关于如何使用资源的示例吗?
对于 DSC 专业人士来说,这似乎是一个非常简单的问题,但我在网络上找不到任何资源,或者我看到的任何错误消息。在 DSC 上挖掘任何信息似乎非常困难,所以也许我们可以从这里开始。
我正在尝试构建用于安装计划任务的 Powershell DSC 配置。我在 Steve Murawski 的Github 页面上找到了 StackExchange 资源的示例资源,并且我已将“StackExchangeResources”树复制到我的 DSC 存储库。
我导入了 StackExchangeModule 并尝试使用 ScheduledTask 资源创建一个非常简单的配置:
但是,当我执行时TempCleaner -Node TestNode
,它实际上并没有做任何事情;没有写入 MOF 文件,也没有引发错误。
现在,我看到的很多示例都涉及为资源的调用命名,如下所示:
但是当我试着给它起这样的名字时,
它会抛出一个异常:
ScheduledTask:没有找到属性“TaskName”等于“CleanerTask”的 MSFT_ScheduledTask 对象。验证属性的值并重试。在 C:\Users\Steve\Documents\DevOps\DSC\TempCleaner.ps1:13 char:9 + ScheduledTask CleanerTask + ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ + CategoryInfo : ObjectNotFound: (CleanerTask:String) [Get-ScheduledTask] , CimJobException + FullyQualifiedErrorId : CmdletizationQuery_NotFound_TaskName,Get-ScheduledTask
如上所示,当我将计划任务资源与文件资源结合使用时,文件资源被写入生成的 MOF 文件,但在其中看不到其他指令。
这里一定有我遗漏的东西。是否有某种我可以启用的详细模式?其他未记录的日志记录选项?那将非常有帮助。
powershell - 在 DSC 中使用文件提供程序 - 确保目标仅包含来自源的文件
我创建了一个 DSC 资源来从某个来源复制一个 Modules 目录。我正在测试它以在我的环境中进行更广泛的部署。该资源在确保所有文件都在那里并且它们与源内容匹配方面做得很好,到目前为止一切都很好......
问题是这样的;我想确保目标或目标中是否有任何其他文件,它们会被删除。
这是我的代码:
在第一次运行配置后,我一直在目标目录中创建一个名为 Deleteme.flag 的文件来进行测试。到目前为止,我还没有任何运气让它真正被删除。
我尝试添加额外的文件提供程序要求以在目录运行之前删除它:
不幸的是,这失败并出现以下错误:
对于节点“Localhost”中资源“文件”的键“DestinationPath”,键属性组合“C:\users\Jason\Documents\WindowsPowerShell\Modules”重复。请确保节点中每个资源的关键属性都是唯一的。
无论如何,我想用文件资源来做这件事,但显然,用脚本提供者或其他一些自定义资源来做这件事会很容易。提前感谢您的所有帮助!
vmware - 在 VMWare 上使用基于 Java 的后端为 ASP .net MVC 网站设置持续交付的工具
我希望将部署更改为 DevOps(持续交付)。
我从组织中的 Devs 和 Ops 那里获得了不同的技术:
- (Ops) Microsoft 部署工具包
- (Dev) 所需状态配置
- (开发)TFS 的发布管理
哪些技术可以很好地协同工作?有没有人有在 VMWare 上使用基于 Java 的后端为 ASP .net MVC 网站设置持续交付的经验?我们可以继续使用 TeamCity 作为构建服务器吗?
亲切的问候,AllWorkNoPlay
powershell - PowerShell DSC - 如何将配置参数传递给 ScriptResources?
我在尝试让 PowerShell Desired State Configuration 脚本工作来配置内部应用程序时遇到了很多麻烦。问题的根源是我似乎无法将我的配置数据传递到 ScriptResource 中(至少不是我尝试这样做的方式)。
我的脚本应该为我们的内部应用程序创建一个配置文件夹,然后将一些设置写入文件:
作为参考,我的配置数据如下所示:
我正在使用以下内容应用 DSC:
当我应用此配置时,它会愉快地创建文件夹,但无法对配置文件执行任何操作。查看下面的输出,很明显这是因为 $Node 变量在 ConfigurationFile / TestScript 范围内为空,但我不知道如何从该块中引用它。
我花了一整天的时间在线搜索这个特定问题,但是所有变量、参数和配置数据的示例都使用文件和注册表资源或其他非脚本资源,我已经在“ConfigurationFolder “在我的脚本中阻止。我坚持的事情是如何从脚本资源中引用配置数据,比如我的“ConfigurationFile”。
我已经画了一个完整的空白,所以任何帮助将不胜感激。如果一切都失败了,我可能必须为每个服务器创建一个单独的“配置”脚本并对值进行硬编码,如果可能的话,我真的不想这样做。
干杯,
麦克风
powershell - 复合资源中的 Import-DSCResource
我可以获得一个非常基础的复合资源(感谢这个 SO question、这个 SO question、这个 MSDN 博客和DSC 电子书)。我遇到的问题是,每当我使用必须使用Import-DscResource
cmdlet 的资源时,复合资源就会停止工作。
我已经阅读了有关复合资源的所有信息,但我无法弄清楚为什么会发生这种情况。这是我要开始工作的资源示例,首先是模块目录结构:
的内容TestComposite.psd1
的内容 TestResource.psd1
如果我有TestResource.schema.psm1
be this 的内容,则复合资源被识别并且一切正常。
一旦我将配置更改为此,它就不再被识别Get-DscResource
,任何尝试使用它的配置都会出错。
现在,我安装了 DSC Resource Kit Wave 1-3 并且可用,我可以毫无问题地使用它们,事实上我使用该xNetworking
资源创建了一个配置,没有任何问题。当TestResource.schema.psm1
文件设置为上述时,系统不再将其视为有效资源(Get-DscResource
不再列出它)。
如果我删除了该Import-DscResource
行,但不考虑其他所有内容,它会识别资源,但该资源不可用,因为它不知道在哪里可以找到 xNetworking 模块。我尝试将其Import-DscResource -ModuleName xNetworking
放入配置.ps1
中,希望导入会逐渐减少,但仍然没有运气。
我是否遗漏了文档中说明复合资源无法使用Import-DscResource
cmdlet 的内容?如果您不能在其中使用其他自定义资源,我看不到复合资源的意义。
powershell - Powershell DSC - 不支持缓冲区。检查缓冲区的编码和长度
在 Windows Server 2012 R2 虚拟机上,我正在尝试运行 Powershell DSC 脚本:
配置测试{
}
测试 -OutputPath 'D:\PSMofFiles' Start-DscConfiguration -Wait -Verbose -Path 'D:\PSMofFiles'
当我运行此脚本时,我收到以下错误:
模式 LastWriteTime 长度 名称
---- ------------- ------ ----
-a--- 5/20/2014 8:55 AM 1218 localhost.mof
VERBOSE :使用以下参数执行“调用 CimMethod”操作,“方法名”= SendConfigurationApply,“类名”= MSFT_DSCLocalConfigurationManager,“命名空间名称”= root/Microsoft/Windows/DesiredStateConfiguration'。
不支持缓冲区。检查缓冲区的编码和长度
+ CategoryInfo : InvalidArgument: (root/Microsoft/...gurationManager:String) [], CimException + FullyQualifiedErrorId : MiClientApiError_Failed + PSComputerName : localhost
详细:“调用 CimMethod”操作完成。详细:完成配置作业所需的时间为 0.19 秒
PS C:\Windows\system32>
有人知道是什么原因造成的吗?此外,我运行什么 DSC 脚本也没有关系。它可以是任何 DSC 脚本,我会收到完全相同的错误消息。
dsc - 所需状态配置哈希表
我在尝试使用 Desired State Configuration (DSC) 时遇到问题。我正在使用脚本资源,当我运行Start-DscConfiguration -Wait -Verbose -Path .\blah
它时,无论如何它都会跳过这一步。我已将 TestScript 设置为 False,但它仍会跳过该步骤。有谁知道它为什么跳过这些步骤?这是我正在做的事情:
powershell - 作为部署的一部分,您如何自动分发 Desired State Configuration 自定义资源?
我正在利用 Microsoft 的 DSC 资源工具包(特别是 XWebAdministration,至少对于初学者而言)。我对 DSC 比较熟悉,所以不用担心脚本的实际功能……它会做它应该做的事情,或者至少我很确定它会做。
问题是,当我从编排框中执行脚本时,我的目标服务器返回此错误:
发生这种情况的原因很明显:我没有xWebAdministration
在那些机器上安装模块。问题是:作为部署的一部分自动分发自定义资源的正确方法是什么?在几十个或几百个盒子上手动安装自定义资源很麻烦,所以必须有一种方法,我只是在任何地方都没有看到任何关于该主题的文档。
powershell - PowerShell DSC 服务缺少成员
我正在尝试在 PowerShell 中使用 DSC 来部署服务。根据Microsoft 文档,服务资源具有可以设置的以下属性:
- 姓名
- 确保
- 内置帐户
- 凭据
- 取决于
- 论据
- 启动类型
- 状态
我在我的 DSC 配置中定义了一个服务,但我得到了错误。
这是我的代码:
这是我得到的错误:
我在 GitHub ( https://gist.github.com/grenade/7677021 ) 上遵循了这个示例,所以我知道我的代码走的是正确的道路。
我需要下载一些新版本的 DSC 吗?当我使用其文档列表的属性但似乎不存在时,如何使其工作?