DevOps Fundamentals



Section 5: Taking DevOps Further

Chapter 13: Reducing Deployment Downtime
Chapter 14: DevOps for Open Source Projects
Chapter 15: DevOps Best Practices
Chapter 12: Security in the DevOps Process with DevSecOps 345
Technical requirements 346
Testing Azure infrastructure compliance with Chef InSpec 347
Overview of InSpec 348
Installing InSpec 348
Configuring Azure for InSpec 350
Writing InSpec tests 351
Creating an InSpec profile file 352
Writing compliance InSpec tests 353
Executing InSpec 354
Using the Secure DevOps Kit for Azure 357
Installing the Azure DevOps Security Kit 357
Checking the Azure security using AzSK 358
Integrating AzSK in Azure Pipelines 361
Preserving data with HashiCorp's Vault 365
Installing Vault locally 366
Starting the Vault server 368
Writing secrets in Vault 370
Reading secrets in Vault 371
Using the Vault UI web interface 373
Getting Vault secrets in Terraform 376
Summary 380
Questions 381
Further reading 381


Chapter 13: Reducing Deployment Downtime 382
Technical requirements 383
Reducing deployment downtime with Terraform 383
Understanding blue-green deployment concepts and patterns 386
Using blue-green deployment to improve the production environment 387
Understanding the canary release pattern 387
Exploring the dark launch pattern 388
Applying blue-green deployments on Azure 389
Using App Service with slots 389
Using Azure Traffic Manager 391
Introducing feature flags 393
Using an open source framework for feature flags 395
Using the LaunchDarkly solution 400
Summary 405
Questions 405
Further reading 405


Chapter 14: DevOps for Open Source Projects 407
Table of Contents
[ viii ]
Technical requirements 408
Storing the source code in GitHub 409
Creating a new repository on GitHub 409
Contributing to the GitHub project 411
Contributing using pull requests 413
Managing the changelog and release notes 417
Sharing binaries in GitHub releases 419
Using Travis CI for continuous integration 423
Getting started with GitHub Actions 426
Analyzing code with SonarCloud 430
Detecting security vulnerabilities with WhiteSource Bolt 434
Summary 439
Questions 439
Further reading 440



Chapter 15: DevOps Best Practices 441
Automating everything 442
Choosing the right tool 442
Writing all your configuration in code 443
Designing the system architecture 444
Building a good CI/CD pipeline 446
Integrating tests 447
Applying security with DevSecOps 448
Monitoring your system 448
Evolving project management 449
Summary 451
Questions 451
Further reading 451
Assessments 453
Other Books You May Enjoy 459
Index



Eninam BAGNABANA     |         |     bagnadavid@outlook.fr     |