Cmdlets/PublishAll.cs

using Microsoft.Crm.Sdk.Messages;
using Microsoft.Xrm.Tooling.Connector;
using System.Management.Automation;
 
namespace Xrm.DevOps.Tools.Cmdlets
{
    [Cmdlet(VerbsData.Publish, "Customizations")]
    public class PublishAll: Cmdlet
    {
        [Parameter(Position = 1, Mandatory = true)]
        public string ConnectionString { get; set; }
 
        CrmServiceClient _client;
 
        protected override void BeginProcessing()
        {
            _client = new CrmServiceClient(ConnectionString);
        }
 
        protected override void ProcessRecord()
        {
            PublishAllXmlRequest request = new PublishAllXmlRequest();
            WriteVerbose("PublishAll start");
            _client.Execute(request);
            WriteVerbose("PublishAll completed!");
        }
 
        protected override void EndProcessing()
        {
 
        }
    }
}