设为首页 收藏本站
查看: 1107|回复: 0

[经验分享] Windows Azure 革新 – TFS集成(WAWS第2部分)

[复制链接]

尚未签到

发表于 2016-5-24 09:52:30 | 显示全部楼层 |阅读模式
  这是有关Windows Azure新功能和Windows Azure网站第二部分的第四篇博客。但是这不仅仅侧重于WAWS,因为我将要介绍的这个功能能同时在Windows Azure网站和Windows Azure云服务(又名托管服务)中可用。在
上一篇帖子我提及到Windows Azure网站和如何不写代码,使用它的库来创建一个WrodPress个人博客。此外我们可以通过不同的方法创建一个空网站,上传我们的网站到库中。其中一个突出特点是,我们可以将我们的网站与一个源控件服务(例如TFS和Git)集成,这样一旦有新的事务提交或者生成成功它就可以自动部署了。
  创建新的空网站
  在开发人员门户网站上当我们创建一个新的空网站,我们可以选择快速创建项。这将会创建一个只有一个共享实例,没有任何数据库关联的空网站。让我们指定URL、地区和订阅,然后点确定。
DSC0000.png
  几秒之后我们的网站就准备好了。现在我们可以点击浏览按钮打开这个空网站。
DSC0001.png
  你可以看到在我的网站上有一个欢迎页,即使我没有上传或者部署任何东西。
DSC0002.png
  这意味着即使在部署任何项目之前,网站也会收费,这有点类似与云服务(托管服务)。这是因为一旦我们创建一个网站,Windows Azure平台就会在虚拟机群安排一个托管进程(w3wp.exe)。
  创建TFS预览服务项目并设置链接
  目前Windows Azure网站可以与TFS和Git集成,将之作为它的部署源,并且现在仅支持微软TFS预览服务。在这篇文章中我不会深入讲解如何使用TFS预览服务,但是一旦我们点击进入刚创建的网站,然后点击“设置TFS发布”,将会有一个对话框帮助我们连接这个服务。如果你没有账号你可以点击下图中的链接申请一个。
DSC0003.png
  假设我们已经拥有一个TFS服务的账号,首先我们需要创建一个空项目。转至你的TFS服务网站,创建一个新项目,给定项目名称、描述和处理模板。
DSC0004.png
  然后,回到开发人员门户网站,点击“设置TFS发布”链接。在弹出窗口我会提供我的TFS服务的URL,点击“现在审核”链接。
DSC0005.png
  点击“接受”按钮允许我的Windows Azure连接到我的TFS服务。
DSC0006.png
  然后它会回到开发人员门户网站,列出我的账户中所有的项目。选择我刚刚创建的那个,点击确定即可。
  
  然后我们的网站就会链接到我指定的TFS项目,最终如下图所示。这样网站就已经成功链接到TFS了。
DSC0007.png
  在VS2010中使用TFS预览服务
  在上图中有一些指导我们如何通过Visual Studio 2010和2012 RC链接到TFS服务器的链接。如果你正在使用Visual Studio 2012 RC,不需要多余操作。但是假如你正在使用Visual Studio 2010你需要安装SP1和KB2581206。
  打开Visual Studio,连接到我的TFS服务,在团队资源管理器中,我们可以添加一个新的TFS服务器,粘贴从开发人员门户网站上复制的我的TFS服务URL。
DSC0008.png
  选择我刚创建的项目,他就会在我的团队资源管理器中列出来。
DSC0009.png
  现在我们开始生成我们的网站。由于我们要生成的网站会部署在WAWS上,他不是一个云服务,不是一个云角色。所以在这个例子中,我们需要创建一个普通的ASP.NET Web应用程序。例如,一个ASP.NET MVC 3 Web应用程序。
  下一步,右键点击解决方案,选择“添加解决方案到源控件”,选择我刚创建的项目。
DSC00010.png
  检查我的代码。
DSC00011.png
  检查完毕,我们可以看到在TFS服务器中有一个生成项目在运行。
DSC00012.png
  如果我们回到开发人员门户网站上,我们会看到在我们的网站部署页有一个部署项目正在运行。
