问题标签 [chef-solo]
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.
chef-infra - Chef Solo 获取用户输入
我不知道为什么我在互联网上找不到任何关于此的信息。
我基本上想编写一个提示用户输入他们的 github 用户名/密码的配方,然后发布到 github API 以添加一个 ssh 密钥。
我确信我可以使用普通的 ruby 方法(即获取)提示用户,但考虑到厨师提供的所有实用程序,这似乎并不自然。
有人可以告诉我提示用户输入以存储在 vars 中供以后使用的“厨师”方式吗?
我想首先输出一些指令供用户阅读,然后获取用户名,然后是密码,我想出于安全原因,密码不应该在他们键入时显示在控制台上
chef-infra - 我在哪里可以放置需要从所有食谱中访问的属性
有没有可以放置所有常见属性/属性的地方?也许solo.rb
?
-j json
不适用于我。
chef-infra - 使用属性文件在 chef-solo 下运行时可以设置环境吗?
Chef 11.6 添加了对 chef-solo 的环境支持,如此处所述http://docs.opscode.com/essentials_environments.html#set-using-chef-solo
但是我找不到从 JSON 属性文件设置环境的方法。我已经尝试在 json 文件中设置environment
和chef_environment
键,但似乎都不起作用。我可以通过 solo.rb 文件设置环境,但我想知道是否也可以通过 json 属性文件来设置环境?
我这样调用:
solo.rb 包含:
node.json 包含:
并且 env_log 配方就Chef::Log.info("Environment #{node.chef_environment}")
在其中。
chef-infra - 使用 Chef 安装 Pow.cx
我正在尝试构建一个厨师脚本来启动并运行一个开发盒,其中一个步骤是安装pow.cx。
我首先尝试了curl
他们文档中列出的方法,但这需要它以本地用户身份运行,然后系统会提示您输入我 obv 无法使用厨师的 sudo 密码。
所以我想我会尝试这个homebrew
食谱并pow --install-system
以 rootpow --install-local
和current_user
.
但是由于某种原因,厨师安装挂在安装的install-local
一部分上。我不知道为什么,因为当我从命令行执行此操作并创建 plist 文件时它可以正常工作......但无论出于何种原因,当与厨师一起运行时,它只是挂起。
我对厨师或战俘了解不多,但我想知道是什么导致了这种挂起?在运行的命令行上,它不会提示输入或任何内容。我很确定它只是构建一个 plist 文件,然后使用 launchctl 启动。
有谁知道可能导致这种情况的原因以及如何避免这种超时?
postgresql - chef-solo + postgres 导致无效的 pg_hba.conf
我正在尝试用 vagrant + chef solo 设置 postgres。
我正在使用官方收据:http: //community.opscode.com/cookbooks/postgresql
正如我的Berksfile
包含:
我的Vagrantfile
块是:
生成的内容/etc/postgresql/9.2/main/pg_hba.conf
如下:
但是,如果我运行sudo service postgresql restart
,它会失败并出现错误:
有问题的条目是那些持有地址的条目。知道我的用例有什么问题吗?
chef-infra - 厨师,你如何在厨师独奏中替换 node.set/node.save ?
你如何在厨师独奏中替换node.set
/ ?node.save
我在此示例中使用 node.set/node.save 在第一次运行时执行某些命令-> http://docs.opscode.com/essentials_cookbook_resources_first_run.html
但是在 chef-solo 上没有node.set
/ node.save
。那么用什么来代替呢?如何在厨师独奏中存储此示例中的持久标志?
chef-infra - Knife bootstrapping 返回“日志级别必须是 :debug、:info、:warn、:error 或 :fatal 之一”
引导 VM 时
引导过程返回以下异常:
我刚刚更新了我的厨师版本:
这是厨师的错误吗?
python - 如何在 Opsworks/Chef 11 中使用 python LWRP
我是 Chef/OpsWorks 的新手,正在尝试一个简单的方法在 Ubuntu 12.04 实例上安装 Django 1.6:
我的 providers/pip.rb 和 providers/virtualenv.rb 似乎覆盖了表面上已经加载的内容:
但是当我尝试使用 python_pip 时,我收到一个错误:
我试过添加depends "python"
我的 metadata.rb,但这没有帮助。任何建议表示赞赏。
我的食谱“python”的目录结构:
ruby - Chef 的 Ruby 版本
Chef 可以支持较新版本的 Ruby 即 2.0.0 吗?如果不是,有什么原因吗?
在文档中它指定了 1.9.2 https://wiki.opscode.com/display/chef/System+Requirements+with+install(死链接)
chef-infra - Chef-solo 乱序安装 MySql 和 Apache2
我正在与 chef 和 vagrant 合作,以更好地自动化一些机器构建过程,但我遇到了一个我似乎无法弄清楚的问题。问题是无论我们做什么,只要我们包含我们的 php 服务器说明书,它就会以某种方式将 apache2 弹出到运行列表的顶部。mysql也是如此。我们想使用 remi repos 而不是被 PHP 5.3.3 卡住,但我不能因为 apache 和 mysql 首先安装。IE,预期的安装顺序是这样的:
- 运行 yum/apt update 并安装基线软件包(
- baseline-linux-server recipes) 安装 apache2 / php 安装 mysql
- 服务器
但我看到:
- 安装 apache2
- 安装mysql服务器
- 开始按预期顺序安装所有内容——包括再次查看 php / apache2 / mysql 服务器。
vagrantfile 中的运行列表如下所示:
company-php::default 配方是:
company-mysql::default 配方是:
当我运行所有这些时,我得到以下输出,其中可以看到首先安装 httpd,然后是 mysql,然后是基线 linux-cookbooks,它以 EPEL 安装开始:
我已经尝试了大多数明显的技巧,例如将调用直接推送到我们的 wordpress-app 配方中,并将运行列表声明为 run_list 而不是一堆包含。我怀疑这是一件简单而愚蠢的事情,但我似乎无法找到答案。