Question

Je suis actuellement en cours d'exécution de Visual Studio Team RC système 2010 et je suis en train d'obtenir la configuration du service de construction pour construire ma solution et déployer 3 applications web en elle. J'ai créé une configuration de construction personnalisée appelée intégration et je configuration AVONS le « site Web IIS / nom de l'application à utiliser sur le serveur de destination » sur le paquet / Publier onglet des propriétés pour chacune des applications Web.

Dans ma construction Définition Je l'ai mis les arguments suivants:

  

/ p: DeployOnBuild = True / p: DeployTarget = MSDeployPublish / p: MSDeployPublishMethod = InProc / p: MsDeployServiceUrl = http: // my-server-name: 8172 / msdeploy.axd / p: EnablePackageProcessLoggingAndAssert = True

Cependant, quand je lance la construction, je reçois l'erreur suivante, pour les trois applications web:

  

Mise à jour setacl (MyProjectName).

     

C: \ Program Files \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ Web \ Microsoft.Web.Publishing.targets (3481,5): Erreur: tâche de déploiement Web a échoué. (A tenté d'effectuer une opération non autorisée.)

Je ne pense pas que ce soit mon problème réel bien. Cette erreur est INTERVENUES après l'entrée suivante dans le journal: Mise à jour SETACL C'est ce qui est à l'origine du message d'erreur, mais il semble que MSDeploy tente de déployer à l'IIS local sur le serveur de build, pas le serveur I spécifié avec le paramètre MsDeployServiceUrl.

Après avoir regardé le fichier cible dans C: \ Program Files \ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ Web \ Microsoft.Web.Publishing.targets, j'ai ajouté le EnablePackageProcessLoggingAndAssert, ce qui ajoute l'enregistrement supplémentaire. Le journal affiche une chaîne de emptry pour la valeur de MsDeployServiceUrl. J'ai aussi remarqué dans la cible que MsDeployServiceUrl a un s minuscule, ce qui est un peu confus parce que le nom de la tâche MSDeployPublish a une majuscule S. J'ai essayé d'utiliser l'aide en majuscules, puis à nouveau en utilisant les minuscules, mais ni travaillé.

Un couple d'autres choses à noter:

  1. Mon service de construction est en cours d'exécution comme SERVICE RESEAU.
  2. Le serveur je suis en essayant de déployer à est sur une autre domaine.
  3. J'ai aussi essayé d'ajouter / P: = nom d'utilisateur mydomain \ myusername / P: password = mypassword à la liste des paramter MSBuild, mais cela n'a pas aidé
  4. .

Quelqu'un sait si je fournir les paramètres corrects? Ou me fournir les bonnes?

Merci

Était-ce utile?

La solution

Après plusieurs tours de changer les paramètres, j'ai pu trouver une solution et obtenir la construction de déployer avec succès. Les paramètres que je fini par utiliser sont:

/p:DeployOnBuild=True
/p:DeployTarget=MSDeployPublish 
/p:MSDeployPublishMethod=**RemoteAgent** 
/p:MsDeployServiceUrl=http://my-server-name
/p:username=myusername 
/p:password=mypassword

Il semble que lors de l'utilisation InProc pour la MSDeployPublishMethod MSBuild Ignore MsDeployServiceUrl et essaie toujours de déployer sur le serveur local. Je l'ai changé pour RemoteAgent et déployé avec succès. J'ai remarqué que le fichier de package est nolonger contenu dans le MyWebApplication_Package dossier, mais ce n'est pas un gros problème pour moi.

Autres conseils

Considérant VS2010 est RTM'd, vous pouvez envisager la mise à niveau juste et voir si le problème disparaît.

Pour la construction que construire l'équipe exécute ce fichier que vous avez spécifié? Si c'était un fichier de solution puis juste passer ces propriétés dans cela ne signifie pas qu'ils sont ensuite propagées à chaque fichier de projet lors de sa construction. Lorsque vous créez des fichiers de solution, seul un nombre limité de propriétés sont transmises aux projets en cours de construction. Si tel est le cas, vous devez créer un fichier .proj qui sera essentiellement remplacer votre fichier de solution et de passer dans ces propriétés.

J'ai récemment blogué sur comment remplacer votre fichier de solution avec un fichier MSBuild .

Permettez-moi de savoir si cela ne vous concerne pas ou ne vous aide pas.

Pour votre information, vous pourriez également être intéressé par cet autre fil sur MSDeploy, mais ce ne est pas le même problème que vous ayez ici. Comment puis-je obtenir TFS2010 courir MSDEPLOY pour moi par MSBUILD .

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top