100% found this document useful (15 votes)
38 views

Get Azure DevOps for Web Developers: Streamlined Application Development Using Azure DevOps Features Ambily K K PDF ebook with Full Chapters Now

Features

Uploaded by

franzoilenis
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (15 votes)
38 views

Get Azure DevOps for Web Developers: Streamlined Application Development Using Azure DevOps Features Ambily K K PDF ebook with Full Chapters Now

Features

Uploaded by

franzoilenis
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 55

Experience Seamless Full Ebook Downloads for Every Genre at textbookfull.

com

Azure DevOps for Web Developers: Streamlined


Application Development Using Azure DevOps
Features Ambily K K

https://textbookfull.com/product/azure-devops-for-web-
developers-streamlined-application-development-using-azure-
devops-features-ambily-k-k/

OR CLICK BUTTON

DOWNLOAD NOW

Explore and download more ebook at https://textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

DevOps for Azure Applications: Deploy Web Applications on


Azure Suren Machiraju

https://textbookfull.com/product/devops-for-azure-applications-deploy-
web-applications-on-azure-suren-machiraju/

textboxfull.com

Implementing Devops with Microsoft Azure Mitesh Soni

https://textbookfull.com/product/implementing-devops-with-microsoft-
azure-mitesh-soni/

textboxfull.com

Hands-on Azure Pipelines: Understanding Continuous


Integration and Deployment in Azure DevOps 1st Edition
Chaminda Chandrasekara
https://textbookfull.com/product/hands-on-azure-pipelines-
understanding-continuous-integration-and-deployment-in-azure-
devops-1st-edition-chaminda-chandrasekara/
textboxfull.com

Agile Project Management with Azure DevOps: Concepts,


Templates, and Metrics 1st Edition Joachim Rossberg

https://textbookfull.com/product/agile-project-management-with-azure-
devops-concepts-templates-and-metrics-1st-edition-joachim-rossberg/

textboxfull.com
A Practical Guide to Azure DevOps: Learn by doing 3 /
2019-12-24 Edition Milindanath Hewage

https://textbookfull.com/product/a-practical-guide-to-azure-devops-
learn-by-doing-3-2019-12-24-edition-milindanath-hewage/

textboxfull.com

Demystifying Azure AI : Implementing the Right AI Features


for Your Business Kasam Shaikh

https://textbookfull.com/product/demystifying-azure-ai-implementing-
the-right-ai-features-for-your-business-kasam-shaikh/

textboxfull.com

DevOps for networking boost your organization's growth by


incorporating networking in the DevOps culture Armstrong

https://textbookfull.com/product/devops-for-networking-boost-your-
organizations-growth-by-incorporating-networking-in-the-devops-
culture-armstrong/
textboxfull.com

Beginning PowerShell for SharePoint 2016: A Guide for


Administrators, Developers, and DevOps Engineers 2nd
Edition Nikolas Charlebois-Laprade
https://textbookfull.com/product/beginning-powershell-for-
sharepoint-2016-a-guide-for-administrators-developers-and-devops-
engineers-2nd-edition-nikolas-charlebois-laprade/
textboxfull.com

Puppet 8 for DevOps Engineers David Sandilands

https://textbookfull.com/product/puppet-8-for-devops-engineers-david-
sandilands/

textboxfull.com
Azure DevOps
for Web
Developers
Streamlined Application Development
Using Azure DevOps Features

Ambily K K
Azure DevOps for
Web Developers
Streamlined Application Development
Using Azure DevOps Features

Ambily K K
Azure DevOps for Web Developers: Streamlined Application Development Using
Azure DevOps Features
Ambily K K
Hyderabad, India

ISBN-13 (pbk): 978-1-4842-6411-9 ISBN-13 (electronic): 978-1-4842-6412-6


https://doi.org/10.1007/978-1-4842-6412-6

Copyright © 2020 by Ambily K K


This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the
material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation,
broadcasting, reproduction on microfilms or in any other physical way, and transmission or information
storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now
known or hereafter developed.
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with
every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an
editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the
trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not
identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to
proprietary rights.
While the advice and information in this book are believed to be true and accurate at the date of publication,
neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or
omissions that may be made. The publisher makes no warranty, express or implied, with respect to the
material contained herein.
Managing Director, Apress Media LLC: Welmoed Spahr
Acquisitions Editor: Smriti Srivastava
Development Editor: Matthew Moodie
Coordinating Editor: Shrikant Vishwakarma
Cover designed by eStudioCalamar
Cover image designed by Pexels
Distributed to the book trade worldwide by Springer Science+Business Media LLC, 1 New York Plaza, Suite
4600, New York, NY 10004. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders-ny@springer-sbm.
com, or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner)
is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware
corporation.
For information on translations, please e-mail [email protected]; for reprint,
paperback, or audio rights, please e-mail [email protected].
Apress titles may be purchased in bulk for academic, corporate, or promotional use. eBook versions and
licenses are also available for most titles. For more information, reference our Print and eBook Bulk Sales
web page at www.apress.com/bulk-sales.
Any source code or other supplementary material referenced by the author in this book is available to
readers on GitHub via the book’s product page, located at www.apress.com/978-1-4842-6411-9. For more
detailed information, please visit www.apress.com/source-code.
Printed on acid-free paper
To Pranav & Pavitra,
my little mentors
Table of Contents
About the Author����������������������������������������������������������������������������������������������������� xi

About the Technical Reviewer������������������������������������������������������������������������������� xiii


Acknowledgments���������������������������������������������������������������������������������������������������xv

Introduction�����������������������������������������������������������������������������������������������������������xvii

Chapter 1: DevOps Basics and Variations����������������������������������������������������������������� 1


Software Development������������������������������������������������������������������������������������������������������������������ 1
DevOps������������������������������������������������������������������������������������������������������������������������������������������ 2
DevOps Team��������������������������������������������������������������������������������������������������������������������������� 3
DevOps Practices��������������������������������������������������������������������������������������������������������������������� 4
DevOps Variations�������������������������������������������������������������������������������������������������������������������� 4
Benefits����������������������������������������������������������������������������������������������������������������������������������� 9
Azure DevOps������������������������������������������������������������������������������������������������������������������������������ 10
Summary������������������������������������������������������������������������������������������������������������������������������������ 11

Chapter 2: Project Management Using Azure DevOps�������������������������������������������� 13


Organizations������������������������������������������������������������������������������������������������������������������������������ 14
Creating an Organization������������������������������������������������������������������������������������������������������� 15
Organization Settings������������������������������������������������������������������������������������������������������������ 15
Projects��������������������������������������������������������������������������������������������������������������������������������������� 29
Creating a Project������������������������������������������������������������������������������������������������������������������ 29
Project Settings��������������������������������������������������������������������������������������������������������������������� 32
Process Template Customization������������������������������������������������������������������������������������������������ 59
Starting the Customization���������������������������������������������������������������������������������������������������� 59
Adding a New Work Item������������������������������������������������������������������������������������������������������� 60
Summary������������������������������������������������������������������������������������������������������������������������������������ 63

v
Table of Contents

Chapter 3: Requirements Management Using Azure DevOps��������������������������������� 65


Work Items���������������������������������������������������������������������������������������������������������������������������������� 65
Work items���������������������������������������������������������������������������������������������������������������������������� 66
Filters������������������������������������������������������������������������������������������������������������������������������������ 81
View Options�������������������������������������������������������������������������������������������������������������������������� 82
Options���������������������������������������������������������������������������������������������������������������������������������� 82
Boards����������������������������������������������������������������������������������������������������������������������������������������� 85
Board Selection��������������������������������������������������������������������������������������������������������������������� 86
Analytics�������������������������������������������������������������������������������������������������������������������������������� 87
View Options�������������������������������������������������������������������������������������������������������������������������� 89
Board Settings����������������������������������������������������������������������������������������������������������������������� 89
Cards������������������������������������������������������������������������������������������������������������������������������������� 96
Backlogs������������������������������������������������������������������������������������������������������������������������������������� 99
Column Options������������������������������������������������������������������������������������������������������������������� 101
Options�������������������������������������������������������������������������������������������������������������������������������� 104
Sprints��������������������������������������������������������������������������������������������������������������������������������������� 108
Queries�������������������������������������������������������������������������������������������������������������������������������������� 115
New Query��������������������������������������������������������������������������������������������������������������������������� 117
Work Offline������������������������������������������������������������������������������������������������������������������������� 122
Summary���������������������������������������������������������������������������������������������������������������������������������� 124

Chapter 4: Version Control Using Azure DevOps��������������������������������������������������� 125


Repos���������������������������������������������������������������������������������������������������������������������������������������� 125
Branching and Merging������������������������������������������������������������������������������������������������������� 129
Project Repo������������������������������������������������������������������������������������������������������������������������ 131
Branch and Tags������������������������������������������������������������������������������������������������������������������ 133
Commits������������������������������������������������������������������������������������������������������������������������������������ 135
Pushes�������������������������������������������������������������������������������������������������������������������������������������� 137
Branches����������������������������������������������������������������������������������������������������������������������������������� 138
Tags������������������������������������������������������������������������������������������������������������������������������������������� 140
Pull Requests���������������������������������������������������������������������������������������������������������������������������� 140

vi
Table of Contents

Working with Visual Studio������������������������������������������������������������������������������������������������������� 145


Working with Visual Studio Code���������������������������������������������������������������������������������������������� 151
Working with Git Bash��������������������������������������������������������������������������������������������������������������� 153
Sample Application������������������������������������������������������������������������������������������������������������������� 154
Version Controlling an Angular App������������������������������������������������������������������������������������� 155
Version Controlling the .NET API������������������������������������������������������������������������������������������ 158
Summary���������������������������������������������������������������������������������������������������������������������������������� 158

Chapter 5: Test Management Using Azure DevOps����������������������������������������������� 159


Test Cases��������������������������������������������������������������������������������������������������������������������������������� 160
Shared Steps and Parameters�������������������������������������������������������������������������������������������������� 162
Test Suites�������������������������������������������������������������������������������������������������������������������������������� 164
Test Plans���������������������������������������������������������������������������������������������������������������������������������� 165
Define Tab���������������������������������������������������������������������������������������������������������������������������� 167
Execute Tab������������������������������������������������������������������������������������������������������������������������� 170
Chart������������������������������������������������������������������������������������������������������������������������������������ 180
Progress Report������������������������������������������������������������������������������������������������������������������������ 183
Parameters������������������������������������������������������������������������������������������������������������������������������� 183
Configurations��������������������������������������������������������������������������������������������������������������������������� 184
Runs������������������������������������������������������������������������������������������������������������������������������������������ 184
Load Test����������������������������������������������������������������������������������������������������������������������������������� 185
Summary���������������������������������������������������������������������������������������������������������������������������������� 186

Chapter 6: Build Automation and Release Management�������������������������������������� 187


Build and Release Process�������������������������������������������������������������������������������������������������������� 187
Continuous Integration�������������������������������������������������������������������������������������������������������� 187
Continuous Delivery and Continuous Deployment��������������������������������������������������������������� 189
Pipelines����������������������������������������������������������������������������������������������������������������������������������� 191
Creating a Pipeline�������������������������������������������������������������������������������������������������������������� 191
Classic Editor����������������������������������������������������������������������������������������������������������������������� 197
Environments���������������������������������������������������������������������������������������������������������������������������� 203

vii
Table of Contents

Releases����������������������������������������������������������������������������������������������������������������������������������� 204
Creating a Release Pipeline������������������������������������������������������������������������������������������������� 205
Library��������������������������������������������������������������������������������������������������������������������������������������� 215
Variable Groups������������������������������������������������������������������������������������������������������������������� 215
Secure Files������������������������������������������������������������������������������������������������������������������������� 216
Task Groups������������������������������������������������������������������������������������������������������������������������������ 217
Deployment Groups������������������������������������������������������������������������������������������������������������������� 220
Sample Build and Release Implementation������������������������������������������������������������������������������ 220
Build and Release of an Angular Application����������������������������������������������������������������������� 221
Build and Release of a .NET Application������������������������������������������������������������������������������ 224
Summary���������������������������������������������������������������������������������������������������������������������������������� 226

Chapter 7: Continuous Feedback and Other Features������������������������������������������ 227


Dashboards������������������������������������������������������������������������������������������������������������������������������� 227
Wiki������������������������������������������������������������������������������������������������������������������������������������������� 232
Publishing Code as a Wiki��������������������������������������������������������������������������������������������������� 232
Editing a Wiki����������������������������������������������������������������������������������������������������������������������� 234
Discussions or Comments��������������������������������������������������������������������������������������������������� 238
User Settings����������������������������������������������������������������������������������������������������������������������������� 239
Continuous Feedback���������������������������������������������������������������������������������������������������������������� 240
Azure Application Insights��������������������������������������������������������������������������������������������������� 240
Summary���������������������������������������������������������������������������������������������������������������������������������� 242

Chapter 8: DevOps Architecture Blueprints���������������������������������������������������������� 243


The DevOps Approach for Web Applications����������������������������������������������������������������������������� 243
Microservices���������������������������������������������������������������������������������������������������������������������� 244
The DevOps Approach for Databases���������������������������������������������������������������������������������������� 245
SQL Server database����������������������������������������������������������������������������������������������������������� 245
The DevOps Approach for Machine Learning Models��������������������������������������������������������������� 246
Machine Learning Operationalization���������������������������������������������������������������������������������� 248
Azure DevOps���������������������������������������������������������������������������������������������������������������������� 249

viii
Table of Contents

The DevOps Approach for COTS Applications���������������������������������������������������������������������������� 250


The DevOps Approach for the Support Team���������������������������������������������������������������������������� 251
Intelligent Swarming Support Model����������������������������������������������������������������������������������� 253
Summary���������������������������������������������������������������������������������������������������������������������������������� 255

Index��������������������������������������������������������������������������������������������������������������������� 257

ix
About the Author
For more than a dozen years Ambily has worked on cloud
adoption and accelerating software delivery through DevOps.
As the head of Azure, DevOps, and UI practices at TCS
HiTech Industry, she supports major public- and private-
sector companies across the globe in their cloud journeys
and DevOps implementations. Ambily blogs about her
experiences and speaks at conferences to share what she has
learned. You can find her blog at https://ambilykk.com/.

xi
About the Technical Reviewer
Swapneelkumar Deshpande is a software engineer. He is
a Microsoft Certified Professional and Microsoft Certified
Trainer. Swapneel has been working and leading teams in
various aspects of the software development life cycle for
more than 20 years.

xiii
Acknowledgments
Writing a book is harder than I thought and more rewarding than I could have ever
imagined. I’m grateful to my teachers, and I’ve been lucky enough to have a lot of great
teachers, but one in particular shaped the person I am today: Minu K K. My heartfelt
thanks to him for being an inspiration throughout my life.
I am grateful to my loving husband, Rajeev, for all his support and caring. To my little
children, Pranav and Pavitra: thank you for letting me spend time on writing.
A very special thanks to my mentor, Bala Peddigari, who inspired me to write articles
and books.
Finally, to all those who have been part of my getting there: Smriti Srivastava,
Matthew Moodie, Shrikant Vishwakarma, and Swapneelkumar Deshpande.

xv
Introduction
DevOps is one of the mandatory elements of the entire IT spectrum, which integrates
people, process, and technology with an objective of delivering value faster. At the same
time, DevOps comes in many varieties with varying levels of understanding, which
can be an obstacle for many implementations. In this book, we will explore the various
concepts of DevOps and take you on a DevOps journey using Azure DevOps. We’ll look
at the end-to-end process of DevOps implementation using Azure DevOps.
Specifically, the following are the topics covered:

• Project management including user and permission management

• Requirement management

• Version control management

• Test management

• Build automation and release management

• Test management

• Continuous feedback

Also, we will discuss the current IT landscape and how we can leverage the benefits
of DevOps in various areas such as support projects. Every concept will be covered from
different perspectives, including a novice view, a DevOps developer view, a DevOps
architect view, and a business view.
This book is intended for novices in DevOps who want to learn the concepts of
DevOps across a modern application spectrum. Also, it provides enough information for
DevOps engineers to fine-tune their skills in various aspects of DevOps.

xvii
CHAPTER 1

DevOps Basics
and Variations
Software development processes and the release requirements can change over time
in order to continue bringing value to customers and gaining market adoption. To
scale up and get some early feedback, many organizations have adopted a frequent
release methodology for new features or defect fixes. These releases are deployed to the
production system as often as once a week, and sometimes they are even once a day,
once an hour, or even every ten seconds. To maintain this edge in the market or gain this
quick feedback cycle, companies are adopting DevOps practices such as continuous
delivery and continuous deployment. In this chapter, you will get an introduction to
DevOps concepts and practices.

S
 oftware Development
