Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SQL Server Projekte mit Azure DevOps

Ähnliche Präsentationen


Präsentation zum Thema: "SQL Server Projekte mit Azure DevOps"—  Präsentation transkript:

1 SQL Server Projekte mit Azure DevOps
Markus Delhofen, arelium GmbH

2 Orga and Main Sponsors You Rock! Sponsor Many thanks to our sponsors, without whom such an event would not be possible.

3 Sponsors (Gold) Many thanks to our sponsors, without whom such an event would not be possible.

4 Sponsors continued Silver: Global: This event is climate neutral: Bronze: Many thanks to our sponsors, without whom such an event would not be possible.

5 arelium GmbH Microsoft-Partner mit den Kompetenzen Gründungsjahr: 2007
Gold Data Analytics (Business Intelligence), Silver Application Development Gründungsjahr: 2007 Firmensitz: Langenfeld (Rheinland) Mitarbeiter: ca. 15 Geschäftsführer: Markus Delhofen, Martin Kopp Kunden: verschiedene Branchen mit Schwerpunkt auf Medien Markus

6 Markus Delhofen Diplom Wirtschaftsinformatiker BI-Entwicklung
BI-Architektur MCSE Business Intelligence Aktuelle Projekte DWH-Architektur und SSIS/SSAS-Entwicklung Martin

7 Agenda SQL Server Database Project Azure DevOps Pipeline Builds
Azure DevOps Pipeline Releases Azure DevOps Artifacts Weniger Theorie, mehr Demos Hoffentlich hält das Netz / werden die Builds priorisiert

8 Was ist das Ziel? Daten-bank Visual Studio Repository Build Release
SQL Database On Premise Azure DevOps Azure On Premise

9 SQL Server Database Project
Teil von Visual Studio Workload: Datenspeicherung- und verarbeitung SQL Server Data Tools (SSDT) Mindestens seit Visual Studio 2008 - Wer arbeitet bisher mit den SSDT?

10 SSDT - Vorteile Ganzheitliche Betrachtung der Datenbank
Kompilierung und damit Prüfung der Scripte Unterstützung beim Deployment Versionierung der Datenbank-Scripte (bspw. mit Azure DevOps)

11 Features Database Project
Unterstützung der meisten Datenbank-Objekte Tabellen, Views, Indexe, Linked Server, Schemata usw. Refactoring (wenige) Rename, Move to Schema, Expand Wildcards Designer für Tabellen Unterstützung beim Deployment - *der meisten*, da bestimmt etwas fehlt, ich kenne aber nichts.

12 Deployment Schema Compare Publish Erstellen eines DACPAC per Build
Erzeugt ein Deployment-Script nur DDL Publish Erzeugt ebenfalls ein Deployment-Script Unterstützung von DML durch Pre- und Post-Deployment-Scripten Erstellen eines DACPAC per Build - *der meisten*, da bestimmt etwas fehlt, ich kenne aber nichts.

13 Demo SQL Server Database Project
Datenbank importieren -> (ca. 10 Minuten) SchemaCompare -> Compile Error -> No Action Neue Tabelle „FactCustomer“ anlegen Refactoring Rename zeigen (CustomerCity -> CustomerPostCode) Pre/Post Deployment Script anlegen Schema Compare Publish

14 Azure DevOps - Übersicht
Overview Boards Repositories Pipelines TestPlans Artifaces Kurz erklären, was sich hinter den einzelnen Punkten verbirgt

15 Azure DevOps - Übersicht
Overview Summary, Dashboards, Analytic views, Wiki Boards WorkItems, Boards, Backlogs, Sprint, Queries Repositories Files, Commits, Pushes, Branches, Tag, Pull Requests Pipelines Builds, Releases, Library, TaskGroups, Deployment Groups TestPlans Test Plans, Parameters, Configuration, Runs, Load test Artifaces Etwas genauer werden, falls etwas vergessen wurde.

16 Azure DevOps - Übersicht
Pipelines Builds Releases Deployment Groups Artifaces Und das schauen, wir uns jetzt gleich an.

17 Azure DevOps Pipelines – wofür?
Kurz gesagt: Erstellen und Bereitstellen von Artefakten aus einem Repository Was???

18 Repository Source Code Verwaltung in Azure DevOps
Ablage der Sourcen mit Versionierung Als Protokoll GIT oder TFS

