Pre-Commit Hooks DevOps Engineer Should Know To Control Kubernetes

Generally speaking, all companies are looking to increase their productivity at all levels: human, infrastructure, processes, and so on. Often, productivity is driven by the addition of automated processes to facilitate and increase the pace of production. This automation requires an evolution, an adaptation, or even a complete transformation of the concepts historically used. This includes the implementation and control of security policies.

Indeed, since the emergence of new working methods based on agility and flexibility (such as DevOps), some security concepts have had to adapt to the pace of development and management of the components of the infrastructure. Today, one of the best safety practices is to move these control points as early as possible in the integration chain in order to detect as soon as possible any anomaly that deserves special attention.

Don’t Forget These Points in Your DevOps Transformation

DevOps is a working methodology widely used today, combining good development (Dev) and operations (Ops) practices to deliver value to customers continuously. Adopting this methodology generally requires a multi-level restructuring (human, process, and technological).

To promote its adoption and implementation, it is essential to consider some crucial points in the DevOps transformation of your company.

Slow Build Pipeline? Build Faster by Building Only What You Need

In today’s fast-paced software world, organizations need to deliver fast, as fast as multiple times per day. Agile methodologies and DevOps culture have contributed to enabling this constant delivery. Continuous integration and continuous delivery (CI/CD) is an almost basic requirement for any company that wants to remain competitive in the market.

CI/CD allows the delivery of code changes more frequently and reliably by automating the required steps to take a working piece of software to a production environment. This automation comprises a set of steps to compile, build, and deploy code is called a “building pipeline.” 

Continuous Integration and Continuous Delivery for Database Changes

Introduction

Over the last two decades, many application development teams have adopted Agile development practices and have immensely benefited from it. Delivering working software frequently, receiving early feedback from customers and having self-organized cross-functional teams led to faster delivery to market and satisfied customers. Another software engineering culture, called DevOps, started evolving towards the middle of this decade and is now popular among many organizations. DevOps aims at unifying software development (Dev) and IT operations (Ops). Both these software engineering practices advocate automation, and two main concepts coming out of them are Continuous Integration (CI) and Continuous Delivery (CD). The purpose of this article is to highlight how Database Change Management, which is an important aspect of the software delivery process, is often the bottleneck in implementing a Continuous Delivery process. The article also recommends some processes that help in overcoming this bottleneck and allow streamlining application code delivery and database changes into a single delivery pipeline.

Continuous Integration

One of the core principles of an Agile development process is Continuous Integration. Continuous Integration emphasizes on making sure that code developed by multiple members of the team are always integrated. It avoids “integration hell” that used to be so common during the days when developers worked in their silos and waited until everyone was done with their pieces of work, before attempting to integrate them. Continuous Integration involves independent build machine, automated builds, and automated tests. It promotes test-driven development and the practice of making frequent atomic commits to the baseline or master branch or trunk of the version control system.

The Hitchhiker’s Guide  to  Jenkins Job Builder

Although the documentation for Jenkins Job Builder is very detailed, the step-by-step guide with examples for them is somehow missing. This was the main motivation for me to write this blog. 

Pre-Requisites

  1. Pip
  2. Git
  3. An up-and-running Jenkins instance

Setting Up Jenkins Job Builder

Here, we will be walking through the steps needed for using the Jenkins Job Builder.

Automation Testing Blockchain For Improved Speed and Quality, Part 1


Today we will discuss the importance of software testing in blockchain, outline benefits of automation testing and explain how to get involved in the Quality Assurance of our open source project. This is part one of the two-part blog post.


Many blockchain projects don't survive long after hitting the initial production state. For most, the lack of proper software testing is one of the main reasons for their demise. It's estimated that over half a billion dollars worth of cryptocurrency has been lost due to bad code in the last year alone. You probably heard about The DAO's code loophole, which allowed attackers to drain out 3.6 million ETH (worth $70 million at the time) from the Ethereum-based smart contract. Another notorious case was the Parity bug which resulted in over $150 million permanently frozen. Even Bitcoin itself is not immune to hacks. Late last year, a bug discovered in the code allowed malicious individuals to artificially inflate Bitcoin's supply via double input. If the bug wasn't quickly identified and addressed, it could have had catastrophic effects on the network. This is just the tip of the iceberg — there are plenty of smaller incidents caused by inexperienced or inattentive developers that don't make the headlines.