[edit on GitHub]

L'API Supermarché est utilisée pour fournir un accès aux livres de cuisine, aux outils et aux utilisateurs sur le site du Supermarché des chefs. Tous les livres de recettes, outils et utilisateurs sur le Supermarché sont accessibles via une API RESTful en accédant à . supermarket.chef.io/api/v1/ via les points de terminaison pris en charge. Dans la plupart des cas, le couteau est la meilleure façon d'interagir avec le Supermarché ; cependant, dans certains cas, l'utilisation directe de l'API du Supermarché est nécessaire.

Utilisez le knife cookbook site pour interagir avec les livres de recettes qui sont disponibles dans la section Supermarché des chefs. Un compte utilisateur est requis pour toutes les actions communautaires qui écrivent des données sur ce site. Les arguments suivants ne nécessitent pas de compte utilisateur : download, search, installet list.

Avertissement

knife cookbook site a été déprécié en faveur de la commande couteau supermarché.

Avertissement

Veuillez envisager de gérer les livres de cuisine communautaires à l'aide de la version de Berkshelf livrée avec Chef Workstation. Pour plus d'informations sur Chef Workstation, voir À propos de Chef Workstation.

Note

Passez en revue la liste des options communes disponibles pour cette (et toutes les) sous-commandes et plugins de couteau.

Supermarché privé

Pour utiliser le knife cookbook site avec une installation de Supermarché privé, vous devez d'abord ajouter l'URL de votre Supermarché à votre... config.rb fichier :

knife[:supermarket_site]='https://supermarket.example.com'

Si cette valeur n'est pas spécifiée, le couteau utilisera la commande https://supermarket.chef.io .https://supermarket.chef.iopar défaut.

télécharger

Utilisez le download pour télécharger un livre de recettes à partir du site Web de la communauté. Un livre de recettes sera téléchargé sous forme d'archive tar.gz et placé dans le répertoire de travail actuel. Si un cookbook (ou une version de cookbook) a été déprécié et que l'argument --force n'est pas utilisée, knife alertera l'utilisateur que le cookbook est déprécié et fournira ensuite le nom de la version la plus récente non dépréciée de ce cookbook.

Syntaxe

Cet argument a la syntaxe suivante :

knife cookbook site download COOKBOOK_NAME[COOKBOOK_VERSION](options)

Options

Cet argument a les options suivantes :

COOKBOOK_VERSION

La version d'un livre de recettes à télécharger. Si un livre de recettes n'a qu'une seule version, cette option n'a pas besoin d'être spécifiée. Si un livre de recettes a plus d'une version et que cette option n'est pas spécifiée, la version la plus récente du livre de recettes est téléchargée.

-f FILE, --file FILE

Le fichier dans lequel un téléchargement de livre de recettes est écrit.

--force

Écrasement d'un répertoire existant.

-m SUPERMARKET_SITE, --supermarket-site SUPERMARKET_SITE

L'URL à laquelle se trouve le supermarché du chef. Valeur par défaut : https://supermarket.chef.io.

Note

Voir config.rb pour plus d'informations sur la façon d'ajouter certaines options de couteau comme paramètres dans le fichier config.rb.

Exemples

Les exemples suivants montrent comment utiliser cette sous-commande knife :

Télécharger un livre de recettes

Pour télécharger le livre de recettes getting-started, entrez :

knife cookbook site download getting-started

pour retourner quelque chose comme :

Downloading getting-started from the cookbooks site at version 1.2.3 to
  /Users/grantmc/chef-support/getting-started-1.2.3.tar.gz
Cookbook saved:/Users/grantmc/chef-support/getting-started-1.2.3.tar.gz

installer

