GitHub Action
Setup Jenkins
v1.1.0
Latest version
Set up Jenkins container.
- Copy
$JENKINS_HOME/jobs/*/config.xml
from existing Jenkins tojenkins_home/
in your repository
or you can putjenkins_home/jenkins.yaml
if Jenkins Configuration as Code (JCasC) - Create a workflow with the jenkins_home path
steps:
- uses: actions/checkout@v3
- uses: snow-actions/[email protected]
with:
jenkins_home: jenkins_home
- run: wget $JENKINS_URL/jnlpJars/jenkins-cli.jar
- run: java -jar jenkins-cli.jar -webSocket help
- run: java -jar jenkins-cli.jar -webSocket build job-1 -f -v -p param_1=p1
Recommended plugins are installed by default.
Install plugins in addition to recommended plugins.
steps:
- uses: snow-actions/[email protected]
- run: wget $JENKINS_URL/jnlpJars/jenkins-cli.jar
- name: Short name
run: java -jar jenkins-cli.jar -webSocket install-plugin git -deploy
- name: URL
run: java -jar jenkins-cli.jar -webSocket install-plugin https://updates.jenkins.io/latest/http_request.hpi -deploy
Recommended plugins are not installed.
steps:
- uses: snow-actions/[email protected]
with:
plugins: |
git
http_request
See action.yml
Name | Description | Default | Required |
---|---|---|---|
jenkins_image_tag |
Jenkins image tag | lts-jdk11 |
no |
jenkins_home |
Jenkins home path which will be mounted to /var/jenkins_home .Set '' if you don't want to mount. |
${{ runner.temp }}/jenkins_home |
no |
env_file |
Jenkins container env_file path | - | no |
plugins |
Override plugins.txt@ installs recommended plugins. |
@ |
no |
Name | Description |
---|---|
JENKINS_HOME |
Path to jenkins_home |
JENKINS_VERSION |
Jenkins version |
JENKINS_URL |
Jenkins URL: http://localhost:8080 |
COMPOSE_FILE |
Docker Compose variable as same as --file , -f optionYou can access Jenkins container by docker compose exec jenkins <command> |
See test.yml
See jenkins.yaml
Documents
- https://www.jenkins.io/doc/book/managing/casc/
- https://www.jenkins.io/projects/jcasc/
- https://plugins.jenkins.io/configuration-as-code/
- https://plugins.jenkins.io/configuration-as-code-groovy/
- https://plugins.jenkins.io/job-dsl/
ubuntu-20.04
ubuntu-18.04
self-hosted
- Any
Welcome.