GithubHelp home page GithubHelp logo

jenkins's Introduction

Jenkins concepts

1. Jenkins installation: https://www.jenkins.io/doc/book/installing/

container (docker)
container (k8s) - pending to prepare doc
war deployment to tomcat
run as service (on Linux/Unix or windows) - https://www.jenkins.io/doc/book/installing/linux/#debianubuntu (Or) https://github.com/DayToDayDevOpsCourse/JenkinsDayToDayCourse/blob/master/JenkinsSetup.md

2. Jenkins node setup (windows, linux)

Create an agent (manual)
configure a cloud(docker) to create an agent - https://devopscube.com/docker-containers-as-build-slaves-jenkins/
	Setup: https://github.com/DayToDayDevOpsCourse/JenkinsDayToDayCourse/blob/master/JenkinsSetup/JenkinsNodeDockerCloudSetup.md
configure a cloud(kubernetes) to create an agent

3. Manage Jenkins:

3.1. System Configuration:

3.1.1. Configure System 3.1.2. Global Tool configuration 3.1.3. Manage Plugins 3.1.4. Manage Nodes and Clouds

3.2. Security

3.2.1. Configure Global Security 3.2.2. Manage Credentials 3.2.3. Configure Credential Providers 3.2.4. Manage Users

3.3. Status Information

3.3.1. Status Information 3.3.1. Status Log 3.3.1. Status Statistics 3.3.1. About Jenkins

3.4. Troubleshooting

3.4.1. Manage Old Data

3.5. Tools and Actions

3.5.1. Reload Configuration from Disk 3.5.1. Jenkins CLI 3.5.1. Script Console 3.5.1. Prepare for Shutdown

4. Job Configuration: Important features of Jenkins job configuration

General Section:

                2.1. This project is parameterized (String, boolean, File parameter, choice, etc)
                2.2. Discard old builds.
                2.3. Disable this project.
                2.4. Use custom workspace.
                2.5. Restrict where this job can run. (slave selection).
                2.6. Execute concurrent builds if necessary - Job will create new workspace @2 and run the paralell build.
	    2.7. JDK selection. If we have multiple JDK paths confiured under "Global Tool Configuration", then we can run our Jenkins jobs on dofferent JDKs.
	    2.8. Description.
                
        Source Code Management:
        
                2.7. Git. (Repository URL, Credentials, Branch Specifier, Checkout to a sub-directpry, Checkout to specific local branch).
                2.8. Subversion.  (if plugin already installed)
                2.9. Rational Team Concert (RTC). (if plugin already installed)
        
         Build Triggers:
         
                2.10. Build after other projects are built (for upstream job configuration).
                2.11. Build periodically.
                2.12. Poll SCM.
                2.13. GitHub hook trigger for GITScm polling.
	    2.13. Trigger builds remotely (if you want to trigger the jobs from other Jenkins serevrs).
                
         Build Environment:
                
                2.14. Delete workspace before build starts.
                2.15. Mask passwords.
                2.16. Maven release build (maven release plugin, its visible only for maven project).
	    Use secret text(s) or file(s)
	    Abort the build if it's stuck
	    Add timestamps to the Console Output
	    
         
         Pre-Steps: (maven project) Options are same as below "Build: for free style project".
         
         Build: for free style project.
                2.16. Execute Groovy script.
                2.17. Execute Windows batch command.
                2.18. Execute shell.
                2.19. Invoke Ant.
                2.20. Invoke Gradle script.
                2.21. Invoke top-level maven targets.
                2.22. Use builders from another project.
           
          Build: for maven project.
                
                2.23. Maven Version.
                2.24. Root POM.
                2.25. Goals and options.
                2.26. MAVEN_OPTS (Advanced..)
                2.27. Use private Maven repository (Advanced..)
                2.28. Use custom workspace - Settings, Global Settings files paths (Advanced..)                        
          
          Post-Steps: (maven project) Options are same as above section "Pre-Steps". Addition optiols are..
                
                2.29. Run only if build succeeds.
                2.30. Run only if build succeeds or is unstable.
                2.31. Run regardless of build result.
            
          Build Settings: (Maven Project)
                
                2.32. Email Nitification.
                
          Post-build Actions: (for both maven & freestyle)
                
                2.33. Email Nitification. (only for freestyle)
                2.34. Ediatble Email Notification.
                2.35. Build other projects.
                2.36. Groovy Postbuild.
                2.37. Public HTML reports.
                2.38. Record JaCoCo coverage report.
                2.39. Delete workspace when build is done.
                2.40. Public Junit test result report. (free style).
                2.41. Trigger Parameterized builds on other projects.
                2.42. SonarQube analysis with Maven.

jenkins's People

Contributors

venkatasykam avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.