Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This best practice is around authenticating users and enforcing access control on a Jenkins instance
In the default configuration, Jenkins does not perform any security checkchecks. This means any person accessing the website can configure Jenkins and jobs, and perform builds. While this configuration is normally acceptable for intranet use and quick setup, it introduces high security risks, like someone accidentally deleting your build jobs, reconfiguring your job to run every minute, kicking off too many builds at the same time, reconfiguring your build instance, etc.

...

Tip

The most reliable builds will be clean builds, which are built fully from Source Code Control.

To ensures ensure a build can be reproducible, the build must be a clean build, which is built fully from Source Code Control. This practice also implies that all code including third-party jars, build scripts, release notes, etc. must be checked into Source Code Control.

...

Trends helps project managers and developers quickly visualize current project progress status. Moreover, unit testing is often not enough to provide enough confidence that the delivered software complies to the desired quality. The more you test the software, the better the delivered software complies to the desired quality.

...

All unused jobs should be archived so they can be resurrect resurrected if the need arises.

Tip

Setup a different job/project for each maintenance or development branch you create

One of advantages of using CI tools is to detect problems early in the development lifecylelifecycle. Setting up a different job/project for each branch you create will help to maximize the benefit of detecting problems early as part of supporting parallel development efforts and reducing risk.

...

Tip

Write jobs for your maintenance tasks, such as cleanup operations to avoid full disk full problems.

Tip

Tag, label, or baseline the codebase after the successful build.

...

Tip

In larger systems, make sure all jobs run on slaves. This ensures that the jenkins master can scale to support many more jobs that than if it had to process build jobs directly as well.