19 Artefakt (Artifact) Begriff kommt aus der Software Entwicklung
Bezeichnet die (Zwischen-) Ergebnisse eines Softwareerstellungsprozesses Bspw. ein ausführbares Programm Hier: Alles was bei einem Build entstehen kann

20 Erstellen: bedeutet, dass …
… aus Sourcecode (aus einem Repository) ein Artefakt erstellt wird Dies übernimmt: Pipeline -> Build in Azure DevOps

21 Bereitstellen: bedeutet, dass …
… Artefakte für die Weiterverwendung bereit gestellt werden Download Deployment in Testumgebung Deployment nach Produktion Dies übernimmt: Pipeline -> Releases in Azure DevOps

22 Features Pipeline Build-Agents Parallele Builds Eventbasiertes Starten
Gehostete Integration von eigenen (lokalen) Build-Agents Parallele Builds Eventbasiertes Starten Speicherung der Build-Ergebnisse (Artefakte) Berechtigungskonzept -Benachrichtigung Integration ins Repository

23 Pipeline | Build - 101 trigger Auslöser pool Wo läuft der Build?
variables Konfiguration für den Build steps Welche Schritte sind im Bild? tasks Welche Aufgaben werden ausgeführt?

24 Vordefinierte Variablen (Auszug)
Bemerkung Build.ArtifactStagingDirectory Staging-Verzeichnis im Build-Prozess Build.BuildNumber Build Number  Build.Repository.Name Name des Repository Build.SourcesDirectory Build-Verzeichnis des Agents System.Debug True, für ausführliche Build-Logs System.teamProject Name des Team Projektes

25 Demo Azure Pipeline Zeit: ca. 8 Minuten Demo1 Pipeline öffnen
YAML Script zeigen -> Hinweis auf Repo, dass diese ggf. sich überschreiben. Task rechts zeigen Pipeline starten Trigger zeigen

26 Wo ist mein Build Ergebnis?
Problem: Build Agent wird nach dem Build entsorgt, daher ist alles weg Lösung: Ablegen als Artefakte, um das Ergebnis zu sichern

27 PublishBuildArtifacts@1
Artefakte ablegen Tasks sorgen dafür, dass Artefakte bereitgestellt werden Nutzung einer Staging-Area: $(build.artifactstagingdirectory) Es können also erst einmal mehrere Artefakte gesammelt werden, bevor diese veröffentlicht werden In Preview: PublishPipelineArtifact

28 Demo Azure Pipeline Zeit: ca. 8 Minuten Pipeline SQL Saturday zeigen
Build anwerfen und dann zeigen Waiting for Queue Trigger Project Settings Ergebnis benachrichtigung

29 Pipeline | Releases Pipeline, um Artefakte zu veröffentlichen
komplexe Prozesse sind möglich Approvals (Post- & Pre-Deployment) werden unterstützt

30 Demo Pipeline Releases
Zeit ca. 5 Minuten Pipeline anlegen Pre-Approval konfigurieren und zeigen (wenn noch Zeit)

31 On-Premise Deployment
Problem Azure DevOps kann nicht direkt lokal zugreifen Lösung: lokaler Agent / Deployment groups Lokaler Dienst „Azure Pipelines Agent“

32 Azure Pipeline Agent Einfache in Installation aus Azure DevOps
Authentifizierung mit Personal Access Token Azure Pipeline Port: 443 Agent OnPremise Agent in Cloud

33 Demo Deployment Groups
Zeit ca. 3 Minuten Deployment Groups öffnen Zeigen, wie theoretisch ein Agent hinzugefügt wird. Wenn meiner wieder läuft dies auch einmal zeigen.  YML:

34 Azure Artifacts Ablage von Artefakten in einem Feed
Verbindung mit Feed möglich Versionierung Berechtigungen

35 Unterstützte Pakettypen
Mave npm NuGet PyPl Universal

36 Demo Artifacts Erst den Feed anlegen Dann diesen beladen

37 Fazit Ist brauchbar Konzepte werden immer ausgereifter
Einfache Integration von Azure DevOps zu OnPremise

38 Noch Fragen. markus. delhofen@arelium
Noch Fragen? Vielen Dank, viel Erfolg bei der Verlosung und einen guten Heimweg


Herunterladen ppt "SQL Server Projekte mit Azure DevOps"

Ähnliche Präsentationen


Google-Anzeigen