Utilisez la fonction install argument pour installer un livre de recettes qui a été téléchargé à partir du site communautaire dans un dépôt git local . Cette action utilise le système de contrôle de version git en conjonction avec l'argument install. Supermarché du chef site pour installer les livres de cuisine contribués par la communauté dans le chef-repo local. L'utilisation de cet argument fait ce qui suit :

  1. Une nouvelle branche "pristine copy" est créée dans git pour le suivi de l'amont.
  2. Toutes les versions existantes d'un livre de cuisine sont supprimées de la branche.
  3. Le livre de recettes est téléchargé à partir de la branche Supermarché des chefs au format tar.gz.
  4. Le livre de cuisine téléchargé est déchargé et son contenu est committé sur git et une balise est créée.
  5. La branche "pristine copy" est fusionnée dans la branche master.

Ce processus permet de modifier le livre de recettes amont dans la branche master tout en laissant git maintenir les changements comme un patch séparé. Lorsqu'une version amont mise à jour devient disponible, ces changements peuvent être fusionnés tout en maintenant les modifications locales.

Syntaxe

Cet argument a la syntaxe suivante :

knife cookbook site install COOKBOOK_NAME[COOKBOOK_VERSION](options)

Options

Cet argument a les options suivantes :

-b, --use-current-branch

S'assurer que la branche actuelle est utilisée.

-B BRANCH, --branch BRANCH

Le nom de la branche par défaut. Par défaut, il s'agit de la branche maître.

COOKBOOK_VERSION

La version du livre de recettes à installer. Si une version n'est pas spécifiée, la version la plus récente du cookbook est installée.

-D, --skip-dependencies

Assurez-vous que tous les cookbooks pour lesquels le cookbook installé a une dépendance ne sont pas installés.

-m SUPERMARKET_SITE, --supermarket-site SUPERMARKET_SITE

L'URL à laquelle se trouve le supermarché Chef. Valeur par défaut : https://supermarket.chef.io.

-o PATH:PATH, --cookbook-path PATH:PATH

Le répertoire dans lequel les livres de cuisine sont créés. Il peut s'agir d'un chemin séparé par deux points.

Note

Voir config.rb pour plus d'informations sur la façon d'ajouter certaines options de couteau comme paramètres dans le fichier config.rb.

Exemples

Les exemples suivants montrent comment utiliser cette sous-commande knife :

Installer un livre de recettes

Pour installer le livre de recettes getting-started, entrez :

knife cookbook site install getting-started

pour retourner quelque chose comme :

Installing getting-started to /Users/grantmc/chef-support/.chef/../cookbooks
Checking out the master branch.Creating pristine copy branch chef-vendor-getting-started
Downloading getting-started from the cookbooks site at version 1.2.3 to
  /Users/grantmc/chef-support/.chef/../cookbooks/getting-started.tar.gz
Cookbook saved:/Users/grantmc/chef-support/.chef/../cookbooks/getting-started.tar.gz
Removing pre-existing version.Uncompressing getting-started version /Users/grantmc/chef-support/.chef/../cookbooks.
removing downloaded tarball
1 files updated, committing changes
Creating tag cookbook-site-imported-getting-started-1.2.3Checking out the master branch.Updating4d44b5b..b4c32f2
Fast-forward
 cookbooks/getting-started/README.rdoc              |4+++
 cookbooks/getting-started/attributes/default.rb    |1+
 cookbooks/getting-started/metadata.json            |29++++++++++++++++++++
 cookbooks/getting-started/metadata.rb              |6++++
 cookbooks/getting-started/recipes/default.rb       |23+++++++++++++++.../templates/default/chef-getting-started.txt.erb |5+++6 files changed,68 insertions(+),0 deletions(-)
 create mode 100644 cookbooks/getting-started/README.rdoc
 create mode 100644 cookbooks/getting-started/attributes/default.rb
 create mode 100644 cookbooks/getting-started/metadata.json
 create mode 100644 cookbooks/getting-started/metadata.rb
 create mode 100644 cookbooks/getting-started/recipes/default.rb
 create mode 100644 cookbooks/getting-started/templates/default/chef-getting-started.txt.erb
Cookbook getting-started version 1.2.3 successfully installed

liste

Utilisez la fonction list pour afficher la liste des livres de recettes actuellement disponibles à la bibliothèque de l'université. Supermarché des chefs.

Syntaxe

Cet argument a la syntaxe suivante :

knife cookbook site list

