Juan Jimenez
Juan Jimenez

Reputation: 501

knife upload fails on dependency checks but dependencies are there

I am trying to upload the wordpress cookbook from the Chef Store to my server, but it keeps failing on two dependencies, saying they are not on the server, but they are already there.

> knife cookbook upload wordpress
Uploading wordpress      [3.0.0]
ERROR: Cookbook wordpress depends on cookbooks which are not currently
ERROR: being uploaded and cannot be found on the server.
ERROR: The missing cookbook(s) are: 'mysql2_chef_gem' version '~> 1.0.1', 'php-fpm' version '~> 0.6.10'

---------

knife cookbook list
7-zip                           1.0.2
ant                             1.0.2
apache2                         3.2.2
app-slave                       0.3.0
apt                             2.9.2
ark                             0.9.0
artifact                        1.12.1
bash-shellshock                 1.0.0
bluepill                        2.3.1
build-essential                 2.2.3
certificate                     1.0.0
certificate-concatenation       0.1.1
chef-client                     4.3.0
chef-secret                     0.1.0
chef-sugar                      3.3.0
chef-vault                      1.3.2
chef_handler                    1.2.0
chocolatey                      0.4.0
compat_resource                 12.7.1
cron                            1.6.1
curl                            2.0.1
database                        5.1.2
debitel-service                 0.9.0
dmg                             2.3.0
docker                          2.4.12
docker-registry-credentials     0.1.0
git                             4.3.4
iis                             4.2.0
java                            1.39.0
java-service                    0.7.0
logrotate                       1.9.2
logstash                        0.12.0
logstash-agent                  0.9.0
mariadb                         0.3.1
mesos                           3.5.1
mesosphere_dcos                 0.2.1
mysql                           8.0.2
mysql2_chef_gem                 1.1.0
nexus                           3.3.0
nginx                           2.7.6
nginx-proxy                     0.2.1
nginx_php-fpm                   0.1.0
nginxproxy                      0.1.0
nginxproxy443                   0.2.0
nginxproxy443_stage             0.2.0
nginxproxy8080                  0.1.0
nginxproxy8888                  0.1.0
nginxproxy8888_ssl              0.1.1
nginxproxy8888_ssl_production   0.1.1
nginxproxy8888_ssl_stage        0.1.1
ohai                            2.0.1
openssl                         4.4.0
packagecloud                    0.0.19
php                             1.10.1
php-fpm                         0.7.6
poise                           2.3.2
poise-languages                 1.0.0
poise-python                    1.0.0
postgresql                      4.0.6
python                          1.4.6
rsyslog                         2.0.0
runit                           1.7.2
selinux                         0.9.0
server_setup                    0.1.3
ssh-keys                        1.2.7
sudo                            2.7.2
sudo_centos                     0.1.0
supervisord                     1.0.1
tar                             0.7.0
users                           1.8.2
users_itops                     0.1.0
users_oetinger                  0.1.0
users_tigerbooks                0.1.0
windows                         1.44.3
xml                             2.0.0
yum                             3.10.0
yum-epel                        0.6.2
zabbix-agent                    0.13.0
zookeeper                       3.0.0

When I turn full verbosity on the upload command I get this:

