ποΈ Manual Build Version
This tutorial explains how to specify build version manually when run a build job
ποΈ Use POM Version
This tutorial explains how to use project version in POM as build version when running a Maven build.
ποΈ Conditional Build Params
This tutorial explains how to prompt for build parameters when run a job, and demonstrates how to show one parameter conditionally based on value of other parameters.
ποΈ Matrix Build
This tutorial explains how to set up matrix build to run against every possible combination of parameter values.
ποΈ Use Job Secrets
This tutorial explains how to use job secrets to avoid exposing secret information in your build spec file.
ποΈ Different Job Secret for Different Branch
This tutorial explains how to use different job secrets for different branches for same job.
ποΈ Pass Artifacts Between Jobs
This tutotial explains how to pass artifacts from one job to another
ποΈ Clone Submodules via SSH
This tutorial explains how to clone submodules with SSH protocol in build job
ποΈ Pull Tags in Job
This tutorial explains how to pull tags in job.
ποΈ Commit and Push in Job
This tutorial explains how to make code changes in build job, and push committed change back to OneDev server
ποΈ Job Retry
This tutorial explains how to retry job upon certain failures
ποΈ Pull Request Verification
This tutorial explains how to run CI build against merged commit of a pull request via an example setup.
ποΈ Build/Publish Docker Image
This tutorial explains how to build a docker image and publish to docker hub
ποΈ Multi-Arch Docker Image
This tutorial explains how to build and publish multi-arch docker image
ποΈ Use Services
This tutorial explains how to set up and use services whlie running a job
ποΈ Working with Job Cache
CI/CD jobs running in a container always starts with a clean environment, and can be slow as it can not reuse files downloaded/generated in previous run of the job. To solve this issue, OneDev provides the ability to cache specified container directories to make them live through different runs of jobs.
ποΈ Plain Old Build
While it is the trend to run CI/CD jobs inside container for isolation and reproducibility, some builds must run outside container, such as iOS builds. To support these βplain oldβ builds, OneDev 4.11 introduces two shell job executors:
ποΈ Build Promotion
In OneDev, you can request good/verified builds to be further processed down the pipeline. This is build promotion, which can be done from build detail page like below:
ποΈ Understanding Pipeline
A pipeline is an execution of job dependency graph. It can be created by running any job in the graph, either manually or automatically via job triggers.
ποΈ Build Farm with Agents
This tutorial explains how to install OneDev agents on multiple machines to get a build farm. Agent is designed to be maintenance free: the server will push updates to agents automatically when it is upgraded.
ποΈ Build Farm with Kubernetes
This tutorial explains how to set up build farm with Kubernetes cluster
ποΈ Auto-assign Build Failure Investigator
This tutorial explains how to create a build failure issue and assign to developer who committed code since last successful build. This issue should be auto-closed
ποΈ Insecure Docker Registry
In case your CI/CD build needs to interact with insecure docker registry running with http protocol or self-signed certificate, docker daemon or corresponding buildx builder of OneDev server or agent (depending on where you are
ποΈ Job Dispatch and Aggregation
This tutorial explains how to dispatch jobs to execute concurrently and aggregate results in the end.
ποΈ Live Preview App in Pull Request
This tutorial explains how to set up pull request to launch live preview of your application and tear it down after pull request is closed.
ποΈ Limit Particular Job Running from Particular Branch
This tutorial explains how to limit a particular job running from a particular branch
ποΈ Protect Production Kubernetes Cluster
This tutorial explains how to prevent production Kubernetes cluster from running unauthorized jobs
ποΈ Diagnose Job Execution with Web Terminal
Sometimes, when a job is running, things donβt go as you would expect, and it would be helpful if one can have a shell to aid debugging. This tutorial demonstrates how to achieve it with pause command and web terminal introduced since 9.0
ποΈ Build Spec Reuse
Maintaining CI/CD configuration for many projects can be complex and challenging. To reduce the overhead, OneDev introduced mechanism to define common CI/CD building blocks in separate projects and use/customize them in other projects.