gpt4 book ai didi

continuous-integration - 在 TDS CI 部署结束时自动发布 Sitecore 内容

转载 作者:行者123 更新时间:2023-12-04 08:40:36 24 4
gpt4 key购买 nike

我正在使用 Teamcity 自动(单击)部署到我们的 QA 环境中。目前正在部署内容项,但 QA 人员随后必须手动触发重新发布站点。

无论如何,是否可以使用 TDS、Sitecore Rocks 或 A.N.Other 工具在部署过程结束时自动重新发布。

我知道我可以将 Sitecore 配置为每 x 分钟自动发布一次,但我宁愿让它停用,因为 QA 也将执行负载测试,而且我不希望调度程序妨碍您。

最佳答案

我们通过在我们的日常构建和 QA 网站上设置一个触发发布的 ASPX 来做到这一点。然后构建有一个 Powershell 调用来触发它。我们已经通过 CruiseControl、TeamCity 和 Team Build 做到了这一点。

TeamCity 配置

在部署文件和 TDS 后,TeamCity 的配置使用额外的构建步骤:

  • 转轮类型: Powershell
  • 步骤名称:触发发布到 Web DB
  • Powershell 运行模式: x64
  • 工作目录: [无值]
  • 脚本:源代码
  • 脚本来源:

    $r = [System.Net.WebRequest]::Create('http://myqasite/SomePath/Publish.aspx'); $resp = $r.GetResponse();
  • 脚本执行方式:使用“-Command -”参数将脚本放入Powershell stdin

  • 发布.aspx

    我们发布页面的代码是这样的:
        string full = Request.QueryString["full"];

    // Set up the publish mode
    PublishMode publishMode = PublishMode.Smart;
    if (!string.IsNullOrWhiteSpace(full) && (full == "1" || full.Equals("true", StringComparison.InvariantCultureIgnoreCase)) ) {
    publishMode = PublishMode.Full;
    }

    using (new Sitecore.SecurityModel.SecurityDisabler()) {
    //We need the target database
    var webDb = Sitecore.Configuration.Factory.GetDatabase("web");

    //source db
    var masterDb = Sitecore.Configuration.Factory.GetDatabase("master");

    try {
    foreach (Language language in masterDb.Languages) {
    //loops on the languages and do a full republish on the whole sitecore content tree
    var options = new PublishOptions(masterDb, webDb, publishMode, language, DateTime.Now)
    {RootItem = masterDb.Items["/sitecore"], RepublishAll = true, Deep = true};
    var myPublisher = new Publisher(options);
    myPublisher.Publish();
    }
    }
    catch (Exception ex) {
    Sitecore.Diagnostics.Log.Error("Could not publish the master database to the web", ex);
    }

    }

    关于continuous-integration - 在 TDS CI 部署结束时自动发布 Sitecore 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12896332/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com