https://github.com/saltstack-formulas/jenkins-formula
https://github.com/saltstack-formulas/jenkins-formula
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/saltstack-formulas/jenkins-formula
- Owner: saltstack-formulas
- License: other
- Created: 2013-06-12T22:07:25.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2022-11-25T22:07:42.000Z (about 3 years ago)
- Last Synced: 2025-04-07T00:41:43.941Z (10 months ago)
- Language: SaltStack
- Homepage: http://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html
- Size: 71.3 KB
- Stars: 42
- Watchers: 36
- Forks: 121
- Open Issues: 3
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
jenkins
=======
Available states
================
.. contents::
:local:
``jenkins``
-----------
Install jenkins from the source package repositories and start it up.
``jenkins.nginx``
-----------------
Add a jenkins nginx entry. It depends on the nginx formula being installed and
requires manual inclusion `nginx` and `jenkins` states in your `top.sls` to
function, in this order: `jenkins`, `nginx`, `jenkins.nginx`.
``jenkins.plugins``
-------------------
Install listed jenkins plugins.
``jenkins.jobs``
----------------
Automatically create jenkins jobs and update them when they change. Allows you to specify a list of jobs that already
exist on the server.
Assumes you have some way to copy your config to the server, e.g.
.. code-block:: yaml
{% for job, path in salt['pillar.get']('jenkins:lookup:jobs:installed', {}).items() %}
jenkins-host_job_definition_{{ job }}:
file.managed:
- name: {{ path }}
- source: salt://path/to/jenkins/jobs/{{ job }}.xml
- template: jinja
{% endfor %}
Pillar customizations:
======================
.. code-block:: yaml
jenkins:
lookup:
# Base
port: 80
home: /usr/local/jenkins
user: jenkins
group: www-data
server_name: ci.example.com
# Nginx
symlink_vhost: False
nginx_user: nginx
nginx_group: nginx
nginx_vhost_path: /etc/nginx/sites-available
# Plugins
plugins:
installed:
- git
- rebuild
# Jobs
jobs:
installed:
JobName: /var/lib/jenkins/jobDefs/jobFile.xml