Welcome to linuxnix.com. In our last blog, we went through Jenkins Basics and its installation. In this blog, we will go deep into the functionalities and understand all the different features of Jenkins. Let’s get started. Working of Jenkins Developers make commits in the source code. Jenkins polls and detects code at every interval. If there are any commits, Jenkins will start the build using any of the build tools integrated into the code. If the build is successful, Jenkins deploys it to the test server. If not, then it notifies the developers. After building, Jenkins generated the feedback report and send it to QA. Jenkins polls the source code repository for any new commits and follows the same process which is Continuous Integration and Continuous Delivery. Jenkins Dashboard Jenkins Dashboard is the home page of Jenkins. It consists of all the major functions which are required for Jenkins administration and uses. On the left-hand side, you will have the navigation menu. We will understand what all these are used for. New Item Anything new in Jenkins is created using this option. The resource can be a Freestyle project, Maven project, a Folder, a Multi-Configuration project, etc. Many other items can be added by installing plugins. People This section includes all the known users, including their login identities. Build History This contains the history of each...Read More
Author: Ankesh K
Welcome to linuxnix.com. In our last blogs, we went through the basics of Maven (click here), the functionalities, characteristics, and usage. We even went deep into POM and Maven directory structure (click here). In this blog, we will go through the installation, configuration and the life cycle of build through Maven. Maven Build Lifecycle Phrases The sequence of steps which is defined in order to execute the tasks and goals of any maven project is known as lifecycle in Maven. The following list shows the most important Maven lifecycle phases: validate – checks the correctness of the project compile – Compiles the provided source code into binary artifacts test – executes unit tests package – packages compiled code into an archive file integration-test – executes additional tests, which require the packaging verify – checks if the package is valid install – installs the package file into the local Maven repository deploy – deploys the package file to a remote server or repository Maven Plugins Maven is actually a plugin execution framework where each and every task is executed with the help of plugins. Maven plugins are used to do the below tasks. create jar file create war file compile code files unit testing of code create project documentation create project reports The execution of the plugins has the following syntax. mvn [plugin-name]:[goal-name] Maven Plugin Types...Read More
Welcome to linuxnix.com. We have already covered the basics about Maven. In this blog, we are going to know more about it. We will focus on the types of Maven repositories, deep into POM, how Maven works, etc. If you want to understand the basics of Maven, click here. Maven Overview Super POM The Super POM is the Maven’s default POM which is also called as Parent POM or Base POM. This is usually placed on the root directory of the project and there can be multiple subprojects which can have multiple POMs. These POMs from the subprojects are called Child POMs. An easy way to look at the default configurations of the super POM is by running the following command. mvn help:effective-pom The minimum requirement for POM There are few minimal requirements for POM without which Maven cannot parse POM while building. Project root Model Version GroupId ArtifactId Version Maven uses the configuration from Super POM plus project configuration to execute the task. It runs sensible default behavior for projects, when the project is created it creates default structure. Developers are required only to place files in the respective location and no need to define any configuration in POM.xml. Below shows the default path: Source code: <project-location>/src/main/java Resources: <project-location>/src/main/resources Tests: <project-location>/src/test Complied byte code: <project-location>/target Distribution JAR: <project-location>/target/classes. Maven Directory Structure The directory structure...Read More
Take this course
My name is Surendra Kumar Anne. I hail from Vijayawada which is cultural capital of south Indian state of Andhra Pradesh. I am a Linux evangelist who believes in Hard work, A down to earth person, Likes to share knowledge with others, Loves dogs, Likes photography. At present I work at Bank of America as Sr. Analyst Systems and Administration. You can contact me at surendra (@) linuxnix dot com.