2016-10-22 4 views
0

Начиная с шеф-повара и испытывают трудности с получением ролей/установки окружения. Невозможно выяснить, чего я не вижу.Шеф-повар - роли и окружающая среда

 Cookbooks: nginx_webserver 
      recipes: default.rb, config_test, config_dev 

    Roles: 
      webserver 
    Environment: 
      dev, qa 

Вот моя роль Файл:

 chef_type:   role 
    default_attributes: 
    description:   Nginx webserver 
    env_run_lists: 
     dev: recipe[nginx_webserver::config_dev] 
     qa: recipe[nginx_webserver::config_qa] 
     json_class:   Chef::Role 
     name:    webserver 
     override_attributes: 
     run_list:   recipe[nginx_webserver] 

Вот мой список окр

 chef_type:   environment 
     cookbook_versions: 
      nginx_webserver: = 0.1.2 
     default_attributes: 
     description:   development environment 
     json_class:   Chef::Environment 
     name:    dev 
     override_attributes: 
       nginx: 
     site_dir: dev.mysite.com # This value changes between envs 

Вот мой node_list:

 { 
      "name": "chef-node1", 
      "chef_environment": "dev", 
      "normal": { 
      "tags": [ 

       ] 
      }, 
      "policy_name": null, 
      "policy_group": null, 
      "run_list": [ 
      "role[webserver]" 
      ] 

     } 

Мой выход шеф-клиент/ошибка:

 54.149.131.42 Recipe Compile Error 
     54.149.131.42 

     ==================================================================== 
     54.149.131.42 
     54.149.131.42 Chef::Exceptions::RecipeNotFound 
     54.149.131.42 -------------------------------- 
     54.149.131.42 could not find recipe config_dev for cookbook  
     nginx_webserver 
     54.149.131.42 

Я не уверен, как получить рецепты config_dev и config_qa на сервере шеф-повара. Я включил оба в мой default.rb рецепт, но я все еще продолжаю получать эту ошибку. Моя цель - вызвать confg_dev рецепт, когда его среда dev и config_qa, когда его qa. Любые указатели, пожалуйста

Edit: 1

Ouput из команды кулинарного шоу

Имя: nginx_webserver-0.1.2 провайдеров: рецептов: контрольных суммы: 23978bdef70ea9a852e27d9489acdda1 Имени: default.rb путь: рецепты /default.rb специфичность: по умолчанию URL: https://s3-external-1.amazonaws.com:443/opscode-platform-production-data/organization-0ffe55465085b0ed5ec6cc4dc383888e/checksum-23978bdef70ea9a852e27d9489acdda1?AWSAccessKeyId=AKIAIQKPG2CTSTRVDO4Q&Expires=1477168767&Signature=8EUWtT1RJq1S6/N0nF00XV879fg%3D ресурсы: root_files: контрольная сумма: d5324dd6a872900fd6ee12c96 28d9595 Имя: README.md путь: README.md специфичность: по умолчанию URL: https://s3-external-1.amazonaws.com:443/opscode-platform-production-data/organization-0ffe55465085b0ed5ec6cc4dc383888e/checksum-d5324dd6a872900fd6ee12c9628d9595?AWSAccessKeyId=AKIAIQKPG2CTSTRVDO4Q&Expires=1477168767&Signature=KuzF07t3/Xnw3BA30PkcNbsnQf0%3D

Контрольная сумма: d14d45c195dccbfe56b358b71d2a6a6b Имя: chefignore путь: chefignore специфичность: по умолчанию URL: https://s3-external-1.amazonaws.com:443/opscode-platform-production-data/organization-0ffe55465085b0ed5ec6cc4dc383888e/checksum-d14d45c195dccbfe56b358b71d2a6a6b?AWSAccessKeyId=AKIAIQKPG2CTSTRVDO4Q&Expires=1477168767&Signature=8nlPR7LBWOQbn6C7CfCaNTieaqM%3D

контрольная сумма: 6528f8499102744b7616913a6cb225de имя: Berksfile путь: Berksfile Специфичность: по умолчанию URL: https://s3-external-1.amazonaws.com:443/opscode-platform-production-data/organization-0ffe55465085b0ed5ec6cc4dc383888e/checksum-6528f8499102744b7616913a6cb225de?AWSAccessKeyId=AKIAIQKPG2CTSTRVDO4Q&Expires=1477168767&Signature=0KRkWnrxasYQFhKaM0Kdqh79ltk%3D


EDIT - 2:

Cookbook/default.rb

 include_recipe 'selinux::permissive' 
    include_recipe 'nginx_webserver::config_dev' 
    include_recipe 'nginx_webserver::config_qa' 

Обновлено metadata.rb к = 0.1.3

knife cookbook upload nginx_webserver 
Uploading nginx_webserver [0.1.3] 
Uploaded 1 cookbook. 

Получение же ошибка. Кроме того, действительно ли мне нужно включить мои config_dev и config_qa в мой default.rb? Не следует ли повара собирать эти рецепты автоматически на основе env_run_lists?

+0

Что представляет собой «ночная кулинарная книга для показа nginx_webserver 0.1.2»? – Ivan

+0

показывает много материала. В основном о моих двух рецептах - selinux и nginx. Есть ли какая-то особенность, которую вы ищете –

+0

идеально подходит для всего вывода, поэтому мы все здесь можем понять, что здесь происходит, минимально, если рецепт 'config_dev' виден в этой версии – Ivan

ответ

0

Ваша среда использует версию, которая не имеют рецептов (с учетом того как вы загрузили их в 0.1.3 согласно журналу):

chef_type:   environment 
    cookbook_versions: 
     nginx_webserver: = 0.1.2 

Пожалуйста, используйте knife environment edit, положить 0.1.3 туда и попытаться сходящимся узел снова ,

+0

Я сделал, но все тот же результат. Нужно ли включать нестандартные рецепты по умолчанию. Еще одна вещь, которую я заметил, - это то, что версия cookbook, показанная на Chef-сервере (UI - Attributes), по-прежнему остается прежней. Я загрузил поваренную книгу и загрузил также berks. Кроме того, пользовательский интерфейс показывает правильную среду и соответствующий рецепт. –

+0

@ f-z-N, пожалуйста, прикрепите скриншоты этого – Ivan

Смежные вопросы