Options

Cet argument a les options suivantes :

-m SUPERMARKET_SITE, --supermarket-site SUPERMARKET_SITE

L'URL à laquelle se trouve le supermarché Chef. Valeur par défaut : https://supermarket.chef.io.

-w, --with-uri

Affichez les URI correspondants.

Exemples

Les exemples suivants montrent comment utiliser cette sous-commande de couteau :

Afficher une liste de livres de recettes

Pour afficher une liste de livres de cuisine à l'adresse Supermarché des chefs , entrez :

knife cookbook site list

pour retourner une liste similaire à :

1password             homesick              rabbitmq
7-zip                 hostname              rabbitmq-management
AmazonEC2Tag          hosts                 rabbitmq_chef
R                     hosts-awareness       rackspaceknife
accounts              htop                  radiant
ack-grep              hudson                rails
activemq              icinga                rails_enterprise
ad                    id3lib                redis-package
ad-likewise           iftop                 redis2
ant                   iis                   redmine
[...truncated...]

recherche

Utilisez la fonction search pour rechercher un livre de recettes à l'adresse Supermarché des chefs. Une requête de recherche est utilisée pour renvoyer une liste de livres de cuisine à l'adresse Supermarché des chefs et utilise la même syntaxe que la requête knife search sous-commande.

Syntaxe

Cet argument a la syntaxe suivante :

knife cookbook site search SEARCH_QUERY(options)

Options

Cet argument a les options suivantes :

-m SUPERMARKET_SITE, --supermarket-site SUPERMARKET_SITE

L'URL à laquelle se trouve le supermarché Chef. Valeur par défaut : https://supermarket.chef.io.

Exemples

Les exemples suivants montrent comment utiliser cette sous-commande de couteau :

Recherche de livres de recettes

Pour rechercher tous les cookbooks qui peuvent être utilisés avec Apache, entrez :

knife cookbook site search 'apache*'

pour retourner quelque chose comme :

apache2:
  cookbook:             https://supermarket.chef.io/api/v1/cookbooks/apache2
  cookbook_description:Installsand configures apache2
  cookbook_maintainer:  sous-chefs
  cookbook_name:        apache2
apache_hadoop:
  cookbook:             https://supermarket.chef.io/api/v1/cookbooks/apache_hadoop
  cookbook_description:Installs/Configures the ApacheHadoop distribution
  cookbook_maintainer:  dowlingj
  cookbook_name:        apache_hadoop
apache_kafka:
  cookbook:             https://supermarket.chef.io/api/v1/cookbooks/apache_kafka
  cookbook_description:Installs/ConfiguresApacheKafka>=0.7.0
  cookbook_maintainer:  mathyourlife
  cookbook_name:        apache_kafka
[...truncated...]

partager

Utilisez le share pour ajouter un livre de recettes au répertoire Supermarché des chefs. Cette action nécessitera un compte d'utilisateur et un certificat pour le compte de Supermarché des chefs. Par défaut, couteau utilisera le nom d'utilisateur et la clé API qui sont identifiés dans le fichier de configuration utilisé lors de la mise à niveau.ad; sinon ces valeurs doivent être spécifiées sur la ligne de commande ou dans un fichier de configuration alternatif. Si un livre de recettes existe déjà sur le serveur Supermarché du chef, alors seul un propriétaire ou un mainteneur de ce livre de recettes peut effectuer des mises à jour.

Syntaxe

Cet argument a la syntaxe suivante :

knife cookbook site share COOKBOOK_NAMECATEGORY(options)

Options

Cet argument a les options suivantes :

CATEGORY

La catégorie du livre de recettes : "Databases", "Web Servers", "Process Management", "Monitoring & Trending", "Programming Languages", "Package Management", "Applications", "Networking", "Operating Systems & Virtualization", "Utilities"ou "Other".

-m SUPERMARKET_SITE, --supermarket-site SUPERMARKET_SITE

L'URL à laquelle se trouve le supermarché du chef. Valeur par défaut : https://supermarket.chef.io.

-n, --dry-run

Ne prend aucune mesure et n'imprime que les résultats. Par défaut : false.

-o PATH:PATH, --cookbook-path PATH:PATH

Le répertoire dans lequel les livres de recettes sont créés. Il peut s'agir d'un chemin séparé par deux points.

Note

Voir config.rb pour plus d'informations sur la façon d'ajouter certaines options de couteau comme paramètres dans le fichier config.rb.

Exemples

Les exemples suivants montrent comment utiliser cette sous-commande knife :

Partager un livre de recettes

Pour partager un livre de recettes nommé apache2:

knife cookbook site share "apache2""Web Servers"

montrer

Utilisez le show pour afficher les informations relatives à un livre de recettes sur le site Web de l'entreprise. Supermarché des chefs.

Syntaxe

Cet argument a la syntaxe suivante :

knife cookbook site show COOKBOOK_NAME[COOKBOOK_VERSION]

Options

Cet argument a les options suivantes :

COOKBOOK_VERSION

La version d'un livre de recettes à afficher. Si un livre de recettes n'a qu'une seule version, cette option n'a pas besoin d'être spécifiée. Si un livre de cuisine a plus d'une version et que cette option n'est pas spécifiée, une liste des versions du livre de cuisine est retournée.

-m SUPERMARKET_SITE, --supermarket-site SUPERMARKET_SITE

L'URL à laquelle se trouve le supermarché du chef. Valeur par défaut : https://supermarket.chef.io.

Exemples

Les exemples suivants montrent comment utiliser cette sous-commande de couteau :

Afficher les données du livre de recettes

Pour afficher les détails d'un livre de recettes nommé haproxy:

knife cookbook site show haproxy

pour retourner quelque chose comme :

average_rating:
category:Other
created_at:2009-10-25T23:51:07.000Z
deprecated:false
description:Installsand configures haproxy
external_url:    https://github.com/sous-chefs/haproxy
issues_url:      https://github.com/sous-chefs/haproxy/issues
latest_version:  https://supermarket.chef.io/api/v1/cookbooks/haproxy/versions/6.2.3
maintainer:      sous-chefs
metrics:
  collaborators:3
  downloads:
    total:29114892
    versions:0.7.0:12588900.8.0:1258804[...truncated...]
  followers:139
name:            haproxy
source_url:      https://github.com/sous-chefs/haproxy
up_for_adoption:
updated_at:2018-08-08T20:09:52.334Z
versions:
  https://supermarket.chef.io/api/v1/cookbooks/haproxy/versions/6.2.3
  https://supermarket.chef.io/api/v1/cookbooks/haproxy/versions/6.2.2[...truncated...]

Afficher les données du livre de recettes en JSON

Pour afficher les informations au format JSON, utilisez la fonction -F option commune dans le cadre de la commande comme ceci :

knife cookbook site show devops -F json

Les autres formats disponibles sont les suivants . text, yamlet pp.

unshare

Utilisez le unshare pour arrêter le partage d'un livre de recettes à l'adresse Supermarché des chefs. Seul le mainteneur d'un livre de recettes peut effectuer cette action.

Note

Le dé-partage d'un livre de recettes brisera un livre de recettes qui a établi une dépendance sur ce livre de recettes ou cette version de livre de recettes.

Syntaxe

Cet argument a la syntaxe suivante :

knife cookbook site unshare COOKBOOK_NAME/versions/VERSION

Options

Cet argument a les options suivantes :

-m SUPERMARKET_SITE, --supermarket-site SUPERMARKET_SITE

L'URL à laquelle se trouve le supermarché Chef. Valeur par défaut : https://supermarket.chef.io.

Exemples

Les exemples suivants montrent comment utiliser cette sous-commande de couteau :

Départager un livre de recettes

Pour annuler le partage d'un livre de recettes nommé getting-started, entrez :

knife cookbook site unshare "getting-started"

Départage d'une version du livre de recettes

Pour annuler le partage de la version du livre de recettes 0.10.0 pour le getting-started entrez :

knife cookbook site unshare "getting-started/versions/0.10.0"