> knife cookbook upload wordpress -VV
INFO: Using configuration from /Users/jjimenez/.chef/knife.rb
DEBUG: Chef::HTTP calling Chef::HTTP::JSONInput#handle_request
DEBUG: Chef::HTTP calling Chef::HTTP::JSONOutput#handle_request
DEBUG: Chef::HTTP calling Chef::HTTP::CookieManager#handle_request
DEBUG: Chef::HTTP calling Chef::HTTP::Decompressor#handle_request
DEBUG: Chef::HTTP calling Chef::HTTP::Authenticator#handle_request
DEBUG: Signing the request as juan
DEBUG: Chef::HTTP calling Chef::HTTP::RemoteRequestID#handle_request
DEBUG: Chef::HTTP calling Chef::HTTP::ValidateContentLength#handle_request
DEBUG: Initiating GET to https://itdevchef.verlagsgruppe-oetinger.de/organizations/tigerbooks/cookbooks?num_versions=all
DEBUG: ---- HTTP Request Header Data: ----
DEBUG: Accept: application/json
DEBUG: Accept-Encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3
DEBUG: X-Ops-Server-API-Version: 1
DEBUG: ---- End HTTP Request Header Data ----
DEBUG: ---- HTTP Status and Header Data: ----
DEBUG: HTTP 1.1 200 OK
DEBUG: server: openresty/1.9.7.2
DEBUG: date: Mon, 05 Sep 2016 11:11:29 GMT
DEBUG: content-type: application/json
DEBUG: transfer-encoding: chunked
DEBUG: connection: close
DEBUG: x-ops-server-api-version: {"min_version":"0","max_version":"1","request_version":"1","response_version":"1"}
DEBUG: x-ops-api-info: flavor=cs;version=12.0.0;oc_erchef=12.8.0
DEBUG: content-encoding: gzip
DEBUG: ---- End HTTP Status/Header Data ----
DEBUG: Chef::HTTP calling Chef::HTTP::ValidateContentLength#handle_response
DEBUG: HTTP server did not include a Content-Length header in response, cannot identify truncated downloads.
DEBUG: Chef::HTTP calling Chef::HTTP::RemoteRequestID#handle_response
DEBUG: Chef::HTTP calling Chef::HTTP::Authenticator#handle_response
DEBUG: Chef::HTTP calling Chef::HTTP::Decompressor#handle_response
DEBUG: Decompressing gzip response
DEBUG: Chef::HTTP calling Chef::HTTP::CookieManager#handle_response
DEBUG: Chef::HTTP calling Chef::HTTP::JSONOutput#handle_response
DEBUG: Chef::HTTP calling Chef::HTTP::JSONInput#handle_response
Uploading wordpress      [3.0.0]
DEBUG: Versions of cookbook 'php' returned by the server: 1.10.1
DEBUG: Matched cookbook 'php' with constraint '>= 0.0.0' to cookbook version '1.10.1' on the server
DEBUG: Versions of cookbook 'openssl' returned by the server: 4.4.0
DEBUG: Matched cookbook 'openssl' with constraint '>= 0.0.0' to cookbook version '4.4.0' on the server
DEBUG: Versions of cookbook 'apache2' returned by the server: 3.2.2
DEBUG: Matched cookbook 'apache2' with constraint '>= 2.0.0' to cookbook version '3.2.2' on the server
DEBUG: Versions of cookbook 'database' returned by the server: 5.1.2
DEBUG: Matched cookbook 'database' with constraint '>= 1.6.0' to cookbook version '5.1.2' on the server
DEBUG: Versions of cookbook 'mysql' returned by the server: 8.0.2
DEBUG: Matched cookbook 'mysql' with constraint '>= 6.0' to cookbook version '8.0.2' on the server
DEBUG: Versions of cookbook 'mysql2_chef_gem' returned by the server: 1.1.0
DEBUG: Versions of cookbook 'build-essential' returned by the server: 2.2.3
DEBUG: Matched cookbook 'build-essential' with constraint '>= 0.0.0' to cookbook version '2.2.3' on the server
DEBUG: Versions of cookbook 'iis' returned by the server: 4.2.0
DEBUG: Matched cookbook 'iis' with constraint '>= 1.6.2' to cookbook version '4.2.0' on the server
DEBUG: Versions of cookbook 'tar' returned by the server: 0.7.0
DEBUG: Matched cookbook 'tar' with constraint '>= 0.3.1' to cookbook version '0.7.0' on the server
DEBUG: Versions of cookbook 'nginx' returned by the server: 2.7.6
DEBUG: Matched cookbook 'nginx' with constraint '~> 2.7.4' to cookbook version '2.7.6' on the server
DEBUG: Versions of cookbook 'php-fpm' returned by the server: 0.7.6
DEBUG: Versions of cookbook 'selinux' returned by the server: 0.9.0
DEBUG: Matched cookbook 'selinux' with constraint '~> 0.7' to cookbook version '0.9.0' on the server
ERROR: Cookbook wordpress depends on cookbooks which are not currently
ERROR: being uploaded and cannot be found on the server.
ERROR: The missing cookbook(s) are: 'mysql2_chef_gem' version '~> 1.0.1', 'php-fpm' version '~> 0.6.10'

The cookbooks -are- there, but they don't generate a match. ????

Anybody know what's going on and/or how to fix this?

Upvotes: 1

Views: 910

Answers (1)

Tensibai
Tensibai

Reputation: 15784

ERROR: The missing cookbook(s) are: 'mysql2_chef_gem' version '~> 1.0.1', 'php-fpm' version '~> 0.6.10'


mysql2_chef_gem                 1.1.0
php-fpm                         0.7.6

Here your constraints are pessimistic greater than match, with version X.Y.Z, it means Z should be greater or equal, but X and Y should be the same.

It sounds like you don't have a mysql2_chef_gem cookbook in version 1.0.x nor a php-fpm in version 0.6.x uploaded to your chef-server.

you can check with knife cookbook show <cookbook_name> or knife cookbook list -a to see all versions.

Upvotes: 1

Related Questions