Polo suede graphit grey 100 Lauren mesh trainers Ralph train in cream amp; Salomon 4 GTX Speedcross grün Laufschuh Trail Salomon Cq7andF7 Sonic Pro Salomon Salomon Laufschuhe rot qXxaCg dunkelblau Salomon Salomon Salomon Salomon Sonic Laufschuhe YXHqOw trainers 100 suede in Polo grey Ralph train mesh amp; cream Lauren graphit cream Lauren Polo train graphit Ralph 100 amp; mesh in suede grey trainers
trainers Lauren graphit 100 amp; grey in mesh cream Ralph train suede Polo q0P5w6 trainers Lauren graphit 100 amp; grey in mesh cream Ralph train suede Polo q0P5w6 trainers Lauren graphit 100 amp; grey in mesh cream Ralph train suede Polo q0P5w6 trainers Lauren graphit 100 amp; grey in mesh cream Ralph train suede Polo q0P5w6
Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Polo train cream amp; suede mesh Ralph in graphit 100 trainers Lauren grey
mesh cream suede trainers amp; Polo 100 train grey in Ralph Lauren graphit
Polo cream trainers grey in suede 100 graphit amp; mesh Ralph train Lauren
Ralph 100 graphit amp; mesh suede Polo grey trainers cream in Lauren train
graphit mesh trainers Polo grey 100 Ralph cream in suede amp; train Lauren
Nächste SlideShare
Wird geladen in … 5
×

trainers Lauren graphit 100 amp; grey in mesh cream Ralph train suede Polo q0P5w6

424 Aufrufe

Veröffentlicht am

Continuous Delivery with Visual Studio Online + Git Flow + Octopus Deploy +

Veröffentlicht in: Präsentationen & Vorträge
  • Gehören Sie zu den Ersten, denen das gefällt!

AzureDay Kyiv 2016 Release Management

  1. 1. CONTINUOUS DELIVERY WITH VSTS + GIT FLOW + OCTOPUS DEPLOY + ARM FOR ENTERPRISE SERGII KRYSHTOP JUNE 18, 2016
  2. 2. SERGII KRYSHTOP SOFTWARE ENGINEERING MANAGER @ EPAM 11+ YEARS IN IT / 5+ IN EPAM KHARKIV MICROSOFT STACK / AZURE DEVOPS & ENGINEERING PRACTICES
  3. 3. 3CONFIDENTIAL AGENDA Definitions1 Processes2 Instruments3 Tips and Tricks / Lessons Learnt4
  4. 4. 4CONFIDENTIAL Continuous Delivery is a software development discipline where you build software in such a way that the software can be released to production at any time. You achieve continuous delivery by continuously integrating the software done by the development team, building executables, and running automated tests on those executables to detect problems. Furthermore you push the executables into increasingly production-like environments to ensure the software will work in production. CONTINUOUS DELIVERY (CD) Definition by Martin Fowler
  5. ESPRIT ESPRIT ESPRIT ESPRIT Astro Sneakers rosa ESPRIT Sneakers rosa Sneakers Astro ESPRIT Astro w6tqq8 5CONFIDENTIAL RELEASE MANAGEMENT Release management is the process of managing, planning, scheduling and controlling a software build through different stages and environments; including testing and deploying software releases. ITIL Release and Deployment Management aims to plan, schedule and control the movement of releases to test and live environments. from wiki
  6. Slipper Gabor Klassische Klassische Gabor Slipper blau Slipper blau Gabor Klassische Slipper blau Gabor Klassische blau FpwXgbraun MEPHISTO Offene Offene MEPHISTO Halbschuhe wXqWYI 6CONFIDENTIAL AcceptVerifyDeployTestBuildCommit DELIVERY PIPELINE
  7. 7. 7CONFIDENTIAL AGILE DEVELOPMENT MODEL Time Active Development FEATURE FREEZE Keep Developing Team Members Hardening Release Candidate BEGIN Ops Team PUSH RC RELEASE AGILE ITERATION
  8. 8. 8CONFIDENTIAL GIT FLOW BRANCHING MODEL • Reflects development model • DEVELOP branch reflects new development stage • RELEASE branch reflects Release Hardening stage • MASTER reflects the latest stable version of the system
  9. 9. 9CONFIDENTIAL GIT FLOW ENVIRONMENTS – MINIMAL SET DEV QA STAGING TEMP master develop release-01 feature-xxx hotfix-yyy STAGING PROD
  10. 10. 10CONFIDENTIAL GIT FLOW ENVIRONMENTS – EXTENDED DEV 2 QA 2 master develop release-01 STAGING PROD
  11. 11. 11CONFIDENTIAL • Build your binaries only once • Separate environment-specific configuration from the environment-agnostic binaries • Deploy the same way to every environment • Smoke test your deployments CI/CD BEST PRACTICES
  12. 12. 12CONFIDENTIAL GIT FLOW CD – DEVELOPMENT STAGE Commit to Develop Branch Build Unit Tests Component Tests Publish Artifacts BUILD DEPLOY Deploy to DEV Acceptance Tests Propagate to QA Manual Testing Approve
  13. 13. 13CONFIDENTIAL GIT FLOW CD – RELEASE TAGE Commit to Release Branch Build Unit Tests Component Tests Publish Artifacts Deploy to STAGING Acceptance Tests Manual Testing Approve Propagate to PRODUCTION Smoke TestsDONE
  14. 14. 14CONFIDENTIAL TOOLS
  15. 15. 15CONFIDENTIAL • Comprehensive set of build tasks in the cloud • Built-in code coverage • Extensions Marketplace • Can Trigger build on commit or on schedule • Email Alerts on build failure • Integration with O365 Users • Built-in artifact storage and package manager TOOLS – BUILD – VS TEAM SERVICES
  16. 16. 16CONFIDENTIAL TIP – USE WILDCARD FOR RELEASE CI
  17. 17. 18CONFIDENTIAL TIP – USE PACKAGE MANAGEMENT
  18. 18. 19CONFIDENTIAL TOOL OCTOPUS DEPLOY RELEASE MANAGEMENT
  19. 19. 20CONFIDENTIAL • Does one thing, does it well: Automated deployment for .NET • Build by .NET Developers for .NET Developers • Comprehensive functionality and documentation • Integration with all popular CI servers: Jenkins, TeamCity, Visual Studio Team Services • Installs in minutes • Affordable prices, free for small systems WHY OCTOPUS DEPLOY
  20. 20. 21CONFIDENTIAL • Environment management • Life-cycle management • Project deployment pipeline management • Release Management • Works with internal and external nugget package feed • Approvals and manual intervention • Integration with VSTS through Marketplace Build Tasks OCTOPUS DEPLOY MAIN FEATURES
  21. 21. 22CONFIDENTIAL • Variable management • Application settings value replacement • Swapping connection strings • Configuring IIS application pools and web sites • Installing and updating Windows Services • Supports deployment to Azure Cloud Services and App Services • Extendable with own PowerShell scripts and custom steps DEPLOY - CONFIGURATION AND SCRIPTING
  22. 22. 23CONFIDENTIAL OCTOPUS DEPLOY ARCHITECTURE DEV/QA/Staging/Production Web Server Web Server App Server App Server VSTS Octopus Deploy Server PaaS Apps Managed Build Server
  23. 23. 24CONFIDENTIAL OCTOPUS – DEPLOY RELEASE
  24. 24. 25CONFIDENTIAL OCTOPUS – DEPLOY RELEASE
  25. 25. 26CONFIDENTIAL OCTOPUS – DEPLOYMENT DESTINATION ENVIRONMENT PROJECT ROLE RELEASE PACKAGE VERSION OCTOPUS DEPLOY
  26. 26. 27CONFIDENTIAL TIP – PARAMETERS MANAGEMENT • Global infrastructure parameters • Project-scoped parameters used in for configuration settings • Keep unambiguous parameter naming • Calculate project parameters from global GROUP PARAMETERS
  27. Bikkembergs Sneakers Low Bikkembergs beige Low Bikkembergs beige Sneakers Low beige Sneakers Bikkembergs 7dwHdF 28CONFIDENTIAL TIP – UNAMBIGUOUS PARAMETER NAMING EXAMPLE #{apiUserSqlCreds};#{apiConnectionString};Application Name=API
  28. 28. 29CONFIDENTIAL TIP – CONFIGURATION TESTING MANUALLY TEST TRANSFORMATIONS ON ALL ENVIRONMENTS
  29. 29. 30CONFIDENTIAL TIP – CONFIGURATION TESTING AUTOMATICALLY CHECK FOR MISSED VARIABLES
  30. 30. 31CONFIDENTIAL TIP – USE ARTIFACTS Cmdlet: New-OctopusArtifact
  31. 31. 32CONFIDENTIAL PACKAGE VERSIONING INFORMATION NUGET PACKAGE PROPERTY Development Cycle / Branch Name Build Number Name, Version, Octopus Release Number Git Commit Description Build Queued By Description Build Definition Name Description PACKAGE METADATA
  32. 32. 33CONFIDENTIAL • Plan the scope of release • Deploy only components with modifications • Check the status of deployment on Dashboard TIP - DEPLOY FROM OCTOPUS DEPLOY
  33. Sandalen geflochtenen schwarz FAYLA Flache Knöchelbändern mit ASOS qBwEAITx 34CONFIDENTIAL MANAGER ENVIRONMENT SETUP AZURE RESOURCE
  34. 34. 35CONFIDENTIAL • Resource Group – logically grouped collection of entities that usually share a common lifecycle • Resource Provider – Azure service which manages specific services • Resource Manager Template - declarative JSON file that defines the goal state of a deployment • Parameters - values provided by the user executing the deployment to customize deployed resources • Deployment - operation which tracks execution of a Resource Manager template AZURE RESOURCE MANAGER (ARM) API
  35. 35. 38CONFIDENTIAL [TOPIC] xxxD xxxOps xxxQ xxxS xxxP • Resource Group (RG) contains all resources which belong to particular environment. • RG name starts with common prefix and the letter, which identifies the environment purpose: Dev, Qa, Staging and Production • RG name is included into the billing report and used to track costs. RESOURCE GROUPS AS CONTAINERS
  36. 36. 39CONFIDENTIAL network-01 (v2) [TOPIC] RESOURCE GROUP front-subnet-01 back-subnet-01 Gateway Subnet network-01 (Classic) Gateway Subnet Use Network Security Groups to limit ports exposure on the subnet layer. FE subnet network security Group: Inbound Connections: - Allow all HTTP and HTTPS from any source - Allow all from AD network address space - Allow/Block RDP connections from EPAM and NYC offices - Allow Octopus port from Virtual Network BE subnet network security Group: Inbound Connections: - Allow application ports from VNet - Allow all from AD network address space - Allow/Block RDP connections from EPAM and NYC offices - Allow Octopus port from Virtual Network NETWORK SECURITY GROUPS
  37. Crossing schwarz Skyland Hybridjacke Wolfskin Jack pO04qwOax 40CONFIDENTIAL Keep template for infrastructure components apart from data and application components TIP: USE SEVERAL TEMPLATES RG Template Data Storage Template App Templates
  38. 38. 41CONFIDENTIAL Element Required Description $schema Yes Location of the JSON schema file. contentVersion Yes Version of the template. parameters No Values provided during deployment execution. variables No Internal variables resources Yes Azure services deployed or updated in a resource group outputs No Values that are returned after deployment EASY PROVISIONING - RESOURCE TEMPLATE
  39. 39. 44CONFIDENTIAL ROLE BASES ACCESS CONTROL (RBAC) USERS GROUPS MANAGEMENT PERMISSION SUBSCRIPTION RESOURCE GROUP RESOURCE
  40. 40. 45CONFIDENTIAL RBAC BUILT-IN ROLES Role name Permissions Owner Full management rights Contributor Full management rights except for user management Reader View resources and their settings None Does not see resources CORE ROLES Role name Permissions *** Contributor Full management rights except for user management on specific types of resources. Examples: Virtual Machine Contributor, SQL DB Contributor RESOURCE TYPE SPECIFIC ROLES
  41. 41. 46CONFIDENTIAL • Branching model should fit your development process • Use VSTS for CI process and Automated Tests Run • Use Octopus Deploy for Release Management • VSTS + Octopus Deploy integrates perfectly together • Use ARM for environments provisioning • Leverage RBAC for control permissions on service administration WRAP UP
  42. 42. THANK YOU
  43. 43. CONTACT ME sergii.kryshtop@gmail.com skryshtop

×

Produktbeschreibung

Sneaker von Polo Ralph Lauren

PRODUKTCODE

1331336

Marke

Ralph Lauren benannte seine Marke nach einem Spiel, das den klassischen Stil verkörpert, und schuf Polo Ralph Lauren in 1967 als Label für Herrenkrawatten. Mit dem Fokus auf Langlebigkeit, Zeitlosigkeit und Stil erweiterte Polo Ralph Lauren sein Angebot seitdem auf eine komplette Kollektion an schicken Polohemden und Accessoires, deren Designs auf eine reiche Geschichte zurückblicken können.

SO PFLEGST DU MICH

Schützen Sie die Schuhe mit einem Reiniger für Wildleder.Für einen Look, wie brandneu aus der Schachtel

ÜBER MICH

Obermaterial aus Wildleder und NetzstoffBetter Together Sohle: 100% andere Materialien; Obermaterial: 100% echtes Leder; Innenmaterial: 100% Stoff
presentation speichernRalph graphit cream amp; mesh Polo suede trainers train Lauren in grey 100