我正在尝试安装PostgreSQL9.3,并从操作代码菜谱中单独安装厨师,但我得到了以下错误:
Chef::Exceptions::Package: No version specified, and no candidate version available for postgresql93-devel 下面是我在attributes/default.rb中的代码,但它只安装9.1,无法找到9.3-devel的包。
default['postgresql']['version'] = '9.3'
default['postgresql']['client']['packages'] = ["postgresql#{node['postgresql']['version'].split('.').join}-devel"]
default['postgresql']['server']['packages'] = ["postgresql#{node['postgresql']['version'].split('.').join}-server"]
default['postgresql']['contrib']['packages'] = ["postgresql#{node['postgresql']['version'].split('.').join}-contrib"]
default['postgresql']['dir'] = "/var/lib/pgsql/#{node['postgresql']['version']}/data"
default['postgresql']['server']['service_name'] = "postgresql-#{node['postgresql']['version']}"如果我使用这段代码来安装9.2,它是成功的,但是最小的抱怨没有安装9.3版本。
default['postgresql']['version'] = '9.2'
default['postgresql']['enable_pgdg_apt'] = true
default['postgresql']['dir'] = "/etc/postgresql/9.2/main"
default['postgresql']['config']['data_directory'] = "/var/lib/postgresql/9.2/main"
default['postgresql']['config']['hba_file'] = "/etc/postgresql/9.2/main/pg_hba.conf"
default['postgresql']['config']['ident_file'] = "/etc/postgresql/9.2/main/pg_ident.conf"
default['postgresql']['config']['external_pid_file'] = "/var/run/postgresql/9.2-main.pid"
default['postgresql']['config']['ssl_key_file'] = "/etc/ssl/private/ssl-cert-snakeoil.key"
default['postgresql']['config']['ssl_cert_file'] = "/etc/ssl/certs/ssl-cert-snakeoil.pem"
default['postgresql']['client']['packages'] = ["postgresql-client-9.2"]
default['postgresql']['server']['packages'] = ["postgresql-9.2"]
default['postgresql']['contrib']['packages'] = ["postgresql-contrib-9.2"]我现在在属性/default.rb中使用这个
default['postgresql']['password']['postgres'] = 'xxx'
default['sportdata-server']['database']['dbname'] = 'myapp_production'
default['postgresql']['pgdg']['release_apt_codename'] = 'precise'
default['postgresql']['version'] = '9.3'
default['postgresql']['config']['ssl'] = false
default['postgresql']['config']['listen_addresses'] = '*'发布于 2014-04-21 11:12:02
最后,我放弃了opscode postgresql烹饪书,接着说:
属性/default.rb
default ['lsb']['codename'] = 'trusty'
default['postgresql']['version'] = '9.3'在我的postgresql-server食谱中:
file "remove deprecated Pitti PPA apt repository" do
action :delete
path "/etc/apt/sources.list.d/pitti-postgresql-ppa"
end
bash "adding postgresql repo" do
user "root"
code <<-EOC
echo "deb http://apt.postgresql.org/pub/repos/apt/ #{node['lsb']['codename']}-pgdg main" > /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
EOC
action :run
end
execute "run apt-get update" do
command 'apt-get update'
action :run
end
packages = %w(
libpq-dev
git-core
curl
zlib1g-dev
libssl-dev
libreadline-dev
libyaml-dev
libsqlite3-dev
sqlite3
libxml2-dev
libxslt1-dev
postgresql-contrib
)
packages.each { |name| package name }
package "postgresql-#{node['postgresql']['version']}"发布于 2014-04-22 16:48:18
我刚用CentOS做完这件事,但我从未在Ubuntu上试过。我注意到几件事:
尝尝这个
default['postgresql']['version'] = '9.3'
default['postgresql']['enable_pgdg_apt'] = true您还可能需要确保VM没有附带已经安装的默认postgresql版本。我和CentOS碰上了。
发布于 2014-06-12 12:46:42
Opscode食谱的这个分支为我解决了https://github.com/jackpine/postgresql/tree/feature/ubuntu1404问题。它尚未与master:https://github.com/hw-cookbooks/postgresql/pull/150合并。
https://stackoverflow.com/questions/23074547
复制相似问题