DSC00013.png
  事实上,一旦我们将网站连接到TFS,它就会生成一个新的,定义在TFS的项目。他会自动被每个check-in触发,部署到我们链接的网站。这样当我们的代码编译完成之后它就会从我们的TFS服务器上发布到到我们的网站上。
  生成部署完成后,在开发人员门户网站上我们可以看到他现在是活跃的。
DSC00014.png
  现在我们可以看到从我的Visual Studio创建的,由我的TFS部署的网站。
DSC00015.png
  通过VS和TFS二次部署
  使用TFS发布的一个很大好处是二次部署。现在如果我在我的Visual Studio中更改了一些代码,例如更新首页中一些文本,检查更改,然后它会自动触发生成、部署到我的WAWS中。
DSC00016.png
  再者,如果我们想要回滚到之前的一个版本,我们可以在门户网站上选择一个现存的部署列表然后点击底部的“重新部署”。
DSC00017.png
  问答:网站使用工作角色存储吗?
  Stacy在我前面的文章中问了一个问题 ,“网站能不能使用Windows Azure存储,可以使用工作角色吗”。由于网站部署在数据中心的Windows Azure虚拟机中,它就可以使用Windows Azure所有的功能,例如存储、SQL数据库、CDN等等。但是当我们使用网站,标准的ASP.NET
Web应用程序、PHP网站或者NodeJS,Windows Azure SDK默认并未引用。我们可以自己添加他们。
  在我们的范例项目中,右键点击我的MVC项目,单击“管理NuGet包”。在对话框中搜索Windows Azure包,选择“Windows Azure存储”安装。
DSC00018.png
  然后我们会拥有能够访问到Windows Azure存储(例如表、队列和blob)的程序集。由于我已经拥有一个存储账户,然我们快速演示一下,在一个容器中列出所有的blobs。这段代码应该是这样的。

using System;   
using System.Collections.Generic;   
using System.Linq;   
using System.Web;   
using System.Web.Mvc;   
using Microsoft.WindowsAzure;   
using Microsoft.WindowsAzure.StorageClient;   
namespace WAASTFSDemo.Controllers   
{  
public class HomeController : Controller   
{  
public ActionResult Index()   
{   
ViewBag.Message = "Welcome to Windows Azure!";   
var credentials = new StorageCredentialsAccountAndKey("[STORAGE_ACCOUNT]", "[STORAGE_KEY]");   
var account = new CloudStorageAccount(credentials, false);   
var client = account.CreateCloudBlobClient();   
var container = client.GetContainerReference("shared");   
ViewBag.Blobs = container.ListBlobs().Select(b => b.Uri.AbsoluteUri);   
return View();   
}  
public ActionResult About()   
{   
return View();   
}   
}   
}
@{ ViewBag.Title = "Home Page"; }
<h2>
@ViewBag.Message</h2>
<p>
To learn more about ASP.NET MVC visit <a href="http://asp.net/mvc" title="ASP.NET MVC Website">
http://asp.net/mvc</a>.
</p>
<div>
<ul>
@foreach (var blob in ViewBag.Blobs) {
<li>@blob</li>
}
</ul>
</div>
  然后检查代码,它会部署到我的网站上。最终我们可以看到在我的容器中的blob。
DSC00019.png
  这只是一个范例,但它证明了网站可以连接到存储、表、blob和队列。所以对Stacy的回答应该是“是”。网站可以使用队列存储与工作角色。
  总结
  在这篇文章中我演示了如何集成TFS和Windows Azure网站。你可以看到网站通过TFS服务自动生成、上传和部署。我们所要做的就是提供TFS名字,选择项目。
  不仅仅是Windows Azure网站,在这次更新中,Windows Azure云服务(托管服务)也可以通过TFS发布。如下图所示。
DSC00020.png

  但是目前,只有微软TFS服务预览可以与Windows Azure集成。我想在将来我们可以链接企业的TFS和第三方TFS(例如CodePlex)到Windows

Azure。
  希望这对你有所帮助。
  Shaun
  本文翻译自:
  http://geekswithblogs.net/shaunxu/archive/2012/06/14/windows-azure-evolution-ndash-tfs-integration-waws-part-2.aspx

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-220946-1-1.html 上篇帖子: 如何为您使用Windows Azure的应用程序评估成本 下篇帖子: 现实世界的Windows Azure:h.e.t软件使用Windows Azure削减50%的成本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表