Download as pdf or txt
Download as pdf or txt
You are on page 1of 51

Jens Vestergaard

Continuous Delivery for BI


BIG Thanks to SQL Sat Denmark sponsors
GOLD

SILVER

BRONZE
TEMPERATURE OF AUDIENCE
How many are using some kind of code repository?
How many are building (any solution) on check-in?
How many are testing automatically?
How many are deploying automatically into
production?
PROFILES
BI Developers (SSRS, SSIS, SSAS + SQL)

SQL Developers

Non Developers?
Agenda

Process MS Tools – GOTCHA’s


•Moving up the Latter •Integration Services
•Analysis Services
•Reporting Services Demo
•PowerBI
•MSTest

Tools in General
•Git
•Octopus
Questions Wrap-up •Pester
•Team City
•…
PROCESS
TO DEVOPS AND BEYOND

Operability?
DevOps
Continuous
Delivery
Continuous
Integration
Manual
Deployment
MANUAL DEPLOYMENT
Leads to

Fear

Anger

Hate

Suffering
TO DEVOPS AND BEYOND

Operability?
DevOps
Continuous
Delivery
Continuous
Integration
Manual
Deployment
CONTINUOUS INTEGRATION
Single Code Repository

Automate Builds

Every Commit to baseline is built

Keep Build fast

Automate Deployment

Test in a clone environment


TO DEVOPS AND BEYOND

Operability?
DevOps
Continuous
Delivery
Continuous
Integration
Manual
Deployment
CONTINUOUS DELIVERY
As Continuous Integration

+ Automatic Deploy to Production


• Delivery Team
• Version Control
• Build & Unit Test
• Automated Acceptance Tests
• User Acceptance Tests
• Release
TO DEVOPS AND BEYOND

Operability?
DevOps
Continuous
Delivery
Continuous
Integration
Manual
Deployment
DEVOPS Continuous
Business
Planning

Feedback & Collaborative


Optimization Development

Continuous Continuous
Monitoring Testing

Continuous
Release &
Deployment
H. James Harrington

“Measurement is the first step that leads to control and


eventually to improvement.

If you can’t measure something, you can’t understand it.


If you can’t understand it, you can’t control it.
If you can’t control it, you can’t improve it.”
Telemetry
TO DEVOPS AND BEYOND

Operability?
DevOps
Continuous
Delivery
Continuous
Integration
Manual
Deployment
OPERABILITY

Pace of Reliability
Features & Uptime
DEVOPS AS A CULT

Development Operations

Development DevOps Operations


DEVOPS AS PHILOSOPHY

DevOps
STATE OF MIND

Prioritisation of operational requirements

Automated infrastructure

Deployment health checks

Pervasive telemetry

Failure injection

Incident swarming

Blameless post-mortems

Shared on-call responsibilities


Bethany Macri

”By removing Blame, you remove Fear;


By removing Fear, you enable Honesty;
and Honesty enables Prevention.”
GOTCHAS
Integration Services
EncryptSensitiveWithPassword or
EncryptAllWithPassword
SSISDB
Environments
BIML
DTEXEC/ISDeploymentWizard.exe vs MSBuild
http://sqlsrvintegrationsrv.codeplex.com/
ANALYSIS SERVICES

SSAS (both MD & Tab)


Create Artifact via Codeplex (.asdatabase)
or Create Output via Azure DevOps (Tab only)
Deploy to Processing/Staging Server
Synchronize to UAT/Test/Production

Five (5) ways of deploying SSAS


XMLA/JSON*, Synchronize, Backup/Restore, AMO* &
Wizard*
DEPLOYMENT UTILITY
Microsoft.AnalysisServices.Deployment.exe

Answer File Mode (/a)


Generates
.deploymentoptions
.deploymenttarget
assecurityinformation
.configsettings
Silent Mode (/s)
Runs the deployment silently
Output Mode (/o)
Generate xmla
REPORTING SERVICES
Report Manager

Stand Alone
PowerShell / C#
Deploy / Upload Reports
Sharepoint Integrated Mode
PowerShell
Deploy / Upload Reports
PowerShell
Registering Data Sources
PowerShell
Re-link to Shared Datasets
Power BI
Use PowerShell to deploy your reports
https://github.com/DevScope/powerbi-powershell-modules/tree/master/Modules/PowerBIPS
MS Tools
AZURE DEVOPS (www.azure.com/devops)
Process Features in Azure DevOps

Assign Approvers

Deployment Conditions

Clone Environments

Define Triggers

Retention Policies

Keep Track of History


IN SOME CASES
Install and Configure a Hosted Build Agent

Create a Build Definition

Setup an Azure DevOps Release

Prerequisites:
• TFS License (hosted build agents are ~ $15 – source)
• Azure DevOps Subscription (free)
• Visual Studio Data Tools (free)
$$$
POWER BI
https://powerbi.microsoft.com/en-us/documentation/powerbi-content-pack-visual-studio/
DEMO – AZURE DEVOPS
SSAS TABULAR
Testing
MSTEST
#Set environment variables for Visual Studio Command Prompt
pushd "$env:VS140COMNTOOLS"
cmd /c "vsvars32.bat&set" |
foreach {
if ($_ -match "=") {
$v = $_.split("="); set-item -force -path "ENV:\$($v[0])" -value "$($v[1])"
}
}
popd
write-host "`nVisual Studio 2015 Command Prompt variables set." -ForegroundColor Yellow

$TestResultStamp = Get-Date -Format yyyyMMdd-HHmmss

mstest /TestContainer:C:\SSAS\Scripts\<Name of Your Library>.dll


/ResultsFile:C:\SSAS\Scripts\Output\<Name of Your Test>_$TestResultStamp.trx
Other tools
OTHER TOOLS

APPVEYOR •Continuous Delivery


•http://appveyor.com/

OCTOPUS DEPLOY •Parallel Application Distribution, Env. Specific Conf.


•https://octopus.com/

PESTER (PS) •BDD - Behaviour Drive Testing


•https://github.com/pester/Pester

PSAKE •Build Automation (now with less XML)


•https://github.com/psake/psake

TEAM CITY •Continuous Integration Out-of-the-Box


•https://www.jetbrains.com/teamcity/

NBi (NUnit) •Test Framework


•http://www.nbi.io/

DIMODELO •Data Warehouse Deployment


•http://www.dimodelo.com

Chef •Infrastructure
•https://www.chef.io/chef/

Jenkins •Build, Test & Deploy


•https://jenkins.io
BIG Thanks to SQL Sat Denmark sponsors
GOLD

SILVER

BRONZE
Raffle and goodbye Beer
Remember to visit the sponsors, stay for the raffle and
goodbye beers ☺

Join our sponsors for a lunch break session in :


cust 0.01 and cust 1.06

We hope you’ll all have a great Saturday.

Regis, Kenneth
Section Title
Title
Content
Title Only
Content Only
Title
Content 1 Content 2
Raffle and goodbye Beer
Remember to visit the sponsors, stay for the raffle and
goodbye beers ☺

Join our sponsors for a lunch break session in :


cust 0.01 and cust 1.06

We hope you’ll all have a great Saturday.

Regis, Kenneth
BIG Thanks to SQL Sat Denmark sponsors
GOLD

SILVER

BRONZE

You might also like