jjzjj

windows - 为当前 chef-client 运行设置环境变量

我正在尝试使用chef安装OpenJDK,以及下载Eclipse并在Windows2008节点上使用p2director安装一些插件。安装OpenJDK并设置环境变量JAVA_HOME并将其添加到路径中。但是,在我关闭并重新打开PowerShell之前,此更改不会生效。chef-clientrun在当前session中需要这些来运行eclipsep2director。有什么方法可以让我只运行一次chef-client吗?在我安装openJDK的秘诀中,我包括:env"JAVA_HOME"dovalue'C:\\ProgramFiles\\Zulu\\zulu-8'endenv"path

windows - 使用 Chef Solo 配置 Windows EC2 实例并引导它

我正在尝试为几个.NET应用程序自动化我们的CI过程,在一个完美的世界中,我想为每个应用程序启动一个WindowsEC2实例,引导实例以安装ChefSolo,然后执行一个用于安装一些依赖项和打包软件本身的Chef配方。但是-我是新手,不知道这是否可行,更不用说从哪里开始了:)我相当精通AWS的命令行工具,因此可以启动AMI,但除此之外,我还很困惑。我想避免构建预装了Chef的自定义AMI,因为这会带走很多优势。我认为这基本上是我需要做的-但(不出所料)专注于Linux:http://www.opinionatedprogrammer.com/2011/06/chef-solo-tuto

windows - Chef-Client 尝试在 Windows 上安装 Java,但它已经安装

我是Chef的新手,想用它在Windows机器上安装Java。有一个随时可用的Javacookbook我正在使用。所以我写了一本包装器Recipe,如anotherquestionhere中所述.我添加了java-cookbook-dependencies并在使用了以下属性属性/java.rbnormal['java']['jdk_version']='7'normal['java']['install_flavor']='windows'normal['java']['windows']['url']='http://myurl/java/jdk-7u75-windows-x64.e

windows - Ant 和 Chef 之间的部署/构建工具

因此,很长一段时间以来,我一直在为采用像Chef或Puppet这样的部署/配置管理工具而苦恼。不是因为我总体上对它们有任何犹豫,而是因为我认为它们不适合我们的特定场景。据我所知,这些类型的工具针对的是频繁/大规模部署,您需要将软件部署到10到1000个系统中。在我们的环境中,我们收集了大约25种不同的Web服务,这些服务分布在六个运行时中,目前每个服务都有1-8个部署在生产环境中。我们最大的部署问题是每个服务都有不同的部署故事,并且完全是手动的,因此往往很耗时且容易出错。另一个问题是生产中的不同实例可能是软件的不同版本,因此我们可能需要同时支持单个服务的多个部署故事。所以我觉得我们需要

ruby - Chef : Insufficient permissions creating a directory in C:

我在尝试使用Chef在C:\ProgramFiles中创建目录时遇到错误。我以管理员身份从powershell环境运行chef,因此对于我可以执行的操作不应该有任何限制。recipes/default.rbdirectorynode['app']['unzip_path']doaction:createendattributes/default.rbdefault['app']['unzip_path']='C:/Programfiles/App'我收到这个错误:[2013-06-25T01:51:13+00:00]FATAL:Chef::Exceptions::Insufficien

windows - Chef Powershell 从文件运行

使用Chef的powershell_script提供程序,我如何引用存储在Chef服务器上的文件而不是在同一文件中定义代码?基本上我如何从Chef客户端调用位于服务器上的.ps1? 最佳答案 您可以在powershell_script中直接调用未签名的powershell脚本,只要yourexecutionpolicyallowsit,这是Chef默认执行的操作。powershell_script"runsomescript"docode"c:/something/script.ps1"end如果您也希望chef部署脚本,您可以使用

windows - Chef : How do I check to see if a service is installed?

在Recipe中我想检查是否安装了服务,如果没有通知安装它所需的3个资源。我尝试了服务资源,它在安装时正确识别服务,但如果未安装服务则抛出异常。我不确定在这里使用什么操作。:nothing只是跳过资源,因此它会被执行,但任何其他操作在尝试对不存在的服务执行操作时都会出错。如何检测服务是否已安装并根据该信息采取行动?如果相关的话,我在Windows上运行。 最佳答案 看一下windows服务是如何定义的https://github.com/opscode/chef/blob/master/lib/chef/provider/servi

ruby - 用chef创建windows用户,并将用户添加到本地Administrators组

用户资源的Chef文档:http://docs.getchef.com/resource_user.html这样做有效:user"TestUser"dopassword"p@ssw0rd"end但是当我添加一个gid时它失败了:user"TestUser"dopassword"p@ssw0rd"gid"Administrators"end我也尝试过传递.\Administrator,但得到相同的结果:[2014-08-08T14:00:11-07:00]FATAL:ArgumentError:user[TestUser](test::usersline11)hadanerror:Arg

ruby - 在 chef lwrp 中安装、要求和使用 ruby​​ 库

我正在编写一个LWRP以使用APIkey为redis数据库播种以允许进行身份验证。我的麻烦是使用ruby​​的redis库。我四处搜索并在网上找到了一些示例,但没有一个对我有用。我在AWSOpsWorks上运行它,所以它使用的是chef-solo我已经尝试在我的运行列表中包含一个安装redisgem(https://github.com/brianbianco/redisio/blob/master/recipes/redis_gem.rb)的方法我也试过在Recipe中安装它们gem。r=gem_package"redis"doaction:installendr.run_actio

redis - 如何使用 Chef 运行 redis-cli 命令?

这是我今天的做法(Recipe中的代码片段):execute"redis-cli-command"docommand"echo'MYCOMMAND'|redis-cli"user"root"action:runend但不知何故这确实让我完全满意,我想知道是否有更好/更好的方法。 最佳答案 echo"setkv"|redis-cli--pipe 关于redis-如何使用Chef运行redis-cli命令?,我们在StackOverflow上找到一个类似的问题: