Skip to content

Commit

Permalink
Updated documentation to v1.2
Browse files Browse the repository at this point in the history
  • Loading branch information
DrJohnT committed Jan 4, 2021
1 parent 59aa4f6 commit b07f704
Show file tree
Hide file tree
Showing 38 changed files with 763 additions and 122 deletions.
8 changes: 4 additions & 4 deletions DeployCube/DeployCube.psd1
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#
# Generated by: Dr. John Tunnicliffe
#
# Generated on: 08/04/2019
# Generated on: 04/01/2021
#

@{
Expand All @@ -12,7 +12,7 @@
RootModule = 'DeployCube.psm1'

# Version number of this module.
ModuleVersion = '1.0.0'
ModuleVersion = '1.2.0'

# ID used to uniquely identify this module
GUID = 'de85c41f-a8ab-41b3-90ec-2cb7d1bc1cb3'
Expand All @@ -24,10 +24,10 @@ Author = 'Dr. John Tunnicliffe'
CompanyName = 'Decision Analytics'

# Copyright statement for this module
Copyright = '(c) 2019 Dr. John Tunnicliffe. All rights reserved.'
Copyright = '(c) 2019-2021 Dr. John Tunnicliffe. All rights reserved.'

# Description of the functionality provided by this module
Description = 'Deploy your SQL Server Analysis Services Cube (Tabular or '
Description = 'Provides utilities to help you deploy your Analysis Services cube to Azure or your on-premise servers. Supports both Tabular and Multidimensional projects. Full documentation can be found on the [project site](https://github.com/DrJohnT/DeployCube)'

# Minimum version of the Windows PowerShell engine required by this module
PowerShellVersion = '5.0'
Expand Down
445 changes: 396 additions & 49 deletions DeployCube/en-US/DeployCube-help.xml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ function Find-AnalysisServicesDeploymentExeLocations {
Lists all locations of Microsoft.AnalysisServices.Deployment.exe files on the machine
.DESCRIPTION
Finds and lists the location path to every version of Microsoft.AnalysisServices.Deployment.exe on the machine
Finds and lists the location path to every version of Microsoft.AnalysisServices.Deployment.exe on the machine.
Also checks the custom install location defined by Environment variable CustomAsDwInstallLocation
.EXAMPLE
Find-AnalysisServicesDeploymentExeLocations
Expand All @@ -19,7 +20,7 @@ function Find-AnalysisServicesDeploymentExeLocations {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>

Expand All @@ -34,6 +35,9 @@ function Find-AnalysisServicesDeploymentExeLocations {
#V18 (SSMS - 150)
$AnalysisServicesDeploymentExes += Get-Childitem -Path "${env:ProgramFiles(x86)}\Microsoft SQL Server Management Studio *\Common7" -Recurse -Include $ExeName -ErrorAction SilentlyContinue;

# Custom install location defined by Environment variable CustomAsDwInstallLocation
$AnalysisServicesDeploymentExes += Get-Childitem -Path "${env:CustomAsDwInstallLocation}" -Recurse -Include $ExeName -ErrorAction SilentlyContinue;

# list all the locations found
foreach ($AnalysisServicesDeploymentExe in $AnalysisServicesDeploymentExes) {
[string]$ProductVersion = $AnalysisServicesDeploymentExe.VersionInfo.ProductVersion.Substring(0,2);
Expand Down
24 changes: 21 additions & 3 deletions DeployCube/public/Get-AnalysisServicesDeploymentExePath.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,35 @@ function Get-AnalysisServicesDeploymentExePath {
.DESCRIPTION
Finds the path to specific version of Microsoft.AnalysisServices.Deployment.exe
Checks the following locations:
${env:ProgramFiles(x86)}\Microsoft SQL Server\*\Tools\Binn
${env:ProgramFiles(x86)}\Microsoft SQL Server Management Studio *\Common7\IDE
$env:CustomAsDwInstallLocation
The environment variable $env:CustomAsDwInstallLocation allows you to specify your own custom install directory.
.PARAMETER Version
The version of Microsoft.AnalysisServices.Deployment.exe to find.
Valid values for -Version are: ('15', '14', '13', '12', '11') which translate as follows:
* 15: SQL Server 2019
* 14: SQL Server 2017
* 13: SQL Server 2016
* 12: SQL Server 2014
* 11: SQL Server 2012
If you are unsure which version(s) of Microsoft.AnalysisServices.Deployment.exe you have installed, use the function **Find-AnalysisServicesDeploymentExeLocations** to obtain a full list.
.EXAMPLE
Get-AnalysisServicesDeploymentExePath -Version latest
Get-AnalysisServicesDeploymentExePath -Version 15
Returns the latest version of Microsoft.AnalysisServices.Deployment.exe
Returns the SQL Server 2019 version of Microsoft.AnalysisServices.Deployment.exe (if present on the machine).
.EXAMPLE
Get-AnalysisServicesDeploymentExePath -Version 14
Returns the SQL Server 2017 version of Microsoft.AnalysisServices.Deployment.exe (if present on the machine).
.OUTPUTS
Returns a string containing the full path to the selected version of Microsoft.AnalysisServices.Deployment.exe
Expand All @@ -27,7 +42,7 @@ function Get-AnalysisServicesDeploymentExePath {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[OutputType([string])]
Expand All @@ -51,6 +66,9 @@ function Get-AnalysisServicesDeploymentExePath {
# Location SQL Server 2019 and greater (i.e. installed with SSMS)
$AnalysisServicesDeploymentExes += Get-Childitem -Path "${env:ProgramFiles(x86)}\Microsoft SQL Server Management Studio *\Common7\IDE" -Recurse -Include $ExeName -ErrorAction SilentlyContinue;

# Custom install location defined by Environment variable CustomAsDwInstallLocation
$AnalysisServicesDeploymentExes += Get-Childitem -Path "${env:CustomAsDwInstallLocation}" -Recurse -Include $ExeName -ErrorAction SilentlyContinue;

foreach ($AnalysisServicesDeploymentExe in $AnalysisServicesDeploymentExes) {
$ExePath = $AnalysisServicesDeploymentExe.FullName;
[string] $ProductVersion = $AnalysisServicesDeploymentExe.VersionInfo.ProductVersion;
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Get-CubeDatabaseCompatibilityLevel.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ function Get-CubeDatabaseCompatibilityLevel {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[OutputType([int])]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Get-ModuleByName.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ function Get-ModuleByName {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[CmdletBinding()]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Get-ServerMode.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ function Get-ServerMode {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[OutputType([String])]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Get-SqlAsPath.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ function Get-SqlAsPath {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[OutputType([String])]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Get-SqlConnectionString.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ function Get-SqlConnectionString {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[OutputType([string])]
Expand Down
6 changes: 3 additions & 3 deletions DeployCube/public/Get-SsasProcessingMessages.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ function Get-SsasProcessingMessages {
.LINK
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[CmdletBinding()]
param
Expand Down
3 changes: 3 additions & 0 deletions DeployCube/public/Invoke-ExternalCommand.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ function Invoke-ExternalCommand {
.LINK
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[CmdletBinding()]
param(
Expand Down
8 changes: 7 additions & 1 deletion DeployCube/public/Invoke-ProcessTabularCubeDatabase.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,17 @@ function Invoke-ProcessTabularCubeDatabase {
'ClearValues': Clear values in this object and all its dependents.
'Calculate': Recalculate this object and all its dependents, but only if needed. This value does not force recalculation, except for volatile formulas.
.EXAMPLE
Invoke-ProcessTabularCubeDatabase -Server "localhost" -CubeDatabase "MyCube" -RefreshType "Full"
.EXAMPLE
Invoke-ProcessTabularCubeDatabase -Server "localhost" -CubeDatabase "MyCube2" -Credential "MyPsCredential" -RefreshType "Automatic"
.LINK
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[CmdletBinding()]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Ping-SsasDatabase.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ function Ping-SsasDatabase {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[OutputType([Boolean])]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Ping-SsasServer.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ function Ping-SsasServer {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[OutputType([Boolean])]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Publish-Cube.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ function Publish-Cube {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[CmdletBinding()]
Expand Down
14 changes: 12 additions & 2 deletions DeployCube/public/Select-AnalysisServicesDeploymentExeVersion.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,25 @@ function Select-AnalysisServicesDeploymentExeVersion {
.PARAMETER PreferredVersion
The preferred version of Microsoft.AnalysisServices.Deployment.exe to attempt to find.
Valid values for -PreferredVersion are: ('15', '14', '13', '12', '11', 'latest') which translate as follows:
* latest: Latest SQL Server version found on agent
* 15: SQL Server 2019
* 14: SQL Server 2017
* 13: SQL Server 2016
* 12: SQL Server 2014
* 11: SQL Server 2012
If you are unsure which version(s) of Microsoft.AnalysisServices.Deployment.exe you have installed, use the function [Find-AnalysisServicesDeploymentExeLocations](https://github.com/DrJohnT/DeployCube/blob/master/docs/Find-AnalysisServicesDeploymentExeLocations.md) to obtain a full list.
.EXAMPLE
Select-AnalysisServicesDeploymentExeVersion -PreferredVersion 140;
Select-AnalysisServicesDeploymentExeVersion -PreferredVersion latest;
Returns the latest version of Microsoft.AnalysisServices.Deployment.exe found on the machine.
.EXAMPLE
Select-AnalysisServicesDeploymentExeVersion -PreferredVersion 14;
Returns the SQL Server 2017 version of Microsoft.AnalysisServices.Deployment.exe (if present on the machine).
.OUTPUTS
Returns a string containing the version found, if the preferred version could not be found.
Expand All @@ -26,7 +36,7 @@ function Select-AnalysisServicesDeploymentExeVersion {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[OutputType([string])]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Unpublish-Cube.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ function Unpublish-Cube {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[CmdletBinding()]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Update-AnalysisServicesConfig.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ function Update-AnalysisServicesConfig {
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[CmdletBinding()]
Expand Down
2 changes: 1 addition & 1 deletion DeployCube/public/Update-TabularCubeDataSource.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ function Update-TabularCubeDataSource
https://github.com/DrJohnT/DeployCube
.NOTES
Written by (c) Dr. John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
Written by (c) Dr. John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
#>
[OutputType([Boolean])]
Expand Down
9 changes: 5 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
[![PowerShell Gallery Version](https://img.shields.io/powershellgallery/v/DeployCube.svg)](https://www.powershellgallery.com/packages/DeployCube)
[![Build Status](https://qatar-re.visualstudio.com/QatarRe.BI/_apis/build/status/Test%20and%20Publish%20Package%20DeployCube?branchName=master)](https://qatar-re.visualstudio.com/QatarRe.BI/_build/latest?definitionId=58&branchName=master)

[![Build status](https://dev.azure.com/drjohnt/DeployCube/_apis/build/status/DeployCube-CI)](https://dev.azure.com/drjohnt/DeployCube/_build/latest?definitionId=5)

### DeployCube

# Deploy a SSAS Tabular or Multidimensional cube using the Analysis Services Deployment Utility

## Overview

**Publish-Cube** allows you to deploy a tabular or multidimensional cube to a SQL Server Analysis Services instance. Behind the scenes it uses the
**Publish-Cube** allows you to deploy a tabular or multidimensional cube to an Analysis Services instance either on-premise or in Azure. Behind the scenes it uses the
[Analysis Services Deployment Utility](https://docs.microsoft.com/en-us/sql/analysis-services/multidimensional-models/deploy-model-solutions-with-the-deployment-utility)
in silent mode.
**Publish-Cube** simplifies the use of [Analysis Services Deployment Utility](https://docs.microsoft.com/en-us/sql/analysis-services/multidimensional-models/deploy-model-solutions-with-the-deployment-utility)
Expand Down Expand Up @@ -42,9 +41,11 @@ Microsoft.AnalysisServices.Deployment.exe is known as the [Analysis Services Dep

The module also requires the Microsoft SQL Server PowerShell module **SqlServer** which is installed automatically.

Custom install directories for Microsoft.AnalysisServices.Deployment.exe are now supported. Please set the environment variable CustomAsDwInstallLocation prior to running any functions.

### Admin privileges required for deployment

In order to successfully deploy a tabular cube, the process running **Publish-Cube** needs to run under a service account that has admin privileges on your target SQL Server Analysis Services instance.
In order to successfully deploy a tabular cube, the process running **Publish-Cube** needs to run under a service account that has admin privileges on your target Azure Analysis Services or SSAS instance. If you wish to use a specific Windows account, all of the relevant functions have UserID / Password parameters.

## Getting Started

Expand Down
5 changes: 3 additions & 2 deletions docs/Find-AnalysisServicesDeploymentExeLocations.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ Find-AnalysisServicesDeploymentExeLocations
```

## DESCRIPTION
Finds and lists the location path to every version of Microsoft.AnalysisServices.Deployment.exe on the machine
Finds and lists the location path to every version of Microsoft.AnalysisServices.Deployment.exe on the machine.
Also checks the custom install location defined by Environment variable CustomAsDwInstallLocation

## EXAMPLES

Expand All @@ -36,7 +37,7 @@ Find-AnalysisServicesDeploymentExeLocations
### Output is written to standard output.
## NOTES
Written by (c) Dr.
John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT

## RELATED LINKS
Expand Down
23 changes: 20 additions & 3 deletions docs/Get-AnalysisServicesDeploymentExePath.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,27 +18,44 @@ Get-AnalysisServicesDeploymentExePath [-Version] <String> [<CommonParameters>]

## DESCRIPTION
Finds the path to specific version of Microsoft.AnalysisServices.Deployment.exe
Checks the following locations:

${env:ProgramFiles(x86)}\Microsoft SQL Server\*\Tools\Binn
${env:ProgramFiles(x86)}\Microsoft SQL Server Management Studio *\Common7\IDE
$env:CustomAsDwInstallLocation

The environment variable $env:CustomAsDwInstallLocation allows you to specify your own custom install directory.

## EXAMPLES

### EXAMPLE 1
```
Get-AnalysisServicesDeploymentExePath -Version latest
Get-AnalysisServicesDeploymentExePath -Version 15
```

Returns the SQL Server 2019 version of Microsoft.AnalysisServices.Deployment.exe (if present on the machine).

### EXAMPLE 2
```
Get-AnalysisServicesDeploymentExePath -Version 14
```

Returns the latest version of Microsoft.AnalysisServices.Deployment.exe
Returns the SQL Server 2017 version of Microsoft.AnalysisServices.Deployment.exe (if present on the machine).

## PARAMETERS

### -Version
The version of Microsoft.AnalysisServices.Deployment.exe to find.
Valid values for -Version are: ('15', '14', '13', '12', '11') which translate as follows:

* 15: SQL Server 2019
* 14: SQL Server 2017
* 13: SQL Server 2016
* 12: SQL Server 2014
* 11: SQL Server 2012

If you are unsure which version(s) of Microsoft.AnalysisServices.Deployment.exe you have installed, use the function **Find-AnalysisServicesDeploymentExeLocations** to obtain a full list.

```yaml
Type: String
Parameter Sets: (All)
Expand All @@ -61,7 +78,7 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable
### Returns a string containing the full path to the selected version of Microsoft.AnalysisServices.Deployment.exe
## NOTES
Written by (c) Dr.
John Tunnicliffe, 2019 https://github.com/DrJohnT/DeployCube
John Tunnicliffe, 2019-2021 https://github.com/DrJohnT/DeployCube
This PowerShell script is released under the MIT license http://www.opensource.org/licenses/MIT
## RELATED LINKS
Expand Down
Loading

0 comments on commit b07f704

Please sign in to comment.