The software development industry gradually adopted the agile model after many
years of following the waterfall model. The agile development model provides the
ability to adapt to changing requirements, and it offers better collaboration between
teams and improved productivity. In a waterfall model, application development is
done as a sequential operation, and the application is released at the end of the project.
Sometimes, though, the development process takes a long time to complete, and the
relevance of lot of features envisioned at the start may not be useful anymore. Moreover,
this approach lacks the end-user feedback loop, the expectations of the end user and any
feedback will be received only after the entire development/deployment is complete.
The agile process demands the release of finished features (production-ready) more
frequently to receive early feedback from customers and respond accordingly. Agile
without DevOps takes more cycle time and manual involvement. DevOps addresses the

1
© Ambily K K 2020
A. K K, Azure DevOps for Web Developers, https://doi.org/10.1007/978-1-4842-6412-6_1
Chapter 1 DevOps Basics and Variations

shortfalls in agile development and deployment practices using automated releases,


frequently with automated validations and gates in between. Figure 1-1 shows all three
models.

Figure 1-1. Software development models

D
 evOps
DevOps is one of the hottest topics in the IT field, but it has many different variations. If
ten people started discussing DevOps, they would have ten different explanations for it.
Here is a popular definition of DevOps from https://en.wikipedia.org/wiki/DevOps
shows the process angle of DevOps, in other words, how we can use the single process
across the development and operations teams:
DevOps is a software development methodology that combines software
development (Dev) with information technology operations (Ops).
The following definition from https://searchitoperations.techtarget.com/
definition/DevOps. DevOps is defined from a person’s perspective, specifying how the
team culture changes and enables more collaborative working environments.
DevOps is the blending of the terms development and operations, meant to
represent a collaborative or shared approach to the tasks performed by a
company's application development and IT operations teams.
In the following definition, defines DevOps from a technical perspective, where DevOps
is for automating end-to-end development processes (www.atlassian.com/devops):
DevOps is a set of practices that automates the processes between software
development and IT teams, in order that they can build, test, and release
software faster and more reliably.

2
Chapter 1 DevOps Basics and Variations

Considering the importance of DevOps in the IT industry and the fact that DevOps is
an integral part of software development, let’s discuss these different possibilities of what
it encompasses.
DevOps is a combination of cultural elements, practices, and tools for delivering
value at a higher velocity. DevOps consists of people, process, and technology.
Technology enables the automation of an end-to-end pipeline for delivery. Moreover,
using the proper tools increases a team’s collaboration. The agile process provides agility
in execution, collaboration between teams, management of end-to-end activities, and
an innovative team culture. DevOps culture means people are trained on multiple skills
to improve the breadth of understanding on the overall process, a proper handshake
between the teams, a single team mindset, and multiskilled team members.
As part of DevOps adoption, most companies start with or focus on the technology
and process implementation. Agile is the de facto development methodology for many
companies, and automation is the driving force for DevOps adoption. DevOps Culture
adoption is complex, and it requires that changes in organizational structure and that
people’s mindsets change.

D
 evOps Team
If DevOps is a mixture of development and operations, then what about the test
department and other stakeholders?
All the stakeholders have their own importance and roles in DevOps. The Dev in
DevOps includes the scrum masters, developers, testers, project managers, subject-­
matter experts (SMEs), business analysts, domain experts, security architects, solution
architects, performance engineers, and so on. The roles and responsibilities differ from
project to project based on the size, complexity, and business impact of the solution.
The Ops in DevOps includes the operational members such as the build engineers,
production support, monitoring, and so on.
Remember that the goal of DevOps is to deliver value to the customer, not to reduce
the cost or automate the process; these are the by-products of enabling proper DevOps
practices. Team structure plays a major role in driving the DevOps practice in an
organization. Based on various parameters, we can identify a matching team topology
for our project. Identify whether you are following an anti-type or a correct DevOps team
type by reading the article by Matthew Skelton https://web.devopstopologies.com/.

3
Chapter 1 DevOps Basics and Variations

DevOps Practices
DevOps involves different components to establish an end-to-end DevOps workflow.
These are some of the main practices:

• Requirement management: Establishing an end-to-end tractability,


quick view, validity, and usability priority on the status of each of the
requirements.

• Configuration management: Managing the configuration based on


the target environments, users, company policies, etc.

• Release management: Planning, scheduling and controlling the


releases, approvals, and other policies.

• Continuous integration: Merging the latest updates to remote


repositories and ensuring that the quality builds are passed.

• Continuous deployment: Deploying the code changes to higher


environments after ensuring the quality of the build through
automated quality gates.

• Infrastructure as a code: Provisioning the infrastructure as part of the


code deployment and controlling the configurations in script format.

• Test automation: Automating tests to ensure faster execution and


more coverage.

• Continuous monitoring: Systems to automatically monitor and act


on the result. This can include logging the bugs, doing corrective
actions, or sending notifications.

There are many more areas such as collaboration, knowledge management, identity/
access management, portfolio management, artifacts repositories, performance testing,
security test, backlog management, and so on.

DevOps Variations
DevOps is an integral part of software development. Most projects implement at least
the technical and process parts of DevOps, even though this may not result in the actual
benefits of DevOps. Culture changes really help you to realize the real benefit of DevOps.

4
Chapter 1 DevOps Basics and Variations

But, most of the time, we end up with limiting our DevOps scope to automation and cost
reduction instead of releasing value.
Currently, many variations of DevOps exist based on the implementation. Some of
the main variants are as follows:

• BizDevOps: DevOps with the involvement of the business view


throughout the process. Even though regular DevOps defines the
participation of the business stakeholders in DevOps, this variation
emphasizes the role of the business people in the overall execution.
• DevSecOps/SecDevOps: This integrates security into DevOps. This
is the current trend, and most customers are adopting this model
now. Why security? We have security implemented in our code, so
why do we need security as part of our DevOps implementation? The
following are some scenarios in traditional DevOps where security
threats can occur:

a) In a DevOps implementation using multiple tools, there will


be requirements for integration between the tools through
passwords, secrets, tokens, etc., which can be stored in secure
vaults.

b) If we have enabled the CI/CD pipeline, which performs the code


commits and deploys to production, then how do we ensure the
code getting deployed to production is secure enough? We do
this through automated security verification tests.
c) DevOps talks about shifting left, so why do we need to wait for
a build to explore our security vulnerabilities? Can we have an
IDE integrated with security vulnerability features at the time
of coding? If so, we can use security IntelliSense.

d) How do we secure a cloud subscription? This is called


subscription security.

e) We monitor the security issues in a production environment


and take the necessary actions. Security monitoring for the
applications deployment in the containers adds another
level of security requirement. This is called the hosting
environment/container security.

5
Chapter 1 DevOps Basics and Variations

SecDevOps tries to address the end-to-end security needs of our


DevOps implementation. Based on the solution technology, hosting
environment, and DevOps tools, we can integrate the proper security
tools throughout the DevOps life cycle to implement SecDevOps.

• CloudOps: A variation of DevOps that targets cloud-based systems.


The main difference is the implementation of infrastructure as code
and handling the SaaS and PaaS deployments.

• MLOPs: DevOps is an essential component in machine learning


(ML) model development. There is a slight change in the MLOps
implementations compared to the other cloud-based application
developments. In MLOps, the stages will be to import the data from
various sources; do data processing including data transformation,
data cleaning, etc.; train the model using a sample data set;
deploy the model; and pass the actual data for processing. Also,
it may require retraining of the model as part of the end-to-end
orchestration. MLOps is handled by specific DevOps tools such as
MLFlow and Azure ML Pipeline.

• Intelligent DevOps: This is the future of DevOps and is a collaboration


between DevOps and artificial intelligence. In DevOps, the main
three components are the people, process, and technology. A lot
of data will be generated as part of the DevOps life cycle, but not
consumed properly. Intelligent DevOps use the data collected in
DevOps setup likes the logs, code, test cases, bugs, build reports,
etc to predict or derive more meaningful insights. Deployment
failure prediction, quality risk prediction, identification of new test
scenarios, and defect prediction based on log analytics are some of
the insights we can derive from this DevOps data.

The DevOps process has evolved over time from DevOps 1.0 to intelligent DevOps.

D
 evOps 1.0
In DevOps 1.0, the main focus is to resolve the conflict and increase the collaboration
between various stakeholders such as the development team, QA, and operations, as
shown in Figure 1-2. Bridging the gap in understanding the priority of the other team
played a major role here.
6
Chapter 1 DevOps Basics and Variations

Figure 1-2. DevOps 1.0

In this scenario, mainly the development team focuses on new features to improve the
business, whereas the Ops team looks for stability in the production environment. Figure 1-3
shows some of the conflict or deviations between the dev team and the ops team.

Figure 1-3. Dev team versus the ops team

D
 evOps 2.0
DevOps 2.0 focused on the user-centric deployments, as shown in Figure 1-4. This is
especially true for SaaS or products where the preview features are released to a set of
users who give feedback. Based on the feedback, the team incorporates the changes and
releases a final version to all the users.
7
Chapter 1 DevOps Basics and Variations

Figure 1-4. DevOps 2.0

This kind of DevOps implementation is handled using feature flags. Feature flags are
the implementation of labeling the features and releasing them to selected users only.

S
 ecDevOps
Security has become one of the main focuses in a DevOps implementation because of
the recent remote work culture and cloud adoption. More and more DevOps tools are
moving to a cloud-based subscription model to address the growing demand of cloud
adoption. Another reason for security by design is the adoption of open source libraries
in application development. For example, most modern web UI development is based
on Angular or React, JavaScript frameworks are based on npm packages. Lots of npm
packages are used along with the base package to design the rich UI. Deploying all these
dependent libraries without proper screening will lead to security threats.

I ntelligent DevOps
In intelligent DevOps, the team will look into implementing different intelligent models
to derive proper insights from the data collected throughout the DevOps life cycle. Here,
data will be added as a fourth element to the DevOps ecosystem. Figure 1-5 shows an
example of intelligent DevOps.

8
Chapter 1 DevOps Basics and Variations

Figure 1-5. Intelligent DevOps

The DevOps model has become an essential part of modern application


development and supports the automation of the agile process. A traditional DevOps
model talks about people, process, and technology. But, the entire software/product/
application development process involves a lot of data, specifically related to
requirements fulfillment, team capabilities and sprint execution, build failures and
quality of builds, untested areas, test failure patterns, candidate features for release, A/B
release plans, operations aspects related to load balancers, exceptions, defects, and so
on. Moreover, end customer tickets/feedbacks and monitoring trigger new data related
to expected or broken features, expected defects, or anomalies. New DevOps models
driven by AI focus on various insights from all this data. Intelligent DevOps tries to
provide more proactive information to the stakeholders, at the same time tries to address
some of the defects using self-healing mechanisms. Collaboration tools integrated with
chatbots will add faster actions based on insights.

Benefits
The benefits of DevOps include building and shipping software changes faster to the
market, from idea to release and through automation, orchestration of software delivery
processes, and continuous customer feedback. DevOps continuously delivers value
to end customers with lots of added benefits in terms of fewer test cycles, increased

9
Chapter 1 DevOps Basics and Variations

ticket resolutions, reduced end-to-end effort, and so on. The transition from traditional
DevOps to intelligent DevOps will bring exponential value to end users and businesses
by combining the power of DevOps and AI.
The following are some of the DevOps benefits in the business area:

• More responsiveness to business needs

• Improved visibility into IT process and requirements

• Increased customer satisfaction

• Increased sales

• Lower risk

The following are the technical benefits:

• Improved Quality with code

• More Agile development

• Improved quality of deployments

• Faster release cycles

• Reduced complexity

The following are the team benefits:

• Collaborative culture

• Productive teams
• Higher team engagements

• Increased Growth opportunities

• Self driven team

Azure DevOps
Azure DevOps provides two offerings: Azure DevOps Server and Azure DevOps Services.
Azure DevOps Server, previously known as Team Foundation Server (TFS), is the
on-­premise offering from Microsoft. Azure DevOps Services, formerly known as Visual
Studio Team Services (VSTS), provides a SaaS-based offering to manage the end-to-end
DevOps life cycle. This book will focus on Azure DevOps Services only.
10
Chapter 1 DevOps Basics and Variations

Azure DevOps Services provides a platform for implementing the DevOps process
across different IT segments. This tool supports the various practices under DevOps such
as continuous planning, continuous development, continuous integration, continuous
testing, continuous deployment/delivery, and continuous monitoring/feedback.
Moreover, this tool supports integration with various tools such as code analysis tools to
verify the quality of code, security tools to scan the vulnerabilities in code, infrastructure
provisioning tools to automatically provision infrastructure components, and so on.

Summary
DevOps is an integral part of modern application development irrespective of
commercial off-the-shelf (COTS) products or bespoke applications, machine learning
models or web applications, and database or serverless models. This book will take you
through the DevOps implementation journey using Azure DevOps. It will also address
some of the high-level DevOps blueprints at the end.

11
CHAPTER 2

Project Management
Using Azure DevOps
The field of project management has evolved over the years from the management
of resources to include areas such as optimization and productivity boosters. Project
managers have always managed resources and maintained schedules, but today’s
project managers add multiple dimensions such as agility and technology to these
regular duties. Technical managers are the new norm to handle the growing adoption of
agile and DevOps practices and automation. The collaborative and self-driven culture
of the modern workforce provides more room for project managers to optimize their
activities.
Azure DevOps complements project management activities by facilitating more
automated features for the managers to track the work, optimize areas, and tightly
control and maintain schedule. Project execution means creating a project, managing
the end-to-end development cycle of the project, and onboarding teams with the proper
permissions. In Azure DevOps, projects related to the same domain or business unit are
grouped under an organization. Therefore, an organization is a collection of projects. In
earlier versions, this was called a project collection.
As discussed in Chapter 1, an enterprise can have multiple Azure DevOps
subscriptions to keep the billing related to each business unit separate, as shown in
Figure 2-1. Multiple organizations can be configured using one subscription to capture
the billing on a granular level or sub-business unit level. Organizations host related
projects under that, which supports the execution of a project from requirements
gathering until the deployment.

13
© Ambily K K 2020
A. K K, Azure DevOps for Web Developers, https://doi.org/10.1007/978-1-4842-6412-6_2
Chapter 2 Project Management Using Azure DevOps

Figure 2-1. Organization structure

Each project can have multiple repositories to hold the codebase in separate
areas. For example, a project handling the microservices will have one repo for each
microservice. The repos will be further divided into branches to manage the code
versioning and collaborative work. This chapter covers the high-level features of
organizations and projects and touches upon a few configurations related to repos and
branches. Repos and branches will be covered in more detail in Chapter 4. Also, most of
the configurations discussed in this chapter will be revisited in later chapters based on
their importance when setting up the end-to-date DevOps configuration.

Organizations
Organizations are the highest level of aggregation in Azure DevOps. From an enterprise
perspective, organizations can be used to group the user licenses, the billings for a set
of related projects, connections to an enterprise Azure AD, and global notifications and
policies. More features of organizations will be discussed later in this book.

14
Chapter 2 Project Management Using Azure DevOps

C
 reating an Organization
You can create a free organization by navigating to the Azure DevOps site: https://
azure.microsoft.com/en-us/services/devops/.
Select the option “Start free” to activate a free instance of Azure DevOps. Azure
DevOps supports using a Microsoft ID for login, where you can provide an existing live
email address (@hotmail.com, @outlook.com, @live.com, etc.) or create one to proceed.
Once the login completes, Azure DevOps prompts you to continue with organization
creation.
Provide an organization name to continue the journey. Once the organization is
created, the system will prompt you to create a project, as shown in Figure 2-2. Create a
new project with the minimum details.

Figure 2-2. Creating a new project

O
 rganization Settings
The organization home page shows the list of existing projects in the organization,
“My work items” tab, and “My pull requests” tab as shown in Figure 2-3. Hovering the
cursor over each of the project tiles allows users to navigate to the selected project’s
components such as the repo, board, pipeline, etc. The “My work items” tab displays all

15
Chapter 2 Project Management Using Azure DevOps

the work items assigned to that user irrespective of the project. If a user contributes to
multiple projects, this view provides a unified look at all the work items assigned to the
user. Also, this view lists the activities related to the user. The “My pull requests” tab lists
the pull requests (PRs) created by the user. More about the work items and PRs will be
covered in subsequent chapters.
The organization settings allow you to configure a set of features required for the
organization. Click the “Organization settings” option in the lower-left corner of the
organization’s home page to view the settings, as shown in Figure 2-3.

Figure 2-3. Organization settings

Briefly take a look at the different settings available in the organization settings.
These settings are used as part of project execution. For example, the settings under
Boards ➤ Process will be used to customize the project template when setting up the
execution process. Similarly, the settings under Security help us to define organizational
policies as part of the build and deployment operations.

G
 eneral ➤ Overview
The Overview section allows you to manage the general properties associated with
an organization such as the name of the organization, privacy URL, time zone, and
description.

16
Chapter 2 Project Management Using Azure DevOps

Scroll down in the Overview section to view the two main activities you can perform:
changing the owner and deleting the organization, as shown in Figure 2-4.

• Change owner: This option is used to transfer the owner permission


to another member of the organization.

• Delete organization: Remove the organization and associated


projects. Only the owner can delete the organization along with all
artifacts associated with it.

Figure 2-4. Changing the owner

G
 eneral ➤ Projects
This section lists the projects associated with the organization. In this section, we can
create a new project, delete a project, or rename an existing project, as shown in Figure 2-5.

Figure 2-5. Organization Settings ➤ General ➤ Projects

17
Another Random Scribd Document
with Unrelated Content
näyttää tehokkaammaksi.

— Sisästä, sisästäpä tietenkin sitä pirua on voideltava, sanoo


Asari piippuaan täyttäen naprakasti. — Sille on annettava yhden
kerran semmoinen telli, että nurinniskoin lähtee. Mitähän, jos ottaisit
kerran saunassa ja panisit vähän tervaa, noin puolen litran verran,
sekaan ja sitten yhdellä kertaa sisuksiin. Sillä lailla minä kerran ajoin
matoja sisästäni.

— Iii… vai matoja.

— Niin, mutta jos matoja ajaa, pitää panna sekaan vähän


pirunpihkaa ja puuöljyä. Sitten se lutkahtaa reiän täyteisenä. Ei sinun
mahassasi taia niitä matoja, vorninkaisia…?

— On veikkonen niitäkin, myönsi Antti. — Kun välistä rupeaa


pakkaamaan, niin on siihen paikkaan haljeta. Työntää niinkuin
seipäällä sisuksia.

— No anna, minä laitan sitten sen seoksen nyt, kun on viina


lämpimillään. Ajetaan reumatti ja saman tein luirakkeet sisästäsi.
Kestät sinä litran verran kai sitä moskaa.

— Kyl-lähän sitä nyt litran…

— Minulla on täällä kaapissani vihollisen pilausta sen verran vielä.

Asari lähti kaapilleen ja sitten joutui jo lähtemään.

— Mihinkä sinä kötys meinaat? kysyi Tiina Loviisa.

— No sinnepä nyt sitä ainetta maistamaan, suhahti Asari. — Minä


tuon sinullekin sieltä putelin, mutta älä vain nyt virka mitään
kenellekään, kun se laki piru kuuluu olevan niin ankara, että tuosta
noin, — ja Asari veti sormellaan toisen käden sormien yli, — jos vain
tietämään tulevat.

Tiina Loviisa hämmästyi.

— Elä… että ihanko sormet poikki tuikataan?

— No niin.

— Voi helekkuna. Piä sitten sinäkin suusi kiinni.

— No ihan hissuksiin. Ei saa antaa edes henkensäkään haista.

Tiina Loviisa oli touhuissaan. Hänenkin suussaan maistui


korpiviina mukavalta, varsinkin kun sattui vatsanpuru olemaan.

— No ettäkö ihan hengen haisemisestakin sakottavat? kysyi.

— Semmoinen on laki. Suutari Kenosenkin henki oli haissut vähän


väkevälle, niin ei muuta kuin viisi vuotta kakolaa…

— Saattaisihan henki haista vaikka mille… ihan vaikka


huusinaluselle, sanoi Tiina Loviisa. — Mikä se semmoinen laki!

— Laki kuin laki, ja sitä on noudatettava. Henki ei saa haista,


muista se.

Miehet lähtivät kääkertämään Rämekorpeen, Asari edellä, Antti


perässä sen kuin väärät säärensä sallivat. Juttua ei käynyt
pitäminen, että paremmin joutuisivat. Siellä korvessa tippuu, lorottaa
ihan noronaan, ja täällä vain hissutellaan. Turakka suuttuu ja pistää
naamaansa joka tipan. On se sen tehnyt ennenkin, kun on suuttunut,
eikä mies ole ollut siitä tuontuostaan. Korvallisilla tummanpunainen
veri vain kiehunut ja ihmeitä puhunut, ei muuta.

— Kylläpä se aurinko nyt hellittää.

— Hellittävän näkyy, läähättää Antti jälessä. Tiessä on reikiä,


hevosten polkemia, ja niihin kun väärä sääri uppoaa, saa sitä
kiskomalla vetää ulos. Jos saisi vielä säärensä suoraksi, silläpä
Asarin lääkkeellä, niin antaisi mitä vain. Ei taida enää sääret oieta,
kun ovat rustottuneet ja viipelöityneet. Se reumatti pakana kun on
oikein niitä repostellut.

*****

— Voi turkin tuoma ja vienan viemä, vai nyt sieltä ponssarien


vasta passaa tulla! huusi Turakka, kun näki tutut naamat kuusen
oksien lomitse. — Ja Anttikin kääkertää kuin kana. Luuleks saavasi
reumatin voidetta?

Turakka hohottaa ja kaataa tuohilippiin viinaa. Pannun ja padan


alla loimuaa väkevältä savuava tervastuli, ja korven hunaja
lemahtaa.

Pihkakin lemahtaa, ja korpi on kevään henkeä tulvillaan. Lumi


sulaa ja tippuu pieninä kirkkaina pisaroina naavakuusen oksilta.

Molemmista pilleistä tippuu, ja Turakan naama on punainen ja


hyvätuulinen.

Niin on Asarinkin naama, ja Antin huuli mutuaa ja nahkalämssien


alta välähtää melkein kuin nuoren miehen katse.
— Annahan kun maistan, sanoo Asari makeasti muhoillen. — Vesi
kihoo jo kielen päälle.

— Vai kihoo. Elä, elä koske hinkkiin. Sitä pitää ensin haistella ja
sitten vasta maistella. No haista.

Turakka pistää tuohilipin Asarin nenän alle.

— Eikös ole haju toinen kuin Helsingin mamsselien


ootekaluvesissä, hä?

— En ole haistanut Helesingin mamsseleja… heh… aina se tuo


Turakka keksii ne leikkinsä. Anna helevetissä, kun mieli jo teköö,
pyytää Asari.

— Tämä onkin nyt semmoista, että kelpaisipa tarjota vaikka


itselleen resitentille. No ryyppää sitten, mutta älä ähkäse. Maista
sinäkin Käkkä-Antti tästä toisesta pullosta.

— Ää, kun kiertää kuin elohopea mahassa, sanoo Asari.

— Kuulehan, Turakka, kun tämä Asari tekee minulle reumatti- ja


matolääkkeen, toimittaa Antti. — Sanoo panevansa siihen
pirunpikaroitakin. Annahan uusi puteli. Tämä meni jo tyhjäksi.

— Vai lääkkeen. Kuulehan, jos minä nyt neuvon sinua.

Turakka istuu kannolle, katsottuaan ensin, että jää riittää


jäähdytysastiassa, ja sanoo sitten:

— Kun otat varia lehmän lantaa ja laitat siitä kääreet noihin


paininpuihisi, niin se on paras keino. Viinaa sitten sisään sen kuin
sietää ja varin saunan lauteille. Lehmän lanta on parempata kuin
pirunpikelit ja muut. Eikös olekin tässä hyvä maku?

Turakka maistelee tuohilipistä viinaa.

— On, on, kiertää suonissa kuin mahlaja.

— Hahhah, Antin suonissa kiertää vesi yhtä hyvin kuin viinakin.


Sanoisit paremminkin, että noissa paininpuissasi kiertää korven
makea mesi, hörötti Turakka ja pisti tuohilipin hankeen. Istuttiin sitten
kolmisin havuläjälle, jonka Turakka oli kantanut vuoteekseen, istuttiin
kuulostamaan, miten korvissa alkoi somasti sihistä ja pihistä.

Aurinko oli jo korkeimmillaan taivaan keveässä sinessä. Korvessa


humisi etelätuuli, kinokset alenivat. Kohta on suopursujen lomissa
vain ruskeavetisiä lätäköitä, ja silloin ei käy istuminen havuläjällä
maistelemassa lämmintä viinaa.

Mutta nyt käy. Turakka imeksii silmät autuaallisessa sirrissä


tuohilipin reunaa ja hohottaa väliin isoäänisesti. Mille, siitä ei ole
toisilla tietoa. Asarin mato- ja reumattilääkkeelle vaiko Antin
vorninkaisille, jotka työnsivät kuin seipäällä. Yhtä hyvin saattaa
Turakka nauraa oman luontonsa pakosta, ei viinan nostamana,
auringon paisteesta ja kevään tulosta. Onhan niin mukava kuvitella
kesää, kun saa paistaa rannalla kalaa ja ryypätä palan painikkeeksi
pienestä taskumatistaan. Kellahtaa sitten kalliolle tahi kanervikkoon
ja nukahtaa. Ei enää edes muista, minkälaista huoli on. Jos sattuu
jotain puuttumaan, niin menee isäntien luokse. Rahaa tahi tavaraa,
ei ole kielteessä. Eikähän mitään puutukaan. Kukapa on hänen
taskunsa nähnyt tyhjinä. Rahapussi pollottaa aina kuin kerä housun
takataskussa.
Harakka-Antin suu oli venynyt kovin leveäksi siinä istuessa. Mitäs
tarvitsi yhteen menoon kiskoa puolen litran pulloa nahkaansa.
Nahkalämssät silmien päällä ovat ihan tummanpunaiset, ja silmistä
näkyy vain pienet pisteet, niinkuin naskalin reiät.

Asari istui polvet pystyssä ja hihitti väliin. Teki sydämelle niin


hyvää, että piti hihittää. Voi hyväinen ihme, miten maailma oli
mukava. Ensi viikolla pitää käyttää iso imisä karjun luona, että Tiina
Loviisa saa oikein kauniita porsaita hoitaakseen. Niistä saa sitten
sitä kiljunpintaa ensi syksynä. Ja rukiita pitää jauhattaa nuorelle
tammalle, että saa ajaa lihavalla ja hihkaista ajaessaan. Kyllä Luoja
on hyvä, kun antaa ihmiselle kaikkea, mitä sen sydän halajaa.
Tuotakin aurinkoa se rupeaa taas antamaan, hellittääpä jo ihan
pihkat irti naamasta.

Turakka muutti uudet pullot pillien alle ja lötkähti havuille.

— Miltäs tuntuu? kysyi ukoilta.

— Suonet soutaa niin somasti ja sydäntä panee niin mukavasti.


Ihan kuin tähkällä kutkuttaisi. Montakohan li—hitraa tu—huosta jää
mi—hinulle?

— Senpä sitten näkee. Kunhan tuo Käkkä-Antti ensin pumputaan


täyteen, että lurikat lähtee sen sisästä. Pitää Syllykän lämmittää
sauna ja hakea sitä lehmän ainetta.

Antti hekatti. Se tuo Turakka on mies… se on tuossa ihan kuin


joku keisari, suuri ja mahtava. Antaa viinaa kelle antaa. Ei anna
kaikille, vaikka talonsa antaisivat. Minulle antaa, vaikka käkkänäksi
haukkuu, se on sen leikkiä, eikä siitä saa suuttua. Kappas, miten
päätä nyt alkaa nytkyttää. Eihän se ennen sen vertaisesta. Tänä
iltana annetaan vorninkaisille lähtimet.

Syllykkä tulla kynttäsi, selässä iso tuohikontti. Siinä oli Turakan


eväät, ja akka lateli ne kannon nenään asetetulle laudalle.

— Kuuluu taas Hörödii olevan pitäjällä vainua vetämässä, missä


Turakan jälki haisisi, paapatti akka ja pälyi viinapulloja. Eikö se
ryökäle kiirehtinyt ryyppyä antamaan, vaikka tälle sai tässä eväitä
raahata.

— Siinä on sikaa ja tässä madekukkoa, jos nielustasi semmoinen


läpäissee. Ja suutari Kekäleen akan käskin viemään semmoisia
terveisiä Hörödiille, että haistaa p—nsa eikä aiokaan tulla näille
maille, muuten saa sen kulmikkaan kallonsa halki. Uskallan minäkin
napistaa, vaikka olen akka.

— Nyt sinä akka pahus suorastaan hälyytit Hörödiin näille maille,


kivahti Turakka, kiirehtimättä tarjoamaan Syllykälle lämpimäisiä.

Antti oli nukahtanut havuläjälle, mutta Asari torisi vielä nikotellen:

— Vi—hiedään se saunaan ja annetaan semmoinen löyly, ett'on pi


—hinta niinkuin vanha pa—halttina.

Turakka haukkoi nälkäisenä, ja akka kiukunkiehuvana odotti


ryyppyä.
Jopa kimahti:

— Etkö sinä sen vietävä anna minulle tippaakaan. Kun ihan kieli
tarttuu kitalakeen.
— Mitä antamista siinä, muuta kuin kisko turpaasi. Hälyytit sen
Höröläisen.

Akka nauraa virnotti.

— Pelkääkö Turakka Bennu Höröläistä?

— En, mutta tässä olisi ollut vielä mukava toisenkin kerran


turauttaa.
Nyt on vehkeet kiireesti korjattava, kun suurus loppuu.

Hiertiäiselle tuli hätä. Pääkin vähän selvisi.

— Voi perhana, jos tulee ja pörrittää se hörrikkä, niin viinat menee.


Anna sinä Syllykkä konttisi, niin vien sillä vähän Tiina Loviisalle…
napsua… että jaksaa paremmin suutaan laksattaa.

— Vie, vie, viinoja sillä on ennenkin hyysätty ja kuljetettu. Parasta


on korjata tavarat talteen ja jättää tulisijat Hörödiille.

Hiertiäinen lähtee könttämään täysi viinakontti selässään, ja


Anttikin koettelee paininpuitaan. Eivät kannata. Hankeen lupsahtaa
mies perälleen, ja kolmikulmaiset silmäkolot jäävät avuttomina
tuijottamaan Turakkaan.

— Taisi tulla huonous? nauraa Turakka.

— Eikö perhanata, kun ne vorninkaisetpa rupesi taas työntämään,


valehtelee Antti ja pitelee mahaansa.

— Ne tahtovat vielä napsun, annas kun tuon putelin.

— Elä, elä, kyllä se vika on, kun ma oikein sanon, näissä


paininpuissa, kun juuttaista jänteet katosivat.
— Kun makaat tuossa havuilla iltapuoleen, niin kannan selässäni,
sanoo Turakka ja nauraa niin että korpi kaikuu. — Pääsetkö sinä
sieltä vai pitääkö auttaa?

Antti kekkelehti, välistä hankeen tupsahtaen, nuotiolle ja nukahti


ihanaan havun tuoksuun. Syllykkä puuhasi viinoja talteen ja pupatti
omia sekavia puheitaan. Vari viina oli kihonnut hänelläkin heti
korvallisiin.
NELJÄS LUKU.

Kenkkulan Aatami loikoo sängyssään ja miettii kaikenmoista,


enimmäkseen jo monia kertoja ennen mietittyä. Miehet ovat menneet
aamiaisen jälkeen työhön, ja isäntä on ottanut tavanmukaiset
ruokaunensa. Ei jaksa kuitenkaan koko päivää maata, ja aika tulee
pitkäksi, kun ei kykene töihinkään. Eipä sillä, että terveys olisi huono,
maha on vain kasvanut niin suureksi, että sen liikuttelemisessa on
kylliksi työtä. Ja sitten kun sen mahan kanssa on tottunut
laiskottelemaan, ei käy enää yrittäminenkään.

Eikähän se isännille muutenkaan olisi sopivata. Sitä kun on työtä


siinäkin, että miettii, miten nyt laitat sen ja sen paikan. Mihin kylvät
kaurat ensi kesänä ja mistä olisi paras ottaa kesäpuita. Ja on siinä
monta muutakin… Täytyyhän jonkun olla akkaväenkin kanssa
suuravia pitämässä, jos niinkuin sattuu sille päälle, että kehtaa
herjojen kanssa suutaan vaivata. Se on tosin hedelmätöntä, mutta
aikasi kuluksipa sitä joskus heidän kanssaan suutasi läpätät.

Emäntä, Karuliena, ei tosin ollut suustaan liika avara, mutta olihan


piikoja ja muita, joidenka kanssa sai velloa, jos halutti.
Riehaantuihan Karulienakin joskus, ja silloinpa olikin ääntä pirtissä.
Kuuluupa se nytkin pampattavan piioille tuvan puolella, mistä
pauhannee. Pitäisiköhän kuunnella.

Aatami vääntäytyy istumaan ja tarkistaa kuuloaan. Keittiön ja


tuvan ovet ovat välillä vähän raollaan.

Ka, kun tansseissa käynnistä puhuu. Piiat ovat taas olleet yöllä
juoksussa. Se synti ajaa itsekutakin omalla tavallaan, mitä mitenkin.
Piikojen ja poikien pitää käydä tanssimassa ja sitten loppuyö viettää
lihan nautinnoissa… sepä syntinen liha kun vetää ja viekoittaa.

Ohhoo, jos pistäisi tupakan.

Niin, niin, henki olisi altis ihmisessä, mutta liha on heikko, tahi
oikeastaan niin vahva, että tekee mitä lystää. Panee jalat
tanssimaan ja sitten kävelemään toisen sängyn viereen. Jos heissä
piioissa sitä hengen puolta lieneekään. Eivätkö liene niinkuin vasikat
metsässä. Eipä sitä nämäkään tyttäret, omat enempää kuin
vieraatkaan, viitsi kuunnella saarnaa pyhäisin, eikä veisata. Jos
sanomisen paljoudella saa tuvan penkille tahi sängyn laidalle
istumaan lukuajaksi, niin kohta vihollinen painaa niin, että ei muuta
kuin silmät kiinni. Tytöt torkkuvat ja rengit kuorsaavat ja väliin
poksauttelevat äkeissään suuruspommeja, jumalattomat.

Nytpä sieltä pirtistä ei enää kuulukaan mitään. Taisivat mennä


navetan puolelle. Siellä olisi ulkona nyt aurinkoinen päivä, jos
kehtaisi lähteä jaloittelemaan.

Aatami ottaa muutaman verkkaisen askelen kamarinsa lattialla,


oikein tietämättä, mihin päin lähteä, kääntyy sitten kaapilleen ja ottaa
sieltä pullon.
Eipä siinäkään ole mitään. On näes tämä Aatami pitänyt aina
sairauden ja muun semmoisen pienen taudintapauksen varalta
korpiviinaa kaapissaan, joka nytkin taas tautisena aikana on ehtinyt
antaa hänelle monta apua ja lievitystä.

Jopahan on näemmä tyhjä tuo pullo, huokaa Aatami. — Taisikin


eilen siitä viimeinen tulla napsituksi. Se kun ei tämmöiseen ruhoon
edes vähä riitäkään.

Aatamin pitää istua ikkunapöydän ääreen miettimään sitä pullon


tyhjenemistä. Siinä on samalla ne alinomaiset syntiasiatkin mielessä,
niistä kun pitää joka päivä itselleen tiliä tehdä, herjoista.

Kun sitä ihmisen, näes, pitää kilvoitella, loppuun asti, ihan siihen,
kun viimeinen henki kurkussa korahtaa. Sittenpä se reuhtominen
lakkaakin ja alkaa se toinen elämä, hyvä tahi paha, kuinka kulloinkin
osaat kilvoitella ja tämän maallisen juoksusi ja kouhotuksesi päättää.

Ja siitä päättämisestäpä se riippuukin kokonaan, vaikka moni ei


sitä tiedä. Kun osaat tehdä oikealla ajalla sovinnon ja omistaa sen,
mitä pitää ja sana sisältää, niin eipä ole silloin hätää. Pötkäytät vain
itsesi sinne parempaan paikkaan, vaikka olisit kuinka synnissä
rypenyt täällä matoisessa maailmassa.

Se pullo on tyhjä, ja se on toinen asia.

Aatami kävi katsomassa toista pulloa, olisiko siihen mitään jäänyt,


mutta ei siinäkään muuta kuin sen verran, että kieli kastui ja
pahemmin vain tautinen ruumis rupesi sitä ainetta tahtomaan.

Hitsiläinen, kun loppui nyt pahimpaan aikaan, eikä taida olla


tekijää tiettyvillä.
On se sekin, kun lopetetaan tämmöisenä tautisena aikana
nämäkin väkevät. Ei ihme, että ihmisiä kuolee ja pötkähtää ennen
aikojaan kohta joka talossa. Ja jos ei kuolla, niin ainakin
sairastetaan. Ne jotka osaavat tätä ainetta — Aatami pyöräytti tyhjää
pulloa kädessään — varata, säästyvät potemisesta ja
rutkottamisesta.

Sängyn päälle se olisi vääntänyt jo aikoja sitten hänetkin, jos ei


olisi ollut aina puteli kaapissa. Eikä ainoastaan tämä tauti, niitä on
monta muutakin, hänessäkin. Sydänalusvika, joka vaatii
kovanpuoleiset aamumaistot, ja sitten repijäinen nivelissä.

Kun hänellä välistä ottaa se repijäinen niin lujalle, että pitää istua,
olipa paikka mikä tahansa. Sillekin kun on antaa ajallaan ja
tarpeellisen määrän, ei kuulu eikä näy koko repijäistä.

Ja onhan niitä muitakin. Reumatti yksi hyvä. Siinä sivussa saa


sekin voiteensa, vaikka pitääpä sitä senkin varalta aina lisätä
annosta, ja kun nämä nykyiset putelit ovat niin pieniä, kun ovat nekin
pienentäneet, niin tietää sen, että loppuu.

Nyt tässä tulee kohta pahat, jos ei vaan heti saa. Alkaa jo
repijäinen nytkyttää niveliä, pahan tauti, mikä lienee sekin, ihmisten
vitsaus.

Eikä saanut sydänalakaan tänä aamuna enää täyttä määrää.


Tässä saattaa kohta tulla pahat olot.

Sattuisiko tuota olemaan poikien kaapissa?

Aatami nytkyttelee verkalleen poikien kamariin ja aukaisee kaapin,


kun sattuu kerran avainkin semmoinen olemaan.
Heh, heh, niitä poikia, kun ovat sinne pistäneet ihan täyden pullon.
Ja se on pistetty sinne ihan äskettäin, koskapa on vielä päältäkin
märkä.

Mitä ihmettä? Vastatehtyä!

Aatami maistelee ja haistelee ja muhoilee. Tämä onkin tavallista


parempaa ainetta, eikö liene Turakan tekemää. Eipä sitä muut
sellaista…

Aatami on kahden vaiheilla, jättääkö pullon poikien kaappiin vai


ottaisiko sen mukaansa.

Syntiä siitä tosin ei tulisi. Saisihan sen maksaa toisella kertaa


pojille. Ja mitäpä ne terveet miehet sillä… Nautitaan vain huvin
vuoksi. Se juomishimo näet ajaa näitäkin hänen poikiaan, vaikka isä
ei milloinkaan vielä himon vuoksi ole putelia kallistanut. Heikko
terveys on sitä teetättänyt ihan poikasesta lähtien. Kerran nuorna
miesnä ollessa sai renkilöiltä, kun mahaa puri, ja kun huomasi sen
terveelliseksi itselleen, on aina sitä pitänyt, mutta ei milloinkaan vielä
juonut. Ei ainakaan niin, että juomiseksi olisi toinen pystynyt
sanomaan. Jos on ryypännyt, niin se on ihan toinen asia.
Ryypätäänhän sitä muutakin rohtoa, eikä sitä kiellä raamattukaan
lääkkeenä käyttämästä.

Ovi käy jossain, ja Aatu sujauttaa pullon taskuunsa ja lähtee


poikien kamarista.

Repijäinen on taas tipotiessään, eikä sydänalakaan kaiva enää


paljoa.
Kun ottaa sikarin kaapista ja istuu siinä ikkunapöydän ääressä, on
mukava miettiä niitä syntiasioita.

Niihinpä se aina mietteet vetää, kun sitä ihmisen, oikean ihmisen


näes, pitää miettiä autuutensa asiaa.

Aatami ei malta olla. Pitää käydä ainakin haistamassa, siinä kun


oli semmoinen mukava haju. Mitä yrttejä sotkenee se Turakka
viinaansa.

Ke, ka, kun repäisi toisesta polvitaipeesta. Etkö sinä sitten herkeä
kiskomasta, kitkuttajainen, pahalainen.

Aatu ottaa oikein pitkän sille ryökäleelle, joka ei anna rauhaa


hänen nivelilleen.

No nytpä sitä onkin jo aamupäivän tarpeeksi. Kunhan eivät pojat


vain kaipaisi pulloaan. Se on Jooseppi kova mies, isälleenkin, ja jos
arvaa, nostaa taas möläkän. Sitä kun nykyiset lapset eivät muista
neljättä käskyä, niinkuin tämäkin Jooseppi. Piruko tuon sikarin
sisässä on, kun ei lähde yhtään savua.

Jopa sieltä tuvan puoleltakin kuuluu liikettä ja naisväen ääniä.


Taisivat tytöt tulla päivälypsyltä.

Niin, se naisväki, se olisikin sitä semmoista vetävää ja viettelevää.


Jos vaikka kuinka koetat olla heitä katsomatta, niin näkyvät silmääsi
kuitenkin, hameen hulmahdus tai muu semmoinen mukava paikka.

Aatami hymähtää. On se sekin, nainenpa, koko rustinki. On laitettu


siihen kaikki paikat semmoisiksi, että niihin ei kyllästy. Muutamata
vetää vielä vanhanakin niihin paikkoihin, niinkuin nyt häntäkin tahtoo
riipoa.
Sepä se synti kun on niin makea. Ja vaikka kuinka vastaan haraat,
niin ei muuta kuin lankea pois, kun se aika sattuu.

Mutta siinähän se onkin uskon viisaus, että langennut voi nousta


jälleen.

Ja sitten vielä sekin, että jos ei olisi syntiä, niin ei olisi


anteeksiantoa. Se on tärkeä pykälä. Mistäs nousit, jos et langennut,
retkahtanut. Ihminen siten tulisi niin hyväksi ja vanhurskaaksi, että ei
tarvitseisi niitä uskon asioita ensinkään, ei pelastusta eikä muuta,
mikä siihen kuuluu.

Ja lankesihan se Paavalikin. Ja moni muu. Entäpä Taavetti ja


sekin kuningas Salomo. Kun herjalla oli niin paljon ihan oikeita
vaimojakin.

Ne semmoiset paikat ovat mukavia raamatussa. Niissä on niin


ihmeen mukava hautoa ajatuksiaan ja kuvitella, miten ne miehet
rellestivät, Taavetit ja muut.

Ja sitten nämäkin nykyajan miehet. Sekin saarnaaja Tittulieri, kun


piti semmoisen tyttöhepsanan mukanaan ja sanoi hänelle, ystäviä ja
uskottuja kun oltiin, että ei jaksa lihaa vastaan tapella, täytyy olla
kaikki tavarat mukana.

Se tyttö olikin hyvä veisaamaan. Aloitti joka paikassa seurat


veisuulla ja lopetti. Jopa oli kerran saarnannutkin. Lienee hepsake
saanut sitä Tittulierin henkeä.

Jaa, jaa. Niitä ei ole enää nykymaailmassa seurojakaan.


Vallattomuus ja kaikkinainen paha saa vallan.
Jos tästä sitten lähtisi tuvan puolelle, koskapa siellä tytötkin niin
iloisesti kikattaa.

Ensin on kuitenkin käytävä haistamassa sen Turakan viinan


ihmeellistä hajua. Missähän se sitä keittänee, kun pojatkin ovat sitä
saaneet? Pitäisikin lähteä haistelemaan.

Aatami tuli tupaan. Tytöistä joku kehräsi ja muutamat liikkuivat


muissa askareissa. Iloisia olivat ja naureksivat. Kenkkulassa ei
nähtykään milloinkaan vakavia tyttöjä. Semmoisia lipattajia sattuivat
aina kaikki.

Sattuuhan ne kun satutetaan. Aatami ei mitenkään voinut vihata


iloa eikä nauravia tyttöjä, vaikka olikin niissä oikeissa asioissa
kamppaileva mies. Valikoi melkein aina itse yhdessä tosin emännän
kanssa piikansa, mutta kirkonmäellä katsoi tarkkaan, millä oli
minkinlainen naama ja nauroiko usein. Muutenkin piti olla kokoa ja
paikat semmoiset, ettei silmää haitannut.

Se mistä lienee semmoinen vaativainen silmä ollut hänellä. Kaikki


olisi sen mukaan pitänyt olla niin mallikasta ja mukavaa. Se muuan
akronohvi, joka kerran kesällä kävi, sanoi, että se on semmoista
taiteellisuutta.

Mitä joutavaa. Sitä syntiä ei hänessä ainakaan ole, se on vissi.

Ja onhan se siinäkin, jos oikein tosissa sen tunnustaa, että


syntiselle mielelle on mukavaa katsella semmoisia pyöreitä ja
punakoita tytön pallukoita.

Semmoinen se oli ennen Karulienakin, lihava ja pehmeä, ja punaa


oli poskissa niinkuin pensselillä olisi vedetty.
Se oli sitä aikaa ja nyt on toista. Karuliena on käynyt liikaakin
lihavaksi. Ja muuten semmoiseksi mietoveriseksi. Yöt makaa ja
kuorsaa ja illalla kääntää heti selkänsä. Eikö häntä sitten syntinen
lihansa milloinkaan kiusanne.

— Missä emäntä on? kysyy isäntä ja kellahtaa kyljelleen siihen


pirtin sänkyyn.

— Taisi mennä kylään, sanoo joku tytöistä.

Omiaan siinä sitten tytöt puhuvat ja tirskuttelevat ja häilähtelevät


lyhyvissä, polviin asti ulottuvissa hameissaan. Se kun nyt on
semmoinen tyyli, sanotaan. Ei siinä muuta, kuin että saa näytellä
pyöreitä pohkeitaan ja sillä tavoin vetää miehiä puoleensa. Tietää ne
keinonsa ja ne vetäjäisensä. No, omapa on asiansa, antaa ihon
vilahtaa. Mukavapa sitä on katsella.

Ohoo, kun se niin raukaseekin. Tulleneeko tunkion pohjat oikeille


paikoille siellä takapellolla. Kyllähän sen Joosepin melkein saa
uskoa töitä johtamaan. On muutenkin semmoinen työjuhta, että
monta miestä vastaa. Mutta väkeviä harrastaa, vaikk'on ihan terve
mies. Kun sille siitä sanoo, niin nauraa vasten naamaa: Maistaahan
isäkin, ei se minunkaan suuni tuohesta ole.

Sitten viinan voimalla väliin riehuu, muka ihmeitä näyttääkseen. Ja


kyllähän se näyttääkin. Ottaa hevosenkin ja nostaa, peto, koholle
niinkuin rukkasen. On sillä luonnostaankin niitä voimia.

Joko lienevät Rämekorvesta saaneet kaikki puut ajetuksi. Siellä


sitä välistä on lirautettu, kuusenjuurikasta, eikä ole kukaan mitään
haistanut. Kun se Rämekorpi on semmoinen, ettei sinne osaa
kukaan. Niinkuin rannatonta suota ensin joka puolla ympärillä ja
sitten vasta korpea. Missähän se Turakka mahtanee nyt sitä keitellä,
sillä poikien viina oli sitä varmasti?

Poikien kamarissa kuului joku kolisevan, ja kohta tuli Jooseppi


naamaltaan punaisena tuvan ovelle.

— Onko täällä isä?

— Tuolla on isäntä sängyssä.

Jooseppi, näköjään vihaisena, iski silmänsä isäänsä.

— Tulkaapas isä vähän tänne minun kamariini, pyytää hän.

Aatami lähtee vähän vaivalloisesti kämpimään. Taitaa taas se


repijäinenkin aloittaa, koskapa sätkäyttää aina niin nivusista.

Se poika nyt niistä viinoistaan… Pitää sanoa, ettei ole ottanut, ei


hän ainakaan. Kyllä se sitä saa, koskapa on saanut senkin putelin.

Joosepin tiilen värinen naama oli ankarassa irvistyksessä.

— Onko isä taas ottanut minun viinani kaapista?

— Viinasi? Joko sinä taas sitä olet ostanut, koettaa Aatami sanoa.

Vai viinasi… milloinka minä ennen sinun viinojasi? Häpeileppäs
vähän.

Olihan hän tosin muutaman kerran ottanut, mutta eihän sitä


sopinut sanoa, ja kun tavarat kerran olivat yhteisiä, niin viina kuin
viina…
— Vai ette ole ottanut, kivahtaa Jooseppi. — Paremmin joutaisitte
sitä haeskelemaan, kun ei kerran ole muistakaan töistä. Paikalla
minun viinani tänne!

Aatami tekee jo lähtöä kamarista.

— Ota vaan viinasi sieltä mihin olet pannut.

On siinä lapsi, kun syyttää isäänsä viinojensa varkaaksi.

— Jo nyt on piru, kun minä panen putelin tuohon — Jooseppi


näytti kaapin hyllyä kädellään — ja sitten se ottaa ja kävelee siitä
omin neuvoin tiehensä. Kyllä se taitaa olla isän mahassa, koskapa
korvallisenne on niin punaiset. Repijäisiään ei tarvitse kenenkään
viinoilla voidella. Rämekorvessa on Turakka keittämässä, hakee
sieltä.

— Vai Rämekorvessa, pääsi Aatamilta. — No niin, enhän minä


saata sitä kieltää, ettenkö joskus rimputtajaista lääkitseisi, mutta sinä
nautit vain huvin vuoksi. Ja se on syntiä.

— Olkoon jos pirua, mutta laittakaahan minun pulloni näinä


aikoina pois, että pääsen tästä tunkiolle. On jumalaton kamaran
hakkuu ja pitää saada parempata vauhtia. Ja sitten on minussakin
sitä rimputtajaista, nytkyttäjäistä — Jooseppi notkautteli polviaan —
ja sille pitää nyt antaa paukku. No, tokko se puteli löytyy?

Eihän se mitä löytynyt. Aatami köpötteli kamariinsa, Jooseppi


jälessään.

— Antakaa sitten rahaa, ja joutuun!

— Paljonko? kysyy Aatami.


Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

textbookfull.com

You might also like