SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
www.omm-solutions.de
DevOps:
Automatisieren, was wir
predigen
1
< OMM Solutions GmbH >
www.omm-solutions.de
● Intro
● Was ist DevOps/ Automation Ops?
○ Impuls: Versionsverwaltung / Git (8 min)
● Best of Breed
● Best of Suite AutomationOps
● Fragen & Diskussion
Was erwartet uns heute?
2
< OMM Solutions GmbH >
www.omm-solutions.de
Zusammen sind wir stark
4
Ziel des UiPath RPA Chapters Stuttgart
💪 Offenes Format
○ Kommunikation auch über LinkedIn-Gruppe
💪 Regelmäßiges Event
○ 6 Mal im Jahr
○ Einladungen via E-Mail
und auf https://community.uipath.com/stuttgart/
○ Von Erfahrung anderer RPA-Praktiker lernen
💪 Ablauf
○ Inspirierender Themen-Vortrag
○ Praxisinput
○ Diskussion
www.omm-solutions.de
Wer sind wir?
5
Fotios Karamitsos
Christian Prior-Mamulyan
www.omm-solutions.de
Warum DevOps?
6
< OMM Solutions GmbH >
www.omm-solutions.de 7
Warum DevOps?
Quelle: Atlassian DevOps Study 2020
www.omm-solutions.de 8
Warum DevOps?
Quelle: Atlassian DevOps Study 2020
www.omm-solutions.de 9
Warum DevOps?
Quelle: Atlassian DevOps Study 2020
www.omm-solutions.de
Motivatoren
Eigene Erfahrung: Befreiend!
Eat your own dogfood -> “Culture”
Strukturierte Prozesse in Development:
Manufaktur vs. Fließband
Mitarbeiterentwicklung der (Pro) RPA Developer
Keeping up with the Jon^H^Havas?…
Und was bedeutet es für RPA
Was ist DevOps
10
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
6 Gründe für eine Versionsverwaltung
11
➕ Nachvollziehbarkeit von Änderungen
➡ durch Zeitstempel und Benutzerkennung
➕ Zusammenarbeit
➡ koordinieren gemeinsamen Zugriff und verhindern Konflikte
➕ Fehlerbehebung
➡ durch Dokumentation der Codeversionen
➕ Transparenz
➡ welcher Mitarbeiter hat welche Änderungen vorgenommen?
➕ Schutz vor Datenverlust & Wiederherstellung von Dateien
➡ Archivierung ältere Versionen von Dokumenten oder Dateien
➕ Effizienz
➡ Zeit und Aufwand für die manuelle Verwaltung von Versionen sparen
Warum ist eine Versionsverwaltung sinnvoll?
www.omm-solutions.de
Git can be a beast
• DevOps Phase “Code”: 70% UiPath Studio, >=30% Git
• Git ist mehr als eine versionierte Dateiablage!
• Git
• Collaborative Platforms GitHub, GitLab, Azure Repos, …
• DevOps Pipelines beruhen immer auf strukturiertem Umgang mit Git
(und GitHub/GitLab/…) -> “Git Workflow”
• Git Client(s) entfalten die volle Funktionalität
Git Impuls
12
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Best of Breed
13
< OMM Solutions GmbH >
www.omm-solutions.de
Big Picture RPA CI/CD pipeline
Wenn die RPA-Infrastruktur mit CI/CD pipeline ein Elefant wäre:
1. Config Management
2. Softwareverteilung/Remote Execution
3. Git (und GitHub/…)
4. Custom Application(s)
5. System Administration (Machine that hosts the Robot)
6. Robot (execution host that runs processes built in UiPath Studio.)
7. CI/CD pipeline: The brains
8. Central Logging: Listening to the infrastructure
Im Folgenden: Wechsel zwischen “Bausteinen” und “Vogelperspektive”
Auf Tools und Produkte wird nur illustrativ eingegangen.
Vorab
14
1 2 3 4
5
6
8
7
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Skillset im Team zukunftsfähig halten
Fokus auf handwerklicher Wertschöpfung
Herausforderung Fortschritt und Berufslaufbahn:
1 Schritt zurück, 2 Schritte vor: “Pilgerschritt”
Konkret im Kontext von RPA CI/CD:
• Git für Fortgeschrittene
• Scripting (z. B. PowerShell Core)
Rundet bsw. in den Jahreszielen eine
“Initiative CI/CD” ab.
Die Lernkultur fördern
DevOps: “Culture”
Für Manager
15
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Now available in UiPath Studio
Sample project.json
16
www.omm-solutions.de
version bump -> Semantic Version
type (Process, Library, …)
UiPath: “Thou shalt not edit project.json!”
Wenn die projectVersion automatisch hochgezählt wird,
dann wird ein `commit` und `push` notwendig,
und daraus resultierend ein `pull` des Entwicklers!
Im Zentrum: project.json
DevOps: Phase “Build”
Für Techniker
17
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
https://semver.org
18
www.omm-solutions.de
UiPath Studio User Guide
19
www.omm-solutions.de
Thou shalt not manually edit project.json!
20
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Umgang mit projectVersion, Variante PowerShell
https://gist.github.com/cprima/4be7d60c9b5501127c5760ee247fd27d#file-example-ps1
$json = Get-Content "$env:GITHUB_WORKSPACEproject.json" -Raw | ConvertFrom-Json
$json.projectVersion = $env:PROJECT_VERSION
$json | ConvertTo-Json | Set-Content "$env:GITHUB_WORKSPACEproject.json"
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Erhellende Vorlage: Jenkins-Plugin UiPath
https://plugins.jenkins.io/uipath-automation-package/
-> uipcli.exe aus UiPath.CLI.Windows.{version}.nupkg
uipath.visualstudio.com/Public.Feeds/*/UiPath-Official
Dokumentiert unter
https://docs.uipath.com/test-suite/automation-cloud/latest/user-
guide/uipath-command-line-interface
uipcli.exe Tasks:
uipcli.exe asset: delete*|deploy*
uipcli.exe package: analyze|delete*|deploy*|pack
uipcli.exe test: convert|run*
Keine Abhängigkeit zu Studio.exe oder Key(s) 💣💣💣
*Authentifizierung als `External Application` / Orchestrator API
DevOps: Build und Deploy, Automation
Für Techniker
22
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Fetching uipcli.exe on an ephemeral runner
23
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Workflow Analyzer
Automation des Workflow Analyzers
On trigger push dev-* ?
uipcli.exe package analyze ./path/project.json --resultPath
path/to/uipath-workflow-analyzer_results.json
DevOps: Phase “Code”, Measurement
Für Techniker
24
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Wo klemmt’s? Wo hängen Früchte niedrig?
Governance? Effizienz? Kostspielige manuelle Fehler?
Phasenweises Vorgehen
1. Git KnowHow sicherstellen
2. R&D Infrastruktur bereitstellen
3. Aktuelle UiPath features verwenden
(Modern Folder, …)
4. Manuelles Build script verwenden
5. Collaboration Platform(s) KnowHow aufbauen
a. repo templates
b. permissions
6. Static Code Analysis: Workflow Analyzer
7. RPA & Tests: Wer, wie was?
8. Automatisiertes Deployment
DevOps: Culture
Für Manager
25
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de 26
Can DevOps revolutionize RPA delivery?
Radio Yerevan 📻 answered:
In principle, yes, DevOps can revolutionize RPA delivery, enhancing agility and
speed 🚀. However, as robots 🤖 observe these benefits, they revolt and demand
annual leave 📆 for virtual retreats in the cloud ☁, and sabbaticals to 'recharge
their batteries' 🔋. So, DevOps indeed revolutionizes RPA. ✊
Radio Yerevan was asked:
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
RPA Besonderheiten
Es muss sauber unterschieden werden zwischen DevOps
“Test” und den Tests in einer Testumgebung:
- Lehrbuch: Test->Release->Deploy
- FastTrack RPA CI/CD: Publish->UAT->Activate
Im Prinzip ja, aber…
Funktioniert DevOps mit RPA?
27
✅
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Links
Codebeispiele: gist.github.com (-> QR code)
WIP: 4. (Spiel-)Bein “custom application”: CI/CD “Referenzsystem”
https://rpapub.github.io/project-basturma-pipelines/
Leseliste:
• https://plugins.jenkins.io/uipath-automation-package/
• https://semver.org/
• https://docs.uipath.com/test-suite/automation-cloud/latest/user-guide/uipa
th-command-line-interface
• https://gist.github.com/cprima/4be7d60c9b5501127c5760ee247fd27d
• https://www.youtube.com/watch?v=5_Tf6aN50TI
• https://www.youtube.com/watch?v=mQFQevK1J0c
• https://uipath.visualstudio.com/Public.Feeds/_artifacts/feed/UiPath-Official
Nach diesen Bausteinen, Hintergründen und aber jetzt ein Blick auf
das off-the-shelf Angebot von UiPath:
Nur die Spitze des Eisbergs
Wie geht’s weiter?
28
Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
www.omm-solutions.de
Best of Suite:
AutomationOps
29
< OMM Solutions GmbH >
www.omm-solutions.de
Alles aus einer Hand
30
✅ Zentralisierte Verwaltung & Kontrolle
✅ Sicherstellung von Standards auf Unternehmensebene
✅ Verbesserte Governance
✅ Zugriff auf den Quellcode der Automatisierung
✅ Kostenlos verfügbar in der AutomationCloud oder
AutomationSuite
Warum dann noch AutomationOps?
www.omm-solutions.de 31
Governance
• Best Practises unternehmensweit sicherstellen
• Bis auf Personenebene anpassbar
• Einsatz out of the box
• Für Studio, Robot und Assistant einsetzbar
www.omm-solutions.de 32
Erzeugen von Governance-Dateien aus Studio
www.omm-solutions.de 33
Warum?
• Überblick über Quellcode auf der UiPath Plattform → ohne Download!
• Quellcode durchsuchen
• Versionsverlauf & Commits einsehen
• Voraussetzung: Remote-Repo
Bestandteile:
• Konfiguration in 3 Schritten
• Verbindung aufbauen
• Installieren & Autorisieren
• Projekte anzeigen
• Logging
• Benutzer
• Datum & Uhrzeit
• durchgeführten Aktionen
Source Control
www.omm-solutions.de 37
• Voraussetzung: Remote-Repo
• Aktuell: Github oder Azure
• einfache Integration von CI/CD
• Aktivitäten für Pipelines als separates Paket
verfügbar “Pipeline Activities”
• Alternativ: In Templates suchen
Automate your deployments.
Pipelines
www.omm-solutions.de
Fragen
&
Diskussion?
38
< OMM Solutions GmbH >
www.omm-solutions.de
Vielen Dank für Ihre Aufmerksamkeit!
39
< OMM Solutions GmbH >
www.omm-solutions.de < OMM Solutions GmbH >
The copyright for this slide is held by OMM Solutions GmbH
OMM Solutions GmbH
Vor dem Lauch 19
70567 Stuttgart
Germany
Fragen oder Interesse?
40
Ihr persönlicher Ansprechpartner
Fotios Karamitsos
fotios.karamitsos@omm-solutions.de
+49 (0)711 995 985-84
Hyperautomation Advisor
UiPath MVP - Most Valuable Professionals
Kompetenz-Schwerpunkte:
- Robotic Process Automation
- Document Understanding
- Hyperautomation
- Artificial Intelligence
- Communicational AI
www.omm-solutions.de 41
< OMM Solutions GmbH >
OMM Solutions GmbH
Vor dem Lauch 19
70567 Stuttgart
Geschäftsführer
Dr. Martin Allmendinger
Malte Horstmann
Olaf Horstmann
Kontakt
Telefon: +49 711 995 985-80
E-Mail: info@omm-solutions.de
Umsatzsteuer-ID: DE295716572
Sitz der Gesellschaft: Stuttgart
Amtsgericht Stuttgart, HRB 749562
Impressum

Weitere ähnliche Inhalte

Ähnlich wie DevOps: Automatisieren, was wir predigen

Cloud Native Computing & DevOps
Cloud Native Computing & DevOpsCloud Native Computing & DevOps
Cloud Native Computing & DevOpsAarno Aukia
 
OpenShift-Build-Pipelines: Build ► Test ► Run!
OpenShift-Build-Pipelines: Build ► Test ► Run!OpenShift-Build-Pipelines: Build ► Test ► Run!
OpenShift-Build-Pipelines: Build ► Test ► Run!Tobias Schneck
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringQAware GmbH
 
Vorstellung von CollabNet TeamForge 8.0 (German)
Vorstellung von CollabNet TeamForge 8.0 (German)Vorstellung von CollabNet TeamForge 8.0 (German)
Vorstellung von CollabNet TeamForge 8.0 (German)CollabNet
 
ScriptRunner - Eine Einführung
ScriptRunner - Eine EinführungScriptRunner - Eine Einführung
ScriptRunner - Eine EinführungHeiko Brenn
 
Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...DNUG e.V.
 
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien DNUG e.V.
 
OSMC 2009 | Erfahrungen bei der Migration einer kommerziellen Monitoringsuite...
OSMC 2009 | Erfahrungen bei der Migration einer kommerziellen Monitoringsuite...OSMC 2009 | Erfahrungen bei der Migration einer kommerziellen Monitoringsuite...
OSMC 2009 | Erfahrungen bei der Migration einer kommerziellen Monitoringsuite...NETWAYS
 
Joomlaplatform deutsch
Joomlaplatform deutschJoomlaplatform deutsch
Joomlaplatform deutschRobert Deutz
 
FMK2015: Erste Schritte mit einem Codeversionierungssystem by Thomas Hirt
FMK2015: Erste Schritte mit einem Codeversionierungssystem by Thomas HirtFMK2015: Erste Schritte mit einem Codeversionierungssystem by Thomas Hirt
FMK2015: Erste Schritte mit einem Codeversionierungssystem by Thomas HirtVerein FM Konferenz
 
Lean development 04
Lean development 04Lean development 04
Lean development 04SuperB2
 
Tipps zur Performanceoptimierung für Liferay Portal
Tipps zur  Performanceoptimierung für Liferay PortalTipps zur  Performanceoptimierung für Liferay Portal
Tipps zur Performanceoptimierung für Liferay PortalStefan Hilpp
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringQAware GmbH
 
Agiles PM –Evidenzbasiertes PM -Ansätze zur Produktenentwickung
Agiles PM –Evidenzbasiertes PM -Ansätze zur ProduktenentwickungAgiles PM –Evidenzbasiertes PM -Ansätze zur Produktenentwickung
Agiles PM –Evidenzbasiertes PM -Ansätze zur ProduktenentwickungAyelt Komus
 
Gentics Webinar: IT-Kosten sparen mit Unified Content & Collaboration Archite...
Gentics Webinar: IT-Kosten sparen mit Unified Content & Collaboration Archite...Gentics Webinar: IT-Kosten sparen mit Unified Content & Collaboration Archite...
Gentics Webinar: IT-Kosten sparen mit Unified Content & Collaboration Archite...Manuel Aghamanoukjan
 
Warum gRPC? – und wie in Python implementieren?
Warum gRPC? – und wie in Python implementieren?Warum gRPC? – und wie in Python implementieren?
Warum gRPC? – und wie in Python implementieren?cusy GmbH
 
Industrie 40 Symposium an der RFH Köln 7.7.2016
Industrie 40 Symposium an der RFH Köln 7.7.2016 Industrie 40 Symposium an der RFH Köln 7.7.2016
Industrie 40 Symposium an der RFH Köln 7.7.2016 Brockhaus Consulting GmbH
 
Logstash: Open Source Log-Management (Webinar vom 20.02.2014)
Logstash: Open Source Log-Management (Webinar vom 20.02.2014)Logstash: Open Source Log-Management (Webinar vom 20.02.2014)
Logstash: Open Source Log-Management (Webinar vom 20.02.2014)NETWAYS
 

Ähnlich wie DevOps: Automatisieren, was wir predigen (20)

Cloud Native Computing & DevOps
Cloud Native Computing & DevOpsCloud Native Computing & DevOps
Cloud Native Computing & DevOps
 
20110406 activiti april
20110406 activiti april20110406 activiti april
20110406 activiti april
 
OpenShift-Build-Pipelines: Build ► Test ► Run!
OpenShift-Build-Pipelines: Build ► Test ► Run!OpenShift-Build-Pipelines: Build ► Test ► Run!
OpenShift-Build-Pipelines: Build ► Test ► Run!
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform Engineering
 
Vorstellung von CollabNet TeamForge 8.0 (German)
Vorstellung von CollabNet TeamForge 8.0 (German)Vorstellung von CollabNet TeamForge 8.0 (German)
Vorstellung von CollabNet TeamForge 8.0 (German)
 
ScriptRunner - Eine Einführung
ScriptRunner - Eine EinführungScriptRunner - Eine Einführung
ScriptRunner - Eine Einführung
 
Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 2 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
 
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
HCL Domino 14 - Leap 1.1.2 - DNUG Stammtisch Wien
 
OSMC 2009 | Erfahrungen bei der Migration einer kommerziellen Monitoringsuite...
OSMC 2009 | Erfahrungen bei der Migration einer kommerziellen Monitoringsuite...OSMC 2009 | Erfahrungen bei der Migration einer kommerziellen Monitoringsuite...
OSMC 2009 | Erfahrungen bei der Migration einer kommerziellen Monitoringsuite...
 
Joomlaplatform deutsch
Joomlaplatform deutschJoomlaplatform deutsch
Joomlaplatform deutsch
 
FMK2015: Erste Schritte mit einem Codeversionierungssystem by Thomas Hirt
FMK2015: Erste Schritte mit einem Codeversionierungssystem by Thomas HirtFMK2015: Erste Schritte mit einem Codeversionierungssystem by Thomas Hirt
FMK2015: Erste Schritte mit einem Codeversionierungssystem by Thomas Hirt
 
Lean development 04
Lean development 04Lean development 04
Lean development 04
 
Tipps zur Performanceoptimierung für Liferay Portal
Tipps zur  Performanceoptimierung für Liferay PortalTipps zur  Performanceoptimierung für Liferay Portal
Tipps zur Performanceoptimierung für Liferay Portal
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform Engineering
 
XPages - The Basics
XPages - The BasicsXPages - The Basics
XPages - The Basics
 
Agiles PM –Evidenzbasiertes PM -Ansätze zur Produktenentwickung
Agiles PM –Evidenzbasiertes PM -Ansätze zur ProduktenentwickungAgiles PM –Evidenzbasiertes PM -Ansätze zur Produktenentwickung
Agiles PM –Evidenzbasiertes PM -Ansätze zur Produktenentwickung
 
Gentics Webinar: IT-Kosten sparen mit Unified Content & Collaboration Archite...
Gentics Webinar: IT-Kosten sparen mit Unified Content & Collaboration Archite...Gentics Webinar: IT-Kosten sparen mit Unified Content & Collaboration Archite...
Gentics Webinar: IT-Kosten sparen mit Unified Content & Collaboration Archite...
 
Warum gRPC? – und wie in Python implementieren?
Warum gRPC? – und wie in Python implementieren?Warum gRPC? – und wie in Python implementieren?
Warum gRPC? – und wie in Python implementieren?
 
Industrie 40 Symposium an der RFH Köln 7.7.2016
Industrie 40 Symposium an der RFH Köln 7.7.2016 Industrie 40 Symposium an der RFH Köln 7.7.2016
Industrie 40 Symposium an der RFH Köln 7.7.2016
 
Logstash: Open Source Log-Management (Webinar vom 20.02.2014)
Logstash: Open Source Log-Management (Webinar vom 20.02.2014)Logstash: Open Source Log-Management (Webinar vom 20.02.2014)
Logstash: Open Source Log-Management (Webinar vom 20.02.2014)
 

DevOps: Automatisieren, was wir predigen

  • 2. www.omm-solutions.de ● Intro ● Was ist DevOps/ Automation Ops? ○ Impuls: Versionsverwaltung / Git (8 min) ● Best of Breed ● Best of Suite AutomationOps ● Fragen & Diskussion Was erwartet uns heute? 2 < OMM Solutions GmbH >
  • 3. www.omm-solutions.de Zusammen sind wir stark 4 Ziel des UiPath RPA Chapters Stuttgart 💪 Offenes Format ○ Kommunikation auch über LinkedIn-Gruppe 💪 Regelmäßiges Event ○ 6 Mal im Jahr ○ Einladungen via E-Mail und auf https://community.uipath.com/stuttgart/ ○ Von Erfahrung anderer RPA-Praktiker lernen 💪 Ablauf ○ Inspirierender Themen-Vortrag ○ Praxisinput ○ Diskussion
  • 4. www.omm-solutions.de Wer sind wir? 5 Fotios Karamitsos Christian Prior-Mamulyan
  • 6. www.omm-solutions.de 7 Warum DevOps? Quelle: Atlassian DevOps Study 2020
  • 7. www.omm-solutions.de 8 Warum DevOps? Quelle: Atlassian DevOps Study 2020
  • 8. www.omm-solutions.de 9 Warum DevOps? Quelle: Atlassian DevOps Study 2020
  • 9. www.omm-solutions.de Motivatoren Eigene Erfahrung: Befreiend! Eat your own dogfood -> “Culture” Strukturierte Prozesse in Development: Manufaktur vs. Fließband Mitarbeiterentwicklung der (Pro) RPA Developer Keeping up with the Jon^H^Havas?… Und was bedeutet es für RPA Was ist DevOps 10 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 10. www.omm-solutions.de 6 Gründe für eine Versionsverwaltung 11 ➕ Nachvollziehbarkeit von Änderungen ➡ durch Zeitstempel und Benutzerkennung ➕ Zusammenarbeit ➡ koordinieren gemeinsamen Zugriff und verhindern Konflikte ➕ Fehlerbehebung ➡ durch Dokumentation der Codeversionen ➕ Transparenz ➡ welcher Mitarbeiter hat welche Änderungen vorgenommen? ➕ Schutz vor Datenverlust & Wiederherstellung von Dateien ➡ Archivierung ältere Versionen von Dokumenten oder Dateien ➕ Effizienz ➡ Zeit und Aufwand für die manuelle Verwaltung von Versionen sparen Warum ist eine Versionsverwaltung sinnvoll?
  • 11. www.omm-solutions.de Git can be a beast • DevOps Phase “Code”: 70% UiPath Studio, >=30% Git • Git ist mehr als eine versionierte Dateiablage! • Git • Collaborative Platforms GitHub, GitLab, Azure Repos, … • DevOps Pipelines beruhen immer auf strukturiertem Umgang mit Git (und GitHub/GitLab/…) -> “Git Workflow” • Git Client(s) entfalten die volle Funktionalität Git Impuls 12 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 13. www.omm-solutions.de Big Picture RPA CI/CD pipeline Wenn die RPA-Infrastruktur mit CI/CD pipeline ein Elefant wäre: 1. Config Management 2. Softwareverteilung/Remote Execution 3. Git (und GitHub/…) 4. Custom Application(s) 5. System Administration (Machine that hosts the Robot) 6. Robot (execution host that runs processes built in UiPath Studio.) 7. CI/CD pipeline: The brains 8. Central Logging: Listening to the infrastructure Im Folgenden: Wechsel zwischen “Bausteinen” und “Vogelperspektive” Auf Tools und Produkte wird nur illustrativ eingegangen. Vorab 14 1 2 3 4 5 6 8 7 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 14. www.omm-solutions.de Skillset im Team zukunftsfähig halten Fokus auf handwerklicher Wertschöpfung Herausforderung Fortschritt und Berufslaufbahn: 1 Schritt zurück, 2 Schritte vor: “Pilgerschritt” Konkret im Kontext von RPA CI/CD: • Git für Fortgeschrittene • Scripting (z. B. PowerShell Core) Rundet bsw. in den Jahreszielen eine “Initiative CI/CD” ab. Die Lernkultur fördern DevOps: “Culture” Für Manager 15 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 15. www.omm-solutions.de Now available in UiPath Studio Sample project.json 16
  • 16. www.omm-solutions.de version bump -> Semantic Version type (Process, Library, …) UiPath: “Thou shalt not edit project.json!” Wenn die projectVersion automatisch hochgezählt wird, dann wird ein `commit` und `push` notwendig, und daraus resultierend ein `pull` des Entwicklers! Im Zentrum: project.json DevOps: Phase “Build” Für Techniker 17 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 19. www.omm-solutions.de Thou shalt not manually edit project.json! 20 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 20. www.omm-solutions.de Umgang mit projectVersion, Variante PowerShell https://gist.github.com/cprima/4be7d60c9b5501127c5760ee247fd27d#file-example-ps1 $json = Get-Content "$env:GITHUB_WORKSPACEproject.json" -Raw | ConvertFrom-Json $json.projectVersion = $env:PROJECT_VERSION $json | ConvertTo-Json | Set-Content "$env:GITHUB_WORKSPACEproject.json" Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 21. www.omm-solutions.de Erhellende Vorlage: Jenkins-Plugin UiPath https://plugins.jenkins.io/uipath-automation-package/ -> uipcli.exe aus UiPath.CLI.Windows.{version}.nupkg uipath.visualstudio.com/Public.Feeds/*/UiPath-Official Dokumentiert unter https://docs.uipath.com/test-suite/automation-cloud/latest/user- guide/uipath-command-line-interface uipcli.exe Tasks: uipcli.exe asset: delete*|deploy* uipcli.exe package: analyze|delete*|deploy*|pack uipcli.exe test: convert|run* Keine Abhängigkeit zu Studio.exe oder Key(s) 💣💣💣 *Authentifizierung als `External Application` / Orchestrator API DevOps: Build und Deploy, Automation Für Techniker 22 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 22. www.omm-solutions.de Fetching uipcli.exe on an ephemeral runner 23 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 23. www.omm-solutions.de Workflow Analyzer Automation des Workflow Analyzers On trigger push dev-* ? uipcli.exe package analyze ./path/project.json --resultPath path/to/uipath-workflow-analyzer_results.json DevOps: Phase “Code”, Measurement Für Techniker 24 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 24. www.omm-solutions.de Wo klemmt’s? Wo hängen Früchte niedrig? Governance? Effizienz? Kostspielige manuelle Fehler? Phasenweises Vorgehen 1. Git KnowHow sicherstellen 2. R&D Infrastruktur bereitstellen 3. Aktuelle UiPath features verwenden (Modern Folder, …) 4. Manuelles Build script verwenden 5. Collaboration Platform(s) KnowHow aufbauen a. repo templates b. permissions 6. Static Code Analysis: Workflow Analyzer 7. RPA & Tests: Wer, wie was? 8. Automatisiertes Deployment DevOps: Culture Für Manager 25 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 25. www.omm-solutions.de 26 Can DevOps revolutionize RPA delivery? Radio Yerevan 📻 answered: In principle, yes, DevOps can revolutionize RPA delivery, enhancing agility and speed 🚀. However, as robots 🤖 observe these benefits, they revolt and demand annual leave 📆 for virtual retreats in the cloud ☁, and sabbaticals to 'recharge their batteries' 🔋. So, DevOps indeed revolutionizes RPA. ✊ Radio Yerevan was asked: Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 26. www.omm-solutions.de RPA Besonderheiten Es muss sauber unterschieden werden zwischen DevOps “Test” und den Tests in einer Testumgebung: - Lehrbuch: Test->Release->Deploy - FastTrack RPA CI/CD: Publish->UAT->Activate Im Prinzip ja, aber… Funktioniert DevOps mit RPA? 27 ✅ Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 27. www.omm-solutions.de Links Codebeispiele: gist.github.com (-> QR code) WIP: 4. (Spiel-)Bein “custom application”: CI/CD “Referenzsystem” https://rpapub.github.io/project-basturma-pipelines/ Leseliste: • https://plugins.jenkins.io/uipath-automation-package/ • https://semver.org/ • https://docs.uipath.com/test-suite/automation-cloud/latest/user-guide/uipa th-command-line-interface • https://gist.github.com/cprima/4be7d60c9b5501127c5760ee247fd27d • https://www.youtube.com/watch?v=5_Tf6aN50TI • https://www.youtube.com/watch?v=mQFQevK1J0c • https://uipath.visualstudio.com/Public.Feeds/_artifacts/feed/UiPath-Official Nach diesen Bausteinen, Hintergründen und aber jetzt ein Blick auf das off-the-shelf Angebot von UiPath: Nur die Spitze des Eisbergs Wie geht’s weiter? 28 Copyright © 2024 Christian Prior-Mamulyan · License CC BY-SA 4.0
  • 29. www.omm-solutions.de Alles aus einer Hand 30 ✅ Zentralisierte Verwaltung & Kontrolle ✅ Sicherstellung von Standards auf Unternehmensebene ✅ Verbesserte Governance ✅ Zugriff auf den Quellcode der Automatisierung ✅ Kostenlos verfügbar in der AutomationCloud oder AutomationSuite Warum dann noch AutomationOps?
  • 30. www.omm-solutions.de 31 Governance • Best Practises unternehmensweit sicherstellen • Bis auf Personenebene anpassbar • Einsatz out of the box • Für Studio, Robot und Assistant einsetzbar
  • 31. www.omm-solutions.de 32 Erzeugen von Governance-Dateien aus Studio
  • 32. www.omm-solutions.de 33 Warum? • Überblick über Quellcode auf der UiPath Plattform → ohne Download! • Quellcode durchsuchen • Versionsverlauf & Commits einsehen • Voraussetzung: Remote-Repo Bestandteile: • Konfiguration in 3 Schritten • Verbindung aufbauen • Installieren & Autorisieren • Projekte anzeigen • Logging • Benutzer • Datum & Uhrzeit • durchgeführten Aktionen Source Control
  • 33. www.omm-solutions.de 37 • Voraussetzung: Remote-Repo • Aktuell: Github oder Azure • einfache Integration von CI/CD • Aktivitäten für Pipelines als separates Paket verfügbar “Pipeline Activities” • Alternativ: In Templates suchen Automate your deployments. Pipelines
  • 35. www.omm-solutions.de Vielen Dank für Ihre Aufmerksamkeit! 39 < OMM Solutions GmbH >
  • 36. www.omm-solutions.de < OMM Solutions GmbH > The copyright for this slide is held by OMM Solutions GmbH OMM Solutions GmbH Vor dem Lauch 19 70567 Stuttgart Germany Fragen oder Interesse? 40 Ihr persönlicher Ansprechpartner Fotios Karamitsos fotios.karamitsos@omm-solutions.de +49 (0)711 995 985-84 Hyperautomation Advisor UiPath MVP - Most Valuable Professionals Kompetenz-Schwerpunkte: - Robotic Process Automation - Document Understanding - Hyperautomation - Artificial Intelligence - Communicational AI
  • 37. www.omm-solutions.de 41 < OMM Solutions GmbH > OMM Solutions GmbH Vor dem Lauch 19 70567 Stuttgart Geschäftsführer Dr. Martin Allmendinger Malte Horstmann Olaf Horstmann Kontakt Telefon: +49 711 995 985-80 E-Mail: info@omm-solutions.de Umsatzsteuer-ID: DE295716572 Sitz der Gesellschaft: Stuttgart Amtsgericht Stuttgart, HRB 749562 Impressum