سؤال

لقد حصلت على مشروع MVC2 كبير إلى حد ما في TFS والذي يتم بناؤه تلقائيًا على Checkin (التكامل المستمر)

في الوقت الحاضر ، يتم إلقاء الإصدار المبني بالكامل على مشاركة الشبكة على خادم Dev IIS الخاص بنا. \\Server\wwwrootLatest

TFS بالطبع يخلق الكثير من المتسابقين الفرعيين لأنه يقوم فقط ببناء ، فهو لا يدرك حتى أنه دليل إسقاط هو wwwroot.

هذا يعني أنه لاستخدام البناء فعليًا ، نحتاج إلى الذهاب وإنشاء تطبيق IIS يدويًا والذي يشير إلى الدليل المناسب - الذي يهزم الكائن بالكامل من التمرين.

عندما نقوم بنشر يدوي لهذا الخادم ، نستخدم "نظام الملفات" كطريقة ونكتب الملفات في مشاركة UNC فقط \\Server\wwwroot

(عند النشر على بيئات أخرى ، نستخدم MSDeploy الكامل.)

ما أود القيام به هو إقناع TFS بالقيام بنشر "نظام الملفات" بعد الانتهاء من الإنشاء وتكرار ما نقوم به على نشر يدوي على سبيل المثال:

دليل إسقاط هو \\Server\Build مما قد يؤدي إلى شيء مثل \\Server\Build\Project\Date.Rev\

بعد اكتمال ذلك ، نريد أن ينشره \\Server\wwwrootLatest - يمكننا بعد ذلك إعداد التطبيق مرة واحدة والذي سيحتوي دائمًا على أحدث إصدار ولكن سيظل لديه سجل كامل إذا لزم الأمر.

الأمثلة الوحيدة التي تمكنت من العثور على أوامر MSBuild في تعريف البناء (غرامة) ولكن جميعها تستخدم MSDeploy للقيام بنشر كامل. لست متأكدًا من كيفية أتمتة ما أريد القيام به

أي مساعدة موضع تقدير.

هل كانت مفيدة؟

المحلول

في مجلد Drop الخاص بك مجلد اسمه _PublishedWebsites يتم إنشاؤه تلقائيًا. أنه يحتوي على ملفات تحتاج إلى وضعها wwwroot. يمكنك استخدام CopyDirectory بناء النشاط لنسخها تلقائيا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top