2016-02-24 4 views
1

Je suis en train de reproduire la ligne de commande suivante chocolaté installer dans Marionnette:Comment formater marionnettes pour package chocolaté avec des arguments installer

choco install visualstudio2013ultimate -InstallArguments "/Features:'WebTools SQL OfficeDeveloperTools LightSwitch'" 

J'ai parlé du documentation sur l'utilisation des guillemets dans l'installation des arguments et ont essayé:

package { 'visualstudio2013ultimate': 
    ensure   => '12.0.21005.20141031', 
    install_options => ['-installArgs','"','/Features:', '""','WebTools SQL OfficeDeveloperTools LightSwitch','"""','"'], 
    } 

Mais ce ne parvient pas à avoir l'effet désiré (il installe Visual studio, puis traite WebTools, SQL, etc. sous forme de paquets chocolatés supplémentaires à installer, et non des arguments aux fonctions switch).

extraits de journaux chocolaté:

2016-02-24 12:15:46,704 [DEBUG] - Command line: "C:\ProgramData\chocolatey\choco.exe" upgrade visualstudio2013ultimate -version 12.0.21005.20141031 -dvy -installArgs " /Features: "" "\"WebTools SQL OfficeDeveloperTools LightSwitch\"" """ " 
2016-02-24 12:15:46,719 [DEBUG] - Received arguments: upgrade visualstudio2013ultimate -version 12.0.21005.20141031 -dvy -installArgs 

/Features: " "WebTools SQL OfficeDeveloperTools LightSwitch" " 
Version='12.0.21005.20141031'|AllVersions='False'| 
SkipPackageInstallProvider='False'| 
PackageNames='visualstudio2013ultimate;SQL;OfficeDeveloperTools;LightSwitch" ";'| 

Quelqu'un peut-il indiquer comment formater correctement les INSTALL_OPTIONS?

Répondre

1

Le documentation pour les options d'installation avec le fournisseur est très clair: chaque espace doit être recouvert d'une séparation. Les marionnettes placent automatiquement des guillemets autour d'une section avec des espaces, ce qui gâche les arguments. Le découpage d'instructions sur chaque espace conserve les espaces lorsque Puppet reconstruit les arguments et empêche Puppet de jouer avec la valeur résultante transmise à Chocolatey.

J'ai également remarqué que votre lien de documentation pointe vers un problème Github, pas la documentation qui en résulte. Je me suis rendu compte que la question concernait l'ajout de la documentation, mais ce n'était pas tout à fait correct dans les notes d'émission. Il est donc préférable de se référer à la documentation qui est la plus à jour. Voir https://forge.puppetlabs.com/chocolatey/chocolatey#install-options-with-spaces

+0

Merci 'install_options => ['-installArgs', '"', '/ Caractéristiques: \' WebTools ',' SQL ',' OfficeDeveloperTools ',' LightSwitch \ '', '"']' apparaît pour ça marche –

+0

C'est un peu inintéressant au premier abord, mais ça marche et ça évite les citations automatiques que fait Puppet lorsqu'il y a des espaces dans les arguments – ferventcoder

+0

Whoa, c'est * méchant *. Y a-t-il un problème de marionnettes pour résoudre ce problème? Ou est-ce considéré comme approprié? –