在D365 CE开发当中,有一个非常痛苦的问题就是开发,测试环境中的export import solution 部署问题.

Devops中能很好的解决这个问题.

工作原理:

在Azure Devops/VSTS Pipeline中, 如果需要实现设置集成/部署的功能, 我们需要2个pieplines, 一个是Build, 另外一个是 Release.

Build 是用来触发Export CRM solution 从 Source Environment 并且把.zip solution文件保存在Azure Artifacts drop 文件夹中.

Release 是用来把保存在Azure Artifacts drop 文件夹中的.zip 文件在Target Environment中触发Import 和 publish solution

创建Pipeline:

Build Pipeline:

1. 首先我们创建一个solution在Source Environment 中:

2. 我们要在Devops中安装 Dynamics 365 Build Tools.

Dynamics 365 Build Tools 是一个已经配置好的三方Auzre Devops Pepelines. 可以直接用来做solution部署和其他的功能

3. 安装好Dynamics 365 Build Tools之后, 我们可以在Devops 中创建 Pipeline了

4.  点击"New Pipeline"之后,我们需要选择使用 visual designer来创建

5. 我们这里使用 Azure Repos Git, 可以选择Github或者其他方式的source

6. 接下来我们需要一个empty的template

7. 选择empty job之后, 我们需要把agent pool 改为hosted

8. 我们在第一个agent job 添加一个新的task: MSCRM Tool Installer.

ps: 如果这里搜不到Dynamcis 365 Build Tools, 那说明Devops还没有安装成功这个pipeline. 需要去auzre market重新安装.

9.下面我们要添加一个新的task "MSCRM Export Solution"在MSCRM Publish Customizations 之后.

并且这里的CRM Connection String需要设置:AuthType=Office365;Username=xxx@xxx.onmicrosoft.com; Password=xxx;Url=https://xxx.crm5.dynamics.com/

我们的output path 需要改为$(build.ArtifactStagingDirectory)

10. 接下来我们需要复制我们的.zip文件到azure devops文件夹底下

11.全部设置好保存之后,让我们run一下这个pipeline. 我们看到一共使用了28s的时间来运行这个pipeline

到这里我们就成功了一半. 我们把export的 solution已经成功上传到了azure artofact drop 文件夹里. 下面我们需要获取到这个.zip 文件并且import 到我们的target environment中.

Release Pipeline:

之前有说过, release pipeline是用来import solution作用的.

1. 首先我们需要创建一个release pipeline,并且选择empty job, 并且把artifact选为刚才我们做好的build pipeline

在Pipeline -> Releases ->  Create Release

2. 接下来我们需要设置这个artifacts.

3. 编辑好之后,我们需要给release pipeline添加tasks

这里需要添加两个tasks:

  1. MSCRM Publihs Customizations

  2. MSCRM Export Solution

ps: Export Solution 里面的配置按照项目需求可以做调整.这里我们就Export unmanaged solution

4. 设置好之后我们保存,并且run一下这个release pipeline

并且我们查看target environment, unmanaged solution已经被导入了.

使用MS Devops 来部署CRM Solution的更多相关文章

  1. Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx)

    Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx) 一丶集群和Nginx反向代理 ...

  2. Windows Server 2012部署Enterprise Solution 5.4

    最近一个客户升级系统,改用Windows Server 2012作为服务器操作系统.升级之后性能未见明显的改善,在不改变代码的基础上,考虑到C/S架构的能力,增加内存或是处理器的处理能力似乎可以解决一 ...

  3. django环境部署 crm和路飞学城

    环境依赖 yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-de ...

  4. 微软Azure DevOps自动化部署

    1.准备一个https://hub.docker.com账号,申请一个免费的镜像仓库(免费账户可以申请一个) 创建docker远程镜像库 2.新建一个mvc的项目 给这个项目加上Dockerfile文 ...

  5. Windows 10 部署Enterprise Solution 5.5

    Windows 10正式版发布以后,新操作系统带来了许多的变化.现在新购买的电脑安装的系统应该是Windows 10.与当初用户不习惯Windows 7,购买新电脑后第一个想做的事情就是重装成XP,估 ...

  6. 部署crm项目

    准备工作 使用xftp将项目传到linux 将knight 传到linux上 将项目的数据导出 mysqldum -uroot -p --all-database > alldb.dump 在w ...

  7. Dynamics CRM Solution

    Default solution Dynamics comes pre-loaded with a Default Solution Contains all the base objects, en ...

  8. Azure DevOps Pipelines部署.Net Core 应用到Kubernetes

    一.    先决条件 1.Azure Repos Git/Git和项目上传 把本地的Net Core项目上传至Azure Repos Git/Git 2.Docker Registry Service ...

  9. PowerShell 方式部署Sharepoint Solution

    覆盖 Uninstall-SPSolution –Identity Caesarstone.GlobalSite.WebSite.wsp –WebApplication http://myserver ...

随机推荐

  1. docker-bind挂载

    使用绑定挂载 自Docker早期以来,绑定挂载一直存在.与卷相比,绑定装载具有有限的功能.使用绑定装入时,主机上的文件或目录将装入容器中.文件或目录由其在主机上的完整路径或相对路径引用.相反,当您使用 ...

  2. 端口扫描器--利用socket协议

    #!/usr/bin/env python # -*- coding:UTF-8 -*- import optparse import socket import threading # 用法 pyt ...

  3. C++生成dll以及调用(函数)和类

    C++新手,方法可能有很多,此方法仅仅是自己实验并可行,详细步骤如下: 生成dll文件和lib文件: (1) 新建项目-windows桌面向导,选择动态链接.dll以及空项目: (2)复制代码(头文件 ...

  4. mongodb学习(一)——简介和基本操作

    简介 MongoDB 是一个基于分布式文件存储的数据库 属于NoSQL数据库,是介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的 旨在为WEB应用提供可扩展的高性 ...

  5. Spring Boot2 系列教程 (十五) | 服务端参数校验之一

    估计很多朋友都认为参数校验是客户端的职责,不关服务端的事.其实这是错误的,学过 Web 安全的都知道,客户端的验证只是第一道关卡.它的参数验证并不是安全的,一旦被有心人抓到可乘之机,他就可以有各种方法 ...

  6. 最小生成树kruskal 知识点讲解+模板

    0.前言 因为本人太蒟了 我现在连NOIP的初赛都在胆战心惊 并且我甚至连最小生成树都没有学过 所以这一篇博客一定是最详细的QAQ 哈哈 请您认真看完如果有疏漏之处敬请留言指正 感谢! Thanks♪ ...

  7. cogs 2450. 距离 树链剖分求LCA最近公共祖先 快速求树上两点距离 详细讲解 带注释!

    2450. 距离 ★★   输入文件:distance.in   输出文件:distance.out   简单对比时间限制:1 s   内存限制:256 MB [题目描述] 在一个村子里有N个房子,一 ...

  8. 借助 dp 公式去优化

    题目描述 一天,神犇和 LCR 在玩扑克牌.他们玩的是一种叫做“接竹竿”的游戏. 游戏规则是:一共有 nnn 张牌,每张牌上有一个花色 ccc 和一个点数 vvv,花色不超过 kkk 种.将这些牌依次 ...

  9. 《C# 爬虫 破境之道》:第二境 爬虫应用 — 第三节:处理压缩数据

    续上一节内容,本节主要讲解一下Web压缩数据的处理方法. 在HTTP协议中指出,可以通过对内容压缩来减少网络流量,从而提高网络传输的性能. 那么问题来了,在HTTP中,采用的是什么样的压缩格式和机制呢 ...

  10. mysql累加、累减

    累加 先上表结构: CREATE TABLE `abc` ( `jidu` ) NOT NULL AUTO_INCREMENT, `jine` ) DEFAULT NULL, PRIMARY KEY ...