First commit
This commit is contained in:
commit
e54b5a5663
24 changed files with 3047 additions and 0 deletions
45
README.md
Normal file
45
README.md
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
**Important : this playbook is quick'n dirty and work in progress. Carefully review before using it.**
|
||||||
|
|
||||||
|
This Ansible playbook aims at setting a Jenkins CI host linked to Gitea repositories. It will :
|
||||||
|
- install jenkins from pkg.jenkins.io
|
||||||
|
- install the default JDK
|
||||||
|
- install the Jenkins plugins requested for the jenkins-php.org templates
|
||||||
|
- create a jenkins user `gitea` with restricted access just to launch a job
|
||||||
|
- creates the specified jobs
|
||||||
|
- install NginX and set up 2 vhost as recommended in https://wiki.jenkins.io/display/JENKINS/Configuring+Content+Security+Policy
|
||||||
|
|
||||||
|
Most of the configuration should be available in the inventory.
|
||||||
|
|
||||||
|
It is launched usually like this : `ansible-playbook site.yml`
|
||||||
|
|
||||||
|
## Prerequisite
|
||||||
|
|
||||||
|
Hosts should be accessible via SSH as the root user (else, add the usual
|
||||||
|
`remote_user`/`become` instructions in ansible.cfg) and with the Python
|
||||||
|
prerequisite of Ansible (usually
|
||||||
|
|
||||||
|
Only tested on Debian 10 amd64 so far, with Ansible 2.7.7.
|
||||||
|
|
||||||
|
Note : to test or to limit to one particular host :
|
||||||
|
```
|
||||||
|
ansible foo.bar.com -m ping
|
||||||
|
ansible-playbook -l foo.bar.com -C -D site.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Directory layout
|
||||||
|
|
||||||
|
We follow (more or less) the recommendations of
|
||||||
|
https://docs.ansible.com/ansible/latest/user_guide/playbooks_best_practices.html
|
||||||
|
with :
|
||||||
|
- `site.yml` : *master playbook*
|
||||||
|
- `ansible.cfg` and `inventory` : the first one set up some default configurations and introduce the second one : the inventory.
|
||||||
|
- `roles/common/`, `roles/fooapp/` : the roles with their tree `tasks/main.yml`, `files/`, `handlers/main.yml`, ...
|
||||||
|
- `group_vars/group1.yml` and `host_vars/hostname1.yml` : variables dedicated to a group or a host respectively.
|
||||||
|
|
||||||
|
Note : contrary to some recommendations, I prefer to set the maximum of variables in the inventory instead of `host_vars` and `group_vars`. For a small playbook like this one, it seems acceptable.
|
||||||
|
|
||||||
|
## TODO
|
||||||
|
|
||||||
|
- stop execution if host is running an untested system ?
|
||||||
|
- use jenkins-cli to maintain credentials.xml ? It's not really easy to manipulate in Ansible at the moment...
|
||||||
|
- update plugins, or at least display a warning when they are not up to date.
|
32
ansible.cfg
Normal file
32
ansible.cfg
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
# config file for ansible -- http://ansible.com/
|
||||||
|
# ==============================================
|
||||||
|
|
||||||
|
# nearly all parameters can be overridden in ansible-playbook
|
||||||
|
# or with command line flags. ansible will read ANSIBLE_CONFIG,
|
||||||
|
# ansible.cfg in the current working directory, .ansible.cfg in
|
||||||
|
# the home directory or /etc/ansible/ansible.cfg, whichever it
|
||||||
|
# finds first
|
||||||
|
|
||||||
|
[defaults]
|
||||||
|
|
||||||
|
# some basic default values...
|
||||||
|
|
||||||
|
inventory = ./inventory.yml
|
||||||
|
#remote_tmp = /tmp/.ansible
|
||||||
|
remote_user = root
|
||||||
|
transport = ssh
|
||||||
|
remote_port = 22
|
||||||
|
# We try not to load the hypervisor
|
||||||
|
forks = 3
|
||||||
|
|
||||||
|
# For the time being, we don't trigger handlers (for example
|
||||||
|
# restart SSH after modifying its config) when an error
|
||||||
|
# happened.
|
||||||
|
# It is the default Ansible behaviour but I prefer to explicitly
|
||||||
|
# set it here in case a change is needed later.
|
||||||
|
force_handlers = False
|
||||||
|
|
||||||
|
#filter_plugins = ./plugins/filter_plugins
|
||||||
|
|
||||||
|
#[privilege_escalation]
|
||||||
|
#become = True
|
16
inventory.yml
Normal file
16
inventory.yml
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
all:
|
||||||
|
hosts:
|
||||||
|
test-jenkins-via-ansible.example.net:
|
||||||
|
jobs:
|
||||||
|
template-php-v1: # Job template (deactivated) which can be manually cloned.
|
||||||
|
foo:
|
||||||
|
repository_url: ssh://git@code.example.net:2020/foo
|
||||||
|
deploy_url: demos.xlii.si:/var/www/test1234 # TODO: not implemented yet
|
||||||
|
bar:
|
||||||
|
repository_url: ssh://git@code.example.net:2020/bar
|
||||||
|
vars:
|
||||||
|
# If you want this playbook to only install Jenkins and let
|
||||||
|
# him be managed by other means thereafter, you can change this
|
||||||
|
# variable globally or by host.
|
||||||
|
# By default : False
|
||||||
|
jenkins_installonly: False
|
47
roles/jenkins-php-v1/defaults/main.yml
Normal file
47
roles/jenkins-php-v1/defaults/main.yml
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
jenkins_home: /var/lib/jenkins
|
||||||
|
jenkins_cli_jar_location: /var/cache/jenkins/war/WEB-INF/jenkins-cli.jar
|
||||||
|
#jenkins_updates_url:
|
||||||
|
#jenkins_plugins_install_dependencies:
|
||||||
|
jenkins_admin_password_file: "{{ jenkins_home }}/secrets/initialAdminPassword"
|
||||||
|
jenkins_gitea_password_file: "{{ jenkins_home }}/secrets/giteaAnsiblePassword"
|
||||||
|
jenkins_cli_command: java -jar "{{ jenkins_cli_jar_location }}" -s http://localhost:8080/ -auth admin:$( cat "{{ jenkins_admin_password_file | quote }}" )
|
||||||
|
jenkins_credential_keyid: deploykey1
|
||||||
|
jenkins_credential_keydesc: Deploy key n.1
|
||||||
|
|
||||||
|
jenkins_plugins:
|
||||||
|
- credentials
|
||||||
|
- git-client
|
||||||
|
- ssh
|
||||||
|
- ant
|
||||||
|
- ws-cleanup # workspace-cleanup : I prefer to be clean at each build start
|
||||||
|
# Taken from jenkins-php.org
|
||||||
|
- checkstyle
|
||||||
|
- cloverphp
|
||||||
|
- crap4j
|
||||||
|
- dry
|
||||||
|
- htmlpublisher
|
||||||
|
- jdepend
|
||||||
|
- plot
|
||||||
|
- pmd
|
||||||
|
- violations
|
||||||
|
- warnings
|
||||||
|
- xunit
|
||||||
|
|
||||||
|
jenkins_plugins_system_dependency:
|
||||||
|
- ant
|
||||||
|
- composer
|
||||||
|
- php-gd
|
||||||
|
- php-mysql
|
||||||
|
- php-pgsql
|
||||||
|
- php-xdebug # for the code coverage
|
||||||
|
- mariadb-server
|
||||||
|
- postgresql
|
||||||
|
- phpunit # TODO: test if we can use the /vendor one ?
|
||||||
|
- php-codesniffer
|
||||||
|
- phploc
|
||||||
|
- pdepend
|
||||||
|
- phpmd
|
||||||
|
- phpcpd
|
||||||
|
- phpdox
|
144
roles/jenkins-php-v1/files/jenkins-stable.io.pem
Normal file
144
roles/jenkins-php-v1/files/jenkins-stable.io.pem
Normal file
|
@ -0,0 +1,144 @@
|
||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
Version: GnuPG v1
|
||||||
|
|
||||||
|
mQGiBEmFQG0RBACXScOxb6BTV6rQE/tcJopAEWsdvmE0jNIRWjDDzB7HovX6Anrq
|
||||||
|
n7+Vq4spAReSFbBVaYiiOx2cGDymj2dyx2i9NAI/9/cQXJOU+RPdDzHVlO1Edksp
|
||||||
|
5rKn0cGPWY5sLxRf8s/tO5oyKgwCVgTaB5a8gBHaoGms3nNC4YYf+lqlpwCgjbti
|
||||||
|
3u1iMIx6Rs+dG0+xw1oi5FUD/2tLJMx7vCUQHhPRupeYFPoD8vWpcbGb5nHfHi4U
|
||||||
|
8/x4qZspAIwvXtGw0UBHildGpqe9onp22Syadn/7JgMWhHoFw5Ke/rTMlxREL7pa
|
||||||
|
TiXuagD2G84tjJ66oJP1FigslJzrnG61y85V7THL61OFqDg6IOP4onbsdqHby4VD
|
||||||
|
zZj9A/9uQxIn5250AGLNpARStAcNPJNJbHOQuv0iF3vnG8uO7/oscB0TYb8/juxr
|
||||||
|
hs9GdSN0U0BxENR+8KWy5lttpqLMKlKRknQYy34UstQiyFgAQ9Epncu9uIbVDgWt
|
||||||
|
y7utnqXN033EyYkcWx5EhLAgHkC7wSzeSWABV3JSXN7CeeOif7QiS29oc3VrZSBL
|
||||||
|
YXdhZ3VjaGkgPGtrQGtvaHN1a2Uub3JnPohjBBMRAgAjAhsDBgsJCAcDAgQVAggD
|
||||||
|
BBYCAwECHgECF4AFAko/7vYCGQEACgkQm30y8tUFguabhgCgi54IQR4rpJZ/uUHe
|
||||||
|
ZB879zUWTQwAniQDBO+Zly7Fsvm0Mcvqvl02UzxCiGAEExECACAFAkmFQG0CGwMG
|
||||||
|
CwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRCbfTLy1QWC5qtXAJ9hPRisOhkexWXJ
|
||||||
|
nXQMl9cOTvm4LgCdGint1TONoZ2I4JtOiFzOmeP3ju3RzcvNyQEQAAEBAAAAAAAA
|
||||||
|
AAAAAAAA/9j/4AAQSkZJRgABAQEAYABgAAD/4QBgRXhpZgAASUkqAAgAAAAEADEB
|
||||||
|
AgAZAAAAPgAAABBRAQABAAAAAUOQABFRBAABAAAAEgsAABJRBAABAAAAEgsAAAAA
|
||||||
|
AABNYWNyb21lZGlhIEZpcmV3b3JrcyA0LjAAAP/bAEMACAYGBwYFCAcHBwkJCAoM
|
||||||
|
FA0MCwsMGRITDxQdGh8eHRocHCAkLicgIiwjHBwoNyksMDE0NDQfJzk9ODI8LjM0
|
||||||
|
Mv/bAEMBCQkJDAsMGA0NGDIhHCEyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy
|
||||||
|
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMv/AABEIAK4AlgMBIgACEQEDEQH/xAAfAAAB
|
||||||
|
BQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0B
|
||||||
|
AgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygp
|
||||||
|
KjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImK
|
||||||
|
kpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj
|
||||||
|
5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJ
|
||||||
|
Cgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGh
|
||||||
|
scEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZ
|
||||||
|
WmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1
|
||||||
|
tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEA
|
||||||
|
AhEDEQA/APcBI/8Afb86XzH/AL7fnUYpwqRknmN/fP50u9v7x/OmCgUASb2/vH86
|
||||||
|
Xe394/nTBS0AP3t/eP50u4+p/OmUopgO3H1NO3H1NR5xThQA7cfWlyfU0ylFMQ/J
|
||||||
|
9aXPvTKdQAuaM0lLQAtJmiigAzRSdqKAKApwpopc1mUOpRSUopgKKWkFLQAueKzr
|
||||||
|
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
|
||||||
|
=fBn8
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
1
roles/jenkins-php-v1/files/jenkins-stable.io.pem.readme
Normal file
1
roles/jenkins-php-v1/files/jenkins-stable.io.pem.readme
Normal file
|
@ -0,0 +1 @@
|
||||||
|
If you change this file, remember to also change its `id` in the corresponding task.
|
11
roles/jenkins-php-v1/handlers/main.yml
Normal file
11
roles/jenkins-php-v1/handlers/main.yml
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: restart jenkins
|
||||||
|
service: name=jenkins state=restarted
|
||||||
|
|
||||||
|
- name: safe-restart jenkins
|
||||||
|
shell: "{{ jenkins_cli_command }} safe-restart"
|
||||||
|
|
||||||
|
# As of now (Ansible 2.7.7), Ansible doesn't support blocks in handlers
|
||||||
|
- name: safe-restart jenkins and wait
|
||||||
|
import_tasks: roles/jenkins-php-v1/tasks/include_saferestartandwait.yml
|
24
roles/jenkins-php-v1/tasks/00_precheck.yml
Normal file
24
roles/jenkins-php-v1/tasks/00_precheck.yml
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
# Etckeeper is a small fondness of mine, it semi-automatically
|
||||||
|
# keep track of /etc with git.
|
||||||
|
# Feel free to remove all this if you'rs not interested.
|
||||||
|
- name: detect etckeeper presence
|
||||||
|
shell: "which etckeeper"
|
||||||
|
ignore_errors: True
|
||||||
|
register: tmp
|
||||||
|
changed_when: False
|
||||||
|
|
||||||
|
- name: Set fact about etckeeper presence
|
||||||
|
set_fact:
|
||||||
|
etckeeper_installed: "{{ tmp.rc == 0 }}"
|
||||||
|
|
||||||
|
- name: Check that /etc is clean
|
||||||
|
shell: etckeeper unclean && echo "Uncommitted changes." && return 1 || return 0
|
||||||
|
ignore_errors: True # we add a 'fail' task to tell the problem more explictly.
|
||||||
|
register: tmp
|
||||||
|
changed_when: False
|
||||||
|
when: etckeeper_installed
|
||||||
|
- fail:
|
||||||
|
msg: "Etckeeper is installed but there is uncommitted changes in /etc."
|
||||||
|
when: etckeeper_installed and tmp.rc != 0
|
65
roles/jenkins-php-v1/tasks/10_jenkins-repository.yml
Normal file
65
roles/jenkins-php-v1/tasks/10_jenkins-repository.yml
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
# Add Jenkins repository for Debian
|
||||||
|
- name: Add Jenkins-stable.io repository key
|
||||||
|
apt_key:
|
||||||
|
id: "150FDE3F7787E7D11EF4E12A9B7D32F2D50582E6"
|
||||||
|
data: "{{ lookup('file', 'jenkins-stable.io.pem') }}"
|
||||||
|
state: present
|
||||||
|
register: tmp
|
||||||
|
- name: New APT sources - commit
|
||||||
|
command: "etckeeper commit 'apt: Jenkins repository key added by Ansible'"
|
||||||
|
when: tmp.changed and etckeeper_installed
|
||||||
|
|
||||||
|
- name: Check if /etc/apt/sources.list.d/jenkins.list is managed by ansible
|
||||||
|
shell: "grep -ic '# This file is managed by Ansible' /etc/apt/sources.list.d/jenkins.list || true"
|
||||||
|
register: result
|
||||||
|
changed_when: false
|
||||||
|
- name: Config /etc/apt/sources.list.d/jenkins.list file
|
||||||
|
template:
|
||||||
|
src: "{{ item }}"
|
||||||
|
dest: /etc/apt/sources.list.d/jenkins.list
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0644
|
||||||
|
backup: no
|
||||||
|
force: "{{ result.stdout is defined and result.stdout == '1' }}" # Only manage the file if the header is present
|
||||||
|
with_first_found:
|
||||||
|
- "jenkins.list.{{ ansible_fqdn }}.j2"
|
||||||
|
- "jenkins.list.j2"
|
||||||
|
register: tmp
|
||||||
|
- name: New APT sources - commit
|
||||||
|
command: "etckeeper commit 'apt: Jenkins repository added/changed by Ansible'"
|
||||||
|
when: tmp.changed and etckeeper_installed
|
||||||
|
- name: Update APT cache
|
||||||
|
apt:
|
||||||
|
update_cache: yes
|
||||||
|
when: tmp.changed
|
||||||
|
|
||||||
|
# Install Jenkins
|
||||||
|
# (note: the Jenkins package doesn't wait for Java to be installed
|
||||||
|
# before trying to launch itself, so we install them separately)
|
||||||
|
# (note2: in case we go back downloading the .war, here is a command to
|
||||||
|
# verify it: jarsigner -verbose -certs -verify /tmp/jenkins.war
|
||||||
|
- name: Install Java
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- default-jdk
|
||||||
|
state: present
|
||||||
|
- name: Install Jenkins package
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- jenkins
|
||||||
|
state: present
|
||||||
|
register: result
|
||||||
|
|
||||||
|
- name: Loop until Jenkins is available
|
||||||
|
get_url:
|
||||||
|
url: "http://localhost:8080/login"
|
||||||
|
dest: "/dev/null"
|
||||||
|
force: True
|
||||||
|
register: tmp
|
||||||
|
until: tmp.status_code is defined and tmp.status_code == 200 or result.changed == False
|
||||||
|
retries: 10
|
||||||
|
delay: 5
|
||||||
|
changed_when: False
|
50
roles/jenkins-php-v1/tasks/20_install-plugins.yml
Normal file
50
roles/jenkins-php-v1/tasks/20_install-plugins.yml
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
# Install plugins
|
||||||
|
# inspired by https://github.com/geerlingguy/ansible-role-jenkins MIT (Expat) / BSD)
|
||||||
|
# but we couldn't use jenkins_plugin's Ansible module because of crumb (CSRF) problems with our version
|
||||||
|
|
||||||
|
# Get current plugin list
|
||||||
|
# Warning : it may not be up to date if Jenkins hasn't been restarted after last plugin install
|
||||||
|
- name: Get the current plugin list
|
||||||
|
shell: "{{ jenkins_cli_command }} list-plugins | awk '{ print $1 }'"
|
||||||
|
changed_when: False
|
||||||
|
check_mode: no
|
||||||
|
register: current_plugin_list
|
||||||
|
|
||||||
|
## Update Jenkins so that plugin updates don't fail.
|
||||||
|
#- name: Create Jenkins updates directory.
|
||||||
|
# file:
|
||||||
|
# path: "{{ jenkins_home }}/updates"
|
||||||
|
# state: directory
|
||||||
|
# owner: jenkins
|
||||||
|
# group: jenkins
|
||||||
|
#
|
||||||
|
#- name: Download current plugin updates from Jenkins update site.
|
||||||
|
# get_url:
|
||||||
|
# url: "{{ jenkins_updates_url }}/update-center.json"
|
||||||
|
# dest: "{{ jenkins_home }}/updates/default.json"
|
||||||
|
# owner: jenkins
|
||||||
|
# group: jenkins
|
||||||
|
# mode: 0440
|
||||||
|
# changed_when: false
|
||||||
|
# register: get_result
|
||||||
|
# until: get_result is success
|
||||||
|
# retries: 3
|
||||||
|
# delay: 2
|
||||||
|
#
|
||||||
|
#- name: Remove first and last line from json file.
|
||||||
|
# replace:
|
||||||
|
# path: "{{ jenkins_home }}/updates/default.json"
|
||||||
|
# regexp: "1d;$d"
|
||||||
|
|
||||||
|
- name: Install Jenkins plugins.
|
||||||
|
shell: "{{ jenkins_cli_command }} install-plugin {{ item | quote }}"
|
||||||
|
with_items: "{{ jenkins_plugins }}"
|
||||||
|
when: item not in current_plugin_list.stdout_lines
|
||||||
|
notify: safe-restart jenkins and wait
|
||||||
|
|
||||||
|
- name: Install system package needed by Jenkins plugins
|
||||||
|
apt:
|
||||||
|
name: "{{ jenkins_plugins_system_dependency }}"
|
||||||
|
state: present
|
29
roles/jenkins-php-v1/tasks/30_users.yml
Normal file
29
roles/jenkins-php-v1/tasks/30_users.yml
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: Check if Gitea user has already been created
|
||||||
|
stat:
|
||||||
|
path: "{{ jenkins_gitea_password_file }}"
|
||||||
|
register: result
|
||||||
|
|
||||||
|
- name: Do we have to create the Gitea user
|
||||||
|
set_fact:
|
||||||
|
createGiteaUser: "{{ result.stat.exists is undefined or result.stat.exists == False }}"
|
||||||
|
|
||||||
|
- name: Generate a password for the Gitea user
|
||||||
|
set_fact:
|
||||||
|
giteaPassword: "{{ lookup('password', '/dev/null chars=ascii_letters') }}"
|
||||||
|
when: createGiteaUser
|
||||||
|
|
||||||
|
- name: Create Gitea user
|
||||||
|
shell: echo 'jenkins.model.Jenkins.instance.securityRealm.createAccount("gitea", "{{ giteaPassword | quote }}")' | "{{ jenkins_cli_command }}" groovy =
|
||||||
|
when: createGiteaUser
|
||||||
|
|
||||||
|
- name: Upload the new password
|
||||||
|
copy:
|
||||||
|
content: "{{ giteaPassword }}"
|
||||||
|
dest: "{{ jenkins_gitea_password_file }}"
|
||||||
|
owner: jenkins
|
||||||
|
group: jenkins
|
||||||
|
mode: 0600
|
||||||
|
when: createGiteaUser
|
||||||
|
#no_log: yes # FIXME: actually, we want to know it to tell the user to set a URL with it in Gitea. Add a debug msg maybe ?
|
85
roles/jenkins-php-v1/tasks/40_configure-jenkins.yml
Normal file
85
roles/jenkins-php-v1/tasks/40_configure-jenkins.yml
Normal file
|
@ -0,0 +1,85 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
# Needed to write a config.xml which is not changed at each Ansible run
|
||||||
|
- name: Get current Jenkins version
|
||||||
|
shell: "{{ jenkins_cli_command }} version"
|
||||||
|
changed_when: False
|
||||||
|
check_mode: no
|
||||||
|
register: result
|
||||||
|
- name: Set fact about current Jenkins version
|
||||||
|
set_fact:
|
||||||
|
current_jenkins_version: "{{ result.stdout_lines[0] }}"
|
||||||
|
|
||||||
|
- name: Upload main config.xml
|
||||||
|
template:
|
||||||
|
src: "{{ item }}"
|
||||||
|
dest: "{{ jenkins_home }}/config.xml"
|
||||||
|
owner: jenkins
|
||||||
|
group: jenkins
|
||||||
|
mode: 0644
|
||||||
|
backup: yes
|
||||||
|
with_first_found:
|
||||||
|
- "config.xml.{{ ansible_fqdn }}.j2"
|
||||||
|
- "config.xml.j2"
|
||||||
|
notify: safe-restart jenkins and wait
|
||||||
|
|
||||||
|
- name: Upload JenkinsLocationConfiguration.xml
|
||||||
|
template:
|
||||||
|
src: "{{ item }}"
|
||||||
|
dest: "{{ jenkins_home }}/jenkins.model.JenkinsLocationConfiguration.xml"
|
||||||
|
owner: jenkins
|
||||||
|
group: jenkins
|
||||||
|
mode: 0644
|
||||||
|
backup: yes
|
||||||
|
with_first_found:
|
||||||
|
- "jenkins.model.JenkinsLocationConfiguration.xml.{{ ansible_fqdn }}.j2"
|
||||||
|
- "jenkins.model.JenkinsLocationConfiguration.xml.j2"
|
||||||
|
notify: safe-restart jenkins and wait
|
||||||
|
|
||||||
|
# Generate a SSH RSA key pair if not already present
|
||||||
|
# (we do it without the Ansible module which is only available starting 2.8)
|
||||||
|
# (and we don't use become/become_user because it fails with a permission denied on /tmp/.ansible...)
|
||||||
|
- name: Generate SSH RSA key pair
|
||||||
|
command: su -c 'ssh-keygen -q -t rsa -b 2048 -f ~/.ssh/id_rsa -N ""' - jenkins
|
||||||
|
args:
|
||||||
|
creates: "{{ jenkins_home }}/.ssh/id_rsa"
|
||||||
|
#become_user: jenkins # permission denied
|
||||||
|
#become: yes
|
||||||
|
register: result
|
||||||
|
- name: Retrieve the SSH private key
|
||||||
|
slurp:
|
||||||
|
src: "{{ jenkins_home }}/.ssh/id_rsa.pub"
|
||||||
|
register: tmp
|
||||||
|
when: result.changed
|
||||||
|
- name: Ouput public key
|
||||||
|
debug:
|
||||||
|
msg: "Don't forget to set the public key on the Git repository and the deploy target : {{ tmp.content | b64decode | trim }}"
|
||||||
|
when: result.changed
|
||||||
|
|
||||||
|
# Upload this new key to the Jenkins credentials plugin system
|
||||||
|
# (the create/update/import-credential-as-xml is kinda cumbersome for our
|
||||||
|
# usecase. No way to export the key or get a MD5/SHA256 of it, so we just
|
||||||
|
# go for the credentials.xml file directly :)
|
||||||
|
- name: Retrieve the SSH private key
|
||||||
|
slurp:
|
||||||
|
src: "{{ jenkins_home }}/.ssh/id_rsa"
|
||||||
|
register: tmp
|
||||||
|
no_log: yes
|
||||||
|
- name: Set fact about SSH key
|
||||||
|
set_fact:
|
||||||
|
ssh_private_key: "{{ tmp.content | b64decode | trim }}"
|
||||||
|
no_log: yes
|
||||||
|
- name: Upload SSH RSA key pair as credential in Jenkins
|
||||||
|
template:
|
||||||
|
src: "{{ item }}"
|
||||||
|
dest: "{{ jenkins_home }}/credentials.xml"
|
||||||
|
owner: jenkins
|
||||||
|
group: jenkins
|
||||||
|
mode: 0600
|
||||||
|
force: yes
|
||||||
|
backup: yes
|
||||||
|
with_first_found:
|
||||||
|
- "credentials.xml.{{ ansible_fqdn }}.j2"
|
||||||
|
- "credentials.xml.j2"
|
||||||
|
notify: safe-restart jenkins and wait
|
||||||
|
#shell: cat /tmp/tmp.xml | java -jar /var/cache/jenkins/war/WEB-INF/jenkins-cli.jar -s http://localhost:8080/ -auth admin:$( cat /var/lib/jenkins/secrets/initialAdminPassword ) create-credentials-by-xml system::system::jenkins _
|
18
roles/jenkins-php-v1/tasks/50_create-jobs.yml
Normal file
18
roles/jenkins-php-v1/tasks/50_create-jobs.yml
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
# We need Jenkins to reboot if new plugins were installed.
|
||||||
|
- meta: flush_handlers
|
||||||
|
|
||||||
|
- name: Get the list of jobs that already exist
|
||||||
|
shell: "{{ jenkins_cli_command }} list-jobs"
|
||||||
|
changed_when: False
|
||||||
|
check_mode: no
|
||||||
|
register: current_jobs_list
|
||||||
|
|
||||||
|
# Loop on every job we maintain
|
||||||
|
- name: Manage each job
|
||||||
|
include_tasks:
|
||||||
|
file: include_jobinstall.yml
|
||||||
|
loop: "{{ lookup('dict', jobs ) }}"
|
||||||
|
loop_control:
|
||||||
|
loop_var: job
|
28
roles/jenkins-php-v1/tasks/include_jobinstall.yml
Normal file
28
roles/jenkins-php-v1/tasks/include_jobinstall.yml
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
# When the job doesn't exist, we provide an empty XML, and then work
|
||||||
|
# directly on the jenkins_home/jobs/JOB/config.xml file
|
||||||
|
- name: Create a empty job
|
||||||
|
shell: "echo '<project />' | {{ jenkins_cli_command }} create-job {{ job.key | quote }}"
|
||||||
|
when: job.key not in current_jobs_list.stdout_lines
|
||||||
|
|
||||||
|
- name: Upload job config template
|
||||||
|
template:
|
||||||
|
src: "{{ item }}"
|
||||||
|
# if job exists, we write directly to jobs/JOBNAME/config.xml, else we write to the tmp file.
|
||||||
|
dest: "{{ jenkins_home + '/jobs/' + job.key + '/config.xml' }}"
|
||||||
|
mode: 0600
|
||||||
|
owner: jenkins
|
||||||
|
group: jenkins
|
||||||
|
backup: yes
|
||||||
|
force: yes
|
||||||
|
with_first_found:
|
||||||
|
- "jobs/config.xml.{{ ansible_fqdn }}.{{ job.key }}.j2"
|
||||||
|
- "jobs/config.xml.{{ job.key }}.j2"
|
||||||
|
- "jobs/config.xml.{{ ansible_fqdn }}.j2"
|
||||||
|
- "jobs/config.xml.j2"
|
||||||
|
register: jobconfig
|
||||||
|
|
||||||
|
- name: Reload the job
|
||||||
|
shell: "{{ jenkins_cli_command }} reload-job {{ job.key | quote }}"
|
||||||
|
when: jobconfig.changed
|
16
roles/jenkins-php-v1/tasks/include_saferestartandwait.yml
Normal file
16
roles/jenkins-php-v1/tasks/include_saferestartandwait.yml
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: safe-restart jenkins and wait (include)
|
||||||
|
block:
|
||||||
|
- name: safe-restart jenkins
|
||||||
|
shell: "{{ jenkins_cli_command }} safe-restart"
|
||||||
|
- name: Loop until Jenkins is available
|
||||||
|
get_url:
|
||||||
|
url: "http://localhost:8080/login"
|
||||||
|
dest: "/dev/null"
|
||||||
|
force: True
|
||||||
|
register: result
|
||||||
|
until: result.status_code is defined and result.status_code == 200
|
||||||
|
retries: 10
|
||||||
|
delay: 5
|
||||||
|
changed_when: False
|
41
roles/jenkins-php-v1/tasks/main.yml
Normal file
41
roles/jenkins-php-v1/tasks/main.yml
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
# Usually, we only install Jenkins and let it live its life,
|
||||||
|
# so if it seems to be already installed, we skip this task.
|
||||||
|
- name: Check if /var/lib/jenkins exists
|
||||||
|
stat:
|
||||||
|
path: "{{ jenkins_home }}"
|
||||||
|
register: result
|
||||||
|
- name: No going further if jenkinsonlyinstall is set and Jenkins is already installed
|
||||||
|
set_fact:
|
||||||
|
gogogo: "{{ jenkins_installonly is undefined or jenkins_installonly == False or result.stat.isdir is undefined or result.stat.isdir == False }}"
|
||||||
|
|
||||||
|
- name: Warning about confidentiality
|
||||||
|
pause:
|
||||||
|
prompt: "Warning: this role will manage and display a lot of passwords and keys readable through the Ansible log and the process infos on each host. Sorry..."
|
||||||
|
seconds: 1 # TODO: 10
|
||||||
|
when: gogogo
|
||||||
|
|
||||||
|
|
||||||
|
# Pre-check
|
||||||
|
- include_tasks: roles/jenkins-php-v1/tasks/00_precheck.yml
|
||||||
|
when: gogogo
|
||||||
|
|
||||||
|
# Install Jenkins via the upstream repository
|
||||||
|
- include_tasks: roles/jenkins-php-v1/tasks/10_jenkins-repository.yml
|
||||||
|
when: gogogo
|
||||||
|
|
||||||
|
- include_tasks: roles/jenkins-php-v1/tasks/20_install-plugins.yml
|
||||||
|
when: gogogo
|
||||||
|
|
||||||
|
# At the moment, groups or roles are kinda overkill
|
||||||
|
# (but it probably will get back on us at the end...)
|
||||||
|
- include_tasks: roles/jenkins-php-v1/tasks/30_users.yml
|
||||||
|
when: gogogo
|
||||||
|
|
||||||
|
# Big configuration step : ACL, SSH keys aka. credentials, etc.
|
||||||
|
- include_tasks: roles/jenkins-php-v1/tasks/40_configure-jenkins.yml
|
||||||
|
when: gogogo
|
||||||
|
|
||||||
|
- include_tasks: roles/jenkins-php-v1/tasks/50_create-jobs.yml
|
||||||
|
when: gogogo
|
74
roles/jenkins-php-v1/templates/config.xml.j2
Normal file
74
roles/jenkins-php-v1/templates/config.xml.j2
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
<?xml version='1.1' encoding='UTF-8'?>
|
||||||
|
<hudson>
|
||||||
|
<disabledAdministrativeMonitors/>
|
||||||
|
<version>{{ current_jenkins_version }}</version>
|
||||||
|
<installStateName>RUNNING</installStateName>
|
||||||
|
<numExecutors>1</numExecutors>
|
||||||
|
<mode>NORMAL</mode>
|
||||||
|
<useSecurity>true</useSecurity>
|
||||||
|
<authorizationStrategy class="hudson.security.GlobalMatrixAuthorizationStrategy">
|
||||||
|
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.Create:admin</permission>
|
||||||
|
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.Delete:admin</permission>
|
||||||
|
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.ManageDomains:admin</permission>
|
||||||
|
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.Update:admin</permission>
|
||||||
|
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.View:admin</permission>
|
||||||
|
<permission>hudson.model.Computer.Build:admin</permission>
|
||||||
|
<permission>hudson.model.Computer.Configure:admin</permission>
|
||||||
|
<permission>hudson.model.Computer.Connect:admin</permission>
|
||||||
|
<permission>hudson.model.Computer.Create:admin</permission>
|
||||||
|
<permission>hudson.model.Computer.Delete:admin</permission>
|
||||||
|
<permission>hudson.model.Computer.Disconnect:admin</permission>
|
||||||
|
<permission>hudson.model.Hudson.Administer:admin</permission>
|
||||||
|
<permission>hudson.model.Hudson.Read:admin</permission>
|
||||||
|
<permission>hudson.model.Hudson.Read:gitea</permission>
|
||||||
|
<permission>hudson.model.Item.Build:admin</permission>
|
||||||
|
<permission>hudson.model.Item.Build:gitea</permission>
|
||||||
|
<permission>hudson.model.Item.Cancel:admin</permission>
|
||||||
|
<permission>hudson.model.Item.Configure:admin</permission>
|
||||||
|
<permission>hudson.model.Item.Create:admin</permission>
|
||||||
|
<permission>hudson.model.Item.Delete:admin</permission>
|
||||||
|
<permission>hudson.model.Item.Discover:admin</permission>
|
||||||
|
<permission>hudson.model.Item.Read:admin</permission>
|
||||||
|
<permission>hudson.model.Item.Read:gitea</permission>
|
||||||
|
<permission>hudson.model.Item.Workspace:admin</permission>
|
||||||
|
<permission>hudson.model.Item.Workspace:gitea</permission>
|
||||||
|
<permission>hudson.model.Run.Delete:admin</permission>
|
||||||
|
<permission>hudson.model.Run.Update:admin</permission>
|
||||||
|
<permission>hudson.model.View.Configure:admin</permission>
|
||||||
|
<permission>hudson.model.View.Create:admin</permission>
|
||||||
|
<permission>hudson.model.View.Delete:admin</permission>
|
||||||
|
<permission>hudson.model.View.Read:admin</permission>
|
||||||
|
<permission>hudson.scm.SCM.Tag:admin</permission>
|
||||||
|
</authorizationStrategy>
|
||||||
|
<securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
|
||||||
|
<disableSignup>true</disableSignup>
|
||||||
|
<enableCaptcha>false</enableCaptcha>
|
||||||
|
</securityRealm>
|
||||||
|
<disableRememberMe>true</disableRememberMe>
|
||||||
|
<projectNamingStrategy class="jenkins.model.ProjectNamingStrategy$DefaultProjectNamingStrategy"/>
|
||||||
|
<workspaceDir>${JENKINS_HOME}/workspace/${ITEM_FULL_NAME}</workspaceDir>
|
||||||
|
<buildsDir>${ITEM_ROOTDIR}/builds</buildsDir>
|
||||||
|
<markupFormatter class="hudson.markup.EscapedMarkupFormatter"/>
|
||||||
|
<jdks/>
|
||||||
|
<viewsTabBar class="hudson.views.DefaultViewsTabBar"/>
|
||||||
|
<myViewsTabBar class="hudson.views.DefaultMyViewsTabBar"/>
|
||||||
|
<clouds/>
|
||||||
|
<scmCheckoutRetryCount>0</scmCheckoutRetryCount>
|
||||||
|
<views>
|
||||||
|
<hudson.model.AllView>
|
||||||
|
<owner class="hudson" reference="../../.."/>
|
||||||
|
<name>all</name>
|
||||||
|
<filterExecutors>false</filterExecutors>
|
||||||
|
<filterQueue>false</filterQueue>
|
||||||
|
<properties class="hudson.model.View$PropertyList"/>
|
||||||
|
</hudson.model.AllView>
|
||||||
|
</views>
|
||||||
|
<primaryView>all</primaryView>
|
||||||
|
<slaveAgentPort>-1</slaveAgentPort>
|
||||||
|
<label></label>
|
||||||
|
<crumbIssuer class="hudson.security.csrf.DefaultCrumbIssuer">
|
||||||
|
<excludeClientIPFromCrumb>false</excludeClientIPFromCrumb>
|
||||||
|
</crumbIssuer>
|
||||||
|
<nodeProperties/>
|
||||||
|
<globalNodeProperties/>
|
||||||
|
</hudson>
|
21
roles/jenkins-php-v1/templates/credentials.xml.j2
Normal file
21
roles/jenkins-php-v1/templates/credentials.xml.j2
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
<?xml version='1.1' encoding='UTF-8'?>
|
||||||
|
<com.cloudbees.plugins.credentials.SystemCredentialsProvider plugin="credentials@2.3.0">
|
||||||
|
<domainCredentialsMap class="hudson.util.CopyOnWriteMap$Hash">
|
||||||
|
<entry>
|
||||||
|
<com.cloudbees.plugins.credentials.domains.Domain>
|
||||||
|
<specifications/>
|
||||||
|
</com.cloudbees.plugins.credentials.domains.Domain>
|
||||||
|
<java.util.concurrent.CopyOnWriteArrayList>
|
||||||
|
<com.cloudbees.jenkins.plugins.sshcredentials.impl.BasicSSHUserPrivateKey plugin="ssh-credentials@1.18">
|
||||||
|
<scope>GLOBAL</scope>
|
||||||
|
<id>{{ jenkins_credential_keyid }}</id>
|
||||||
|
<description>{{ jenkins_credential_keydesc }}</description>
|
||||||
|
<username>jenkins</username>
|
||||||
|
<privateKeySource class="com.cloudbees.jenkins.plugins.sshcredentials.impl.BasicSSHUserPrivateKey$DirectEntryPrivateKeySource">
|
||||||
|
<privateKey>{{ ssh_private_key }}</privateKey>
|
||||||
|
</privateKeySource>
|
||||||
|
</com.cloudbees.jenkins.plugins.sshcredentials.impl.BasicSSHUserPrivateKey>
|
||||||
|
</java.util.concurrent.CopyOnWriteArrayList>
|
||||||
|
</entry>
|
||||||
|
</domainCredentialsMap>
|
||||||
|
</com.cloudbees.plugins.credentials.SystemCredentialsProvider>
|
2
roles/jenkins-php-v1/templates/jenkins.list.j2
Normal file
2
roles/jenkins-php-v1/templates/jenkins.list.j2
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
# This file is managed by Ansible
|
||||||
|
deb http://pkg.jenkins.io/debian-stable binary/
|
|
@ -0,0 +1,6 @@
|
||||||
|
<?xml version='1.1' encoding='UTF-8'?>
|
||||||
|
<jenkins.model.JenkinsLocationConfiguration>
|
||||||
|
<!-- TODO : passer en HTTPS -->
|
||||||
|
<!-- Voir aussi pour Resource root URL, histoire d'avoir un joli affichage de Clover & Ci. -->
|
||||||
|
<jenkinsUrl>http://{{ inventory_hostname }}:8080/</jenkinsUrl>
|
||||||
|
</jenkins.model.JenkinsLocationConfiguration>
|
|
@ -0,0 +1,878 @@
|
||||||
|
<?xml version='1.1' encoding='UTF-8'?>
|
||||||
|
<project>
|
||||||
|
<actions/>
|
||||||
|
<description><img type="image/svg+xml" height="300" src="ws/build/pdepend/overview-pyramid.svg" width="500"></img>
|
||||||
|
<img type="image/svg+xml" height="300" src="ws/build/pdepend/dependencies.svg" width="500"></img></description>
|
||||||
|
<keepDependencies>false</keepDependencies>
|
||||||
|
<properties/>
|
||||||
|
<scm class="hudson.plugins.git.GitSCM" plugin="git@4.0.0">
|
||||||
|
<configVersion>2</configVersion>
|
||||||
|
<userRemoteConfigs>
|
||||||
|
<hudson.plugins.git.UserRemoteConfig>
|
||||||
|
<url>ssh://gb@code.bugness.org:2020/chl/webcollek-tmp-jenkins</url>
|
||||||
|
<credentialsId>deploykey1</credentialsId>
|
||||||
|
</hudson.plugins.git.UserRemoteConfig>
|
||||||
|
</userRemoteConfigs>
|
||||||
|
<branches>
|
||||||
|
<hudson.plugins.git.BranchSpec>
|
||||||
|
<name>*/master</name>
|
||||||
|
</hudson.plugins.git.BranchSpec>
|
||||||
|
</branches>
|
||||||
|
<doGenerateSubmoduleConfigurations>false</doGenerateSubmoduleConfigurations>
|
||||||
|
<submoduleCfg class="list"/>
|
||||||
|
<extensions/>
|
||||||
|
</scm>
|
||||||
|
<canRoam>true</canRoam>
|
||||||
|
<disabled>false</disabled>
|
||||||
|
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
|
||||||
|
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
|
||||||
|
<triggers>
|
||||||
|
<hudson.triggers.SCMTrigger>
|
||||||
|
<spec></spec>
|
||||||
|
<ignorePostCommitHooks>false</ignorePostCommitHooks>
|
||||||
|
</hudson.triggers.SCMTrigger>
|
||||||
|
</triggers>
|
||||||
|
<concurrentBuild>false</concurrentBuild>
|
||||||
|
<builders>
|
||||||
|
<hudson.tasks.Ant plugin="ant@1.10">
|
||||||
|
<targets></targets>
|
||||||
|
</hudson.tasks.Ant>
|
||||||
|
</builders>
|
||||||
|
<publishers>
|
||||||
|
<hudson.plugins.warnings.WarningsPublisher plugin="warnings@5.0.1">
|
||||||
|
<healthy></healthy>
|
||||||
|
<unHealthy></unHealthy>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[WARNINGS] </pluginName>
|
||||||
|
<defaultEncoding></defaultEncoding>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<usePreviousBuildAsReference>false</usePreviousBuildAsReference>
|
||||||
|
<useStableBuildAsReference>false</useStableBuildAsReference>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds plugin="analysis-core@1.96">
|
||||||
|
<unstableTotalAll></unstableTotalAll>
|
||||||
|
<unstableTotalHigh></unstableTotalHigh>
|
||||||
|
<unstableTotalNormal></unstableTotalNormal>
|
||||||
|
<unstableTotalLow></unstableTotalLow>
|
||||||
|
<unstableNewAll></unstableNewAll>
|
||||||
|
<unstableNewHigh></unstableNewHigh>
|
||||||
|
<unstableNewNormal></unstableNewNormal>
|
||||||
|
<unstableNewLow></unstableNewLow>
|
||||||
|
<failedTotalAll></failedTotalAll>
|
||||||
|
<failedTotalHigh></failedTotalHigh>
|
||||||
|
<failedTotalNormal></failedTotalNormal>
|
||||||
|
<failedTotalLow></failedTotalLow>
|
||||||
|
<failedNewAll></failedNewAll>
|
||||||
|
<failedNewHigh></failedNewHigh>
|
||||||
|
<failedNewNormal></failedNewNormal>
|
||||||
|
<failedNewLow></failedNewLow>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<dontComputeNew>false</dontComputeNew>
|
||||||
|
<doNotResolveRelativePaths>true</doNotResolveRelativePaths>
|
||||||
|
<includePattern></includePattern>
|
||||||
|
<excludePattern></excludePattern>
|
||||||
|
<messagesPattern></messagesPattern>
|
||||||
|
<categoriesPattern></categoriesPattern>
|
||||||
|
<parserConfigurations/>
|
||||||
|
<consoleParsers>
|
||||||
|
<hudson.plugins.warnings.ConsoleParser>
|
||||||
|
<parserName>PHP Runtime</parserName>
|
||||||
|
</hudson.plugins.warnings.ConsoleParser>
|
||||||
|
</consoleParsers>
|
||||||
|
</hudson.plugins.warnings.WarningsPublisher>
|
||||||
|
<hudson.plugins.checkstyle.CheckStylePublisher plugin="checkstyle@4.0.0">
|
||||||
|
<healthy></healthy>
|
||||||
|
<unHealthy></unHealthy>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[CHECKSTYLE] </pluginName>
|
||||||
|
<defaultEncoding></defaultEncoding>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<usePreviousBuildAsReference>false</usePreviousBuildAsReference>
|
||||||
|
<useStableBuildAsReference>false</useStableBuildAsReference>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds plugin="analysis-core@1.96">
|
||||||
|
<unstableTotalAll></unstableTotalAll>
|
||||||
|
<unstableTotalHigh></unstableTotalHigh>
|
||||||
|
<unstableTotalNormal></unstableTotalNormal>
|
||||||
|
<unstableTotalLow></unstableTotalLow>
|
||||||
|
<unstableNewAll></unstableNewAll>
|
||||||
|
<unstableNewHigh></unstableNewHigh>
|
||||||
|
<unstableNewNormal></unstableNewNormal>
|
||||||
|
<unstableNewLow></unstableNewLow>
|
||||||
|
<failedTotalAll></failedTotalAll>
|
||||||
|
<failedTotalHigh></failedTotalHigh>
|
||||||
|
<failedTotalNormal></failedTotalNormal>
|
||||||
|
<failedTotalLow></failedTotalLow>
|
||||||
|
<failedNewAll></failedNewAll>
|
||||||
|
<failedNewHigh></failedNewHigh>
|
||||||
|
<failedNewNormal></failedNewNormal>
|
||||||
|
<failedNewLow></failedNewLow>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<dontComputeNew>false</dontComputeNew>
|
||||||
|
<doNotResolveRelativePaths>false</doNotResolveRelativePaths>
|
||||||
|
<pattern>build/logs/checkstyle.xml</pattern>
|
||||||
|
</hudson.plugins.checkstyle.CheckStylePublisher>
|
||||||
|
<hudson.plugins.pmd.PmdPublisher plugin="pmd@4.0.0">
|
||||||
|
<healthy></healthy>
|
||||||
|
<unHealthy></unHealthy>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[PMD] </pluginName>
|
||||||
|
<defaultEncoding></defaultEncoding>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<usePreviousBuildAsReference>false</usePreviousBuildAsReference>
|
||||||
|
<useStableBuildAsReference>false</useStableBuildAsReference>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds plugin="analysis-core@1.96">
|
||||||
|
<unstableTotalAll></unstableTotalAll>
|
||||||
|
<unstableTotalHigh></unstableTotalHigh>
|
||||||
|
<unstableTotalNormal></unstableTotalNormal>
|
||||||
|
<unstableTotalLow></unstableTotalLow>
|
||||||
|
<unstableNewAll></unstableNewAll>
|
||||||
|
<unstableNewHigh></unstableNewHigh>
|
||||||
|
<unstableNewNormal></unstableNewNormal>
|
||||||
|
<unstableNewLow></unstableNewLow>
|
||||||
|
<failedTotalAll></failedTotalAll>
|
||||||
|
<failedTotalHigh></failedTotalHigh>
|
||||||
|
<failedTotalNormal></failedTotalNormal>
|
||||||
|
<failedTotalLow></failedTotalLow>
|
||||||
|
<failedNewAll></failedNewAll>
|
||||||
|
<failedNewHigh></failedNewHigh>
|
||||||
|
<failedNewNormal></failedNewNormal>
|
||||||
|
<failedNewLow></failedNewLow>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<dontComputeNew>false</dontComputeNew>
|
||||||
|
<doNotResolveRelativePaths>false</doNotResolveRelativePaths>
|
||||||
|
<pattern>build/logs/pmd.xml</pattern>
|
||||||
|
</hudson.plugins.pmd.PmdPublisher>
|
||||||
|
<hudson.plugins.dry.DryPublisher plugin="dry@3.0.0">
|
||||||
|
<healthy></healthy>
|
||||||
|
<unHealthy></unHealthy>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[DRY] </pluginName>
|
||||||
|
<defaultEncoding></defaultEncoding>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<usePreviousBuildAsReference>false</usePreviousBuildAsReference>
|
||||||
|
<useStableBuildAsReference>false</useStableBuildAsReference>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds plugin="analysis-core@1.96">
|
||||||
|
<unstableTotalAll></unstableTotalAll>
|
||||||
|
<unstableTotalHigh></unstableTotalHigh>
|
||||||
|
<unstableTotalNormal></unstableTotalNormal>
|
||||||
|
<unstableTotalLow></unstableTotalLow>
|
||||||
|
<unstableNewAll></unstableNewAll>
|
||||||
|
<unstableNewHigh></unstableNewHigh>
|
||||||
|
<unstableNewNormal></unstableNewNormal>
|
||||||
|
<unstableNewLow></unstableNewLow>
|
||||||
|
<failedTotalAll></failedTotalAll>
|
||||||
|
<failedTotalHigh></failedTotalHigh>
|
||||||
|
<failedTotalNormal></failedTotalNormal>
|
||||||
|
<failedTotalLow></failedTotalLow>
|
||||||
|
<failedNewAll></failedNewAll>
|
||||||
|
<failedNewHigh></failedNewHigh>
|
||||||
|
<failedNewNormal></failedNewNormal>
|
||||||
|
<failedNewLow></failedNewLow>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<dontComputeNew>false</dontComputeNew>
|
||||||
|
<doNotResolveRelativePaths>false</doNotResolveRelativePaths>
|
||||||
|
<pattern>build/logs/pmd-cpd.xml</pattern>
|
||||||
|
<highThreshold>50</highThreshold>
|
||||||
|
<normalThreshold>25</normalThreshold>
|
||||||
|
</hudson.plugins.dry.DryPublisher>
|
||||||
|
<hudson.plugins.plot.PlotPublisher plugin="plot@2.1.3">
|
||||||
|
<plots>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>A - Lines of code</title>
|
||||||
|
<yaxis>Lines of Code</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string> Lines of Code (LOC)</string>
|
||||||
|
<string>Non-Comment Lines of Code (NCLOC)</string>
|
||||||
|
<string>Comment Lines of Code (CLOC)</string>
|
||||||
|
<string>Logical Lines of Code (LLOC) </string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues> Lines of Code (LOC),Comment Lines of Code (CLOC),Non-Comment Lines of Code (NCLOC),Logical Lines of Code (LLOC) </exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string> Lines of Code (LOC)</string>
|
||||||
|
<string>Comment Lines of Code (CLOC)</string>
|
||||||
|
<string>Non-Comment Lines of Code (NCLOC)</string>
|
||||||
|
<string>Logical Lines of Code (LLOC) </string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>123.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>B - Structures Containers</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Directories</string>
|
||||||
|
<string>Namespaces</string>
|
||||||
|
<string>Files</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Directories,Files,Namespaces</exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string>Directories</string>
|
||||||
|
<string>Files</string>
|
||||||
|
<string>Namespaces</string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1107599928.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>C - Average Length</title>
|
||||||
|
<yaxis>Average Lines of Code</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string> Average Class Length (LLOC)</string>
|
||||||
|
<string>Average Function Length (LLOC) </string>
|
||||||
|
<string>Average Method Length (LLOC)</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues> Average Class Length (LLOC),Average Method Length (LLOC),Average Function Length (LLOC) </exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string> Average Class Length (LLOC)</string>
|
||||||
|
<string>Average Method Length (LLOC)</string>
|
||||||
|
<string>Average Function Length (LLOC) </string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>523405415.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>D - Relative Cyclomatic Complexity</title>
|
||||||
|
<yaxis>Cyclomatic Complexity by Structure</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Cyclomatic Complexity / Number of Methods </string>
|
||||||
|
<string> Cyclomatic Complexity / Lines of Code</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues> Cyclomatic Complexity / Lines of Code,Cyclomatic Complexity / Number of Methods </exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string> Cyclomatic Complexity / Lines of Code</string>
|
||||||
|
<string>Cyclomatic Complexity / Number of Methods </string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>186376189.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>E - Types of Classes</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Abstract Classes</string>
|
||||||
|
<string>Classes</string>
|
||||||
|
<string>Concrete Classes</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Classes,Abstract Classes,Concrete Classes</exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string>Classes</string>
|
||||||
|
<string>Abstract Classes</string>
|
||||||
|
<string>Concrete Classes</string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>594356163.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>F - Types of Methods</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Static Methods</string>
|
||||||
|
<string> Methods</string>
|
||||||
|
<string>Non-Static Methods</string>
|
||||||
|
<string>Non-Public Methods </string>
|
||||||
|
<string>Public Methods</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues> Methods,Non-Static Methods,Static Methods,Public Methods,Non-Public Methods </exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string> Methods</string>
|
||||||
|
<string>Non-Static Methods</string>
|
||||||
|
<string>Static Methods</string>
|
||||||
|
<string>Public Methods</string>
|
||||||
|
<string>Non-Public Methods </string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1019987862.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>G - Types of Constants</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Class Constants</string>
|
||||||
|
<string>Constants</string>
|
||||||
|
<string>Global Constants</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Constants,Global Constants,Class Constants</exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string>Constants</string>
|
||||||
|
<string>Global Constants</string>
|
||||||
|
<string>Class Constants</string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>217648577.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>I - Testing</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Test Methods</string>
|
||||||
|
<string>Test Classes</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Test Classes,Test Methods</exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string>Test Classes</string>
|
||||||
|
<string>Test Methods</string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>174807245.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>AB - Code Structure by Logical Lines of Code</title>
|
||||||
|
<yaxis>Logical Lines of Code</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>LLOC outside functions or classes </string>
|
||||||
|
<string>Classes Length (LLOC)</string>
|
||||||
|
<string> Logical Lines of Code (LLOC)</string>
|
||||||
|
<string>Functions Length (LLOC)</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues> Logical Lines of Code (LLOC),Classes Length (LLOC),Functions Length (LLOC),LLOC outside functions or classes </exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string> Logical Lines of Code (LLOC)</string>
|
||||||
|
<string>Classes Length (LLOC)</string>
|
||||||
|
<string>Functions Length (LLOC)</string>
|
||||||
|
<string>LLOC outside functions or classes </string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>946905520.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>H - Types of Functions</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Functions</string>
|
||||||
|
<string>Named Functions</string>
|
||||||
|
<string>Anonymous Functions</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Functions,Named Functions,Anonymous Functions</exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string>Functions</string>
|
||||||
|
<string>Named Functions</string>
|
||||||
|
<string>Anonymous Functions</string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1174623854.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>BB - Structure Objects</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label></label>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Constants </string>
|
||||||
|
<string>Functions</string>
|
||||||
|
<string> Interfaces</string>
|
||||||
|
<string>Traits</string>
|
||||||
|
<string>Methods</string>
|
||||||
|
<string>Classes</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues> Interfaces,Traits,Classes,Methods,Functions,Constants </exclusionValues>
|
||||||
|
<exclusionValuesList class="java.util.Arrays$ArrayList">
|
||||||
|
<a class="string-array">
|
||||||
|
<string> Interfaces</string>
|
||||||
|
<string>Traits</string>
|
||||||
|
<string>Classes</string>
|
||||||
|
<string>Methods</string>
|
||||||
|
<string>Functions</string>
|
||||||
|
<string>Constants </string>
|
||||||
|
</a>
|
||||||
|
</exclusionValuesList>
|
||||||
|
<url></url>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1234245913.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
<keepRecords>false</keepRecords>
|
||||||
|
<exclZero>false</exclZero>
|
||||||
|
<logarithmic>false</logarithmic>
|
||||||
|
<yaxisMinimum></yaxisMinimum>
|
||||||
|
<yaxisMaximum></yaxisMaximum>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
</plots>
|
||||||
|
</hudson.plugins.plot.PlotPublisher>
|
||||||
|
<org.jenkinsci.plugins.cloverphp.CloverPHPPublisher plugin="cloverphp@0.5">
|
||||||
|
<publishHtmlReport>true</publishHtmlReport>
|
||||||
|
<reportDir>build/coverage</reportDir>
|
||||||
|
<xmlLocation>build/logs/clover.xml</xmlLocation>
|
||||||
|
<disableArchiving>false</disableArchiving>
|
||||||
|
<healthyTarget>
|
||||||
|
<methodCoverage>70</methodCoverage>
|
||||||
|
<statementCoverage>80</statementCoverage>
|
||||||
|
</healthyTarget>
|
||||||
|
<unhealthyTarget/>
|
||||||
|
<failingTarget/>
|
||||||
|
</org.jenkinsci.plugins.cloverphp.CloverPHPPublisher>
|
||||||
|
<hudson.plugins.crap4j.Crap4JPublisher plugin="crap4j@0.9">
|
||||||
|
<reportPattern>build/logs/crap4j.xml</reportPattern>
|
||||||
|
<healthThreshold></healthThreshold>
|
||||||
|
</hudson.plugins.crap4j.Crap4JPublisher>
|
||||||
|
<htmlpublisher.HtmlPublisher plugin="htmlpublisher@1.21">
|
||||||
|
<reportTargets>
|
||||||
|
<htmlpublisher.HtmlPublisherTarget>
|
||||||
|
<reportName>API Documentation</reportName>
|
||||||
|
<reportDir>build/api</reportDir>
|
||||||
|
<reportFiles>index.html</reportFiles>
|
||||||
|
<alwaysLinkToLastBuild>false</alwaysLinkToLastBuild>
|
||||||
|
<reportTitles></reportTitles>
|
||||||
|
<keepAll>true</keepAll>
|
||||||
|
<allowMissing>false</allowMissing>
|
||||||
|
<includes>**/*</includes>
|
||||||
|
<escapeUnderscores>true</escapeUnderscores>
|
||||||
|
</htmlpublisher.HtmlPublisherTarget>
|
||||||
|
</reportTargets>
|
||||||
|
</htmlpublisher.HtmlPublisher>
|
||||||
|
<xunit plugin="xunit@2.3.7">
|
||||||
|
<types>
|
||||||
|
<PHPUnitJunitHudsonTestType>
|
||||||
|
<pattern>build/logs/junit.xml</pattern>
|
||||||
|
<skipNoTestFiles>false</skipNoTestFiles>
|
||||||
|
<failIfNotNew>true</failIfNotNew>
|
||||||
|
<deleteOutputFiles>true</deleteOutputFiles>
|
||||||
|
<stopProcessingIfError>true</stopProcessingIfError>
|
||||||
|
</PHPUnitJunitHudsonTestType>
|
||||||
|
</types>
|
||||||
|
<thresholds>
|
||||||
|
<org.jenkinsci.plugins.xunit.threshold.FailedThreshold>
|
||||||
|
<unstableThreshold>0</unstableThreshold>
|
||||||
|
<unstableNewThreshold>0</unstableNewThreshold>
|
||||||
|
<failureThreshold>0</failureThreshold>
|
||||||
|
<failureNewThreshold>0</failureNewThreshold>
|
||||||
|
</org.jenkinsci.plugins.xunit.threshold.FailedThreshold>
|
||||||
|
<org.jenkinsci.plugins.xunit.threshold.SkippedThreshold>
|
||||||
|
<unstableThreshold>0</unstableThreshold>
|
||||||
|
<unstableNewThreshold>0</unstableNewThreshold>
|
||||||
|
<failureThreshold>0</failureThreshold>
|
||||||
|
<failureNewThreshold>0</failureNewThreshold>
|
||||||
|
</org.jenkinsci.plugins.xunit.threshold.SkippedThreshold>
|
||||||
|
</thresholds>
|
||||||
|
<thresholdMode>1</thresholdMode>
|
||||||
|
<extraConfiguration>
|
||||||
|
<testTimeMargin>3000</testTimeMargin>
|
||||||
|
<reduceLog>true</reduceLog>
|
||||||
|
</extraConfiguration>
|
||||||
|
<testDataPublishers class="empty-set"/>
|
||||||
|
</xunit>
|
||||||
|
<hudson.plugins.jdepend.JDependRecorder plugin="jdepend@1.3.0">
|
||||||
|
<configuredJDependFile>build/logs/jdepend.xml</configuredJDependFile>
|
||||||
|
</hudson.plugins.jdepend.JDependRecorder>
|
||||||
|
<hudson.plugins.violations.ViolationsPublisher plugin="violations@0.7.11">
|
||||||
|
<config>
|
||||||
|
<suppressions class="sorted-set"/>
|
||||||
|
<typeConfigs>
|
||||||
|
<entry>
|
||||||
|
<string>checkstyle</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>checkstyle</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern>build/logs/checkstyle.xml</pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>codenarc</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>codenarc</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>cpd</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>cpd</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern>build/logs/pmd-cpd.xml</pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>cpplint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>cpplint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>csslint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>csslint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>findbugs</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>findbugs</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>fxcop</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>fxcop</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>gendarme</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>gendarme</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>jcreport</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>jcreport</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>jslint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>jslint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>pep8</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>pep8</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>perlcritic</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>perlcritic</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>pmd</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>pmd</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern>build/logs/pmd.xml</pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>pylint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>pylint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>simian</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>simian</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>stylecop</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>stylecop</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
</typeConfigs>
|
||||||
|
<limit>100</limit>
|
||||||
|
<sourcePathPattern></sourcePathPattern>
|
||||||
|
<fauxProjectPath></fauxProjectPath>
|
||||||
|
<encoding>default</encoding>
|
||||||
|
</config>
|
||||||
|
</hudson.plugins.violations.ViolationsPublisher>
|
||||||
|
</publishers>
|
||||||
|
<buildWrappers>
|
||||||
|
<hudson.plugins.ws__cleanup.PreBuildCleanup plugin="ws-cleanup@0.38">
|
||||||
|
<deleteDirs>false</deleteDirs>
|
||||||
|
<cleanupParameter></cleanupParameter>
|
||||||
|
<externalDelete></externalDelete>
|
||||||
|
<disableDeferredWipeout>false</disableDeferredWipeout>
|
||||||
|
</hudson.plugins.ws__cleanup.PreBuildCleanup>
|
||||||
|
</buildWrappers>
|
||||||
|
</project>
|
718
roles/jenkins-php-v1/templates/jobs/config.xml.j2
Normal file
718
roles/jenkins-php-v1/templates/jobs/config.xml.j2
Normal file
|
@ -0,0 +1,718 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?><project>
|
||||||
|
<actions/>
|
||||||
|
<description><img type="image/svg+xml" height="300" src="ws/build/pdepend/overview-pyramid.svg" width="500"></img>
|
||||||
|
<img type="image/svg+xml" height="300" src="ws/build/pdepend/dependencies.svg" width="500"></img></description>
|
||||||
|
<keepDependencies>false</keepDependencies>
|
||||||
|
<properties/>
|
||||||
|
<scm class="hudson.plugins.git.GitSCM" plugin="git@4.0.0">
|
||||||
|
<configVersion>2</configVersion>
|
||||||
|
<userRemoteConfigs>
|
||||||
|
<hudson.plugins.git.UserRemoteConfig>
|
||||||
|
<url>{{ job.value.repository_url is defined | ternary(job.value.repository_url, '') }}</url>
|
||||||
|
<credentialsId>{{ jenkins_credential_keyid }}</credentialsId>
|
||||||
|
</hudson.plugins.git.UserRemoteConfig>
|
||||||
|
</userRemoteConfigs>
|
||||||
|
<branches>
|
||||||
|
<hudson.plugins.git.BranchSpec>
|
||||||
|
<name>{{ job.value.branch_spec is defined | ternary(job.value.branch_spec, '*/master') }}</name>
|
||||||
|
</hudson.plugins.git.BranchSpec>
|
||||||
|
</branches>
|
||||||
|
<doGenerateSubmoduleConfigurations>false</doGenerateSubmoduleConfigurations>
|
||||||
|
<submoduleCfg class="list"/>
|
||||||
|
<extensions/>
|
||||||
|
</scm>
|
||||||
|
<canRoam>true</canRoam>
|
||||||
|
<disabled>false</disabled>
|
||||||
|
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
|
||||||
|
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
|
||||||
|
<triggers>
|
||||||
|
<hudson.triggers.SCMTrigger>
|
||||||
|
<spec></spec>
|
||||||
|
<ignorePostCommitHooks>false</ignorePostCommitHooks>
|
||||||
|
</hudson.triggers.SCMTrigger>
|
||||||
|
</triggers>
|
||||||
|
<concurrentBuild>false</concurrentBuild>
|
||||||
|
<builders>
|
||||||
|
<hudson.tasks.Ant>
|
||||||
|
<targets/>
|
||||||
|
</hudson.tasks.Ant>
|
||||||
|
</builders>
|
||||||
|
<publishers>
|
||||||
|
<hudson.plugins.warnings.WarningsPublisher>
|
||||||
|
<healthy/>
|
||||||
|
<unHealthy/>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[WARNINGS] </pluginName>
|
||||||
|
<defaultEncoding/>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<usePreviousBuildAsReference>false</usePreviousBuildAsReference>
|
||||||
|
<useStableBuildAsReference>false</useStableBuildAsReference>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds>
|
||||||
|
<unstableTotalAll/>
|
||||||
|
<unstableTotalHigh/>
|
||||||
|
<unstableTotalNormal/>
|
||||||
|
<unstableTotalLow/>
|
||||||
|
<unstableNewAll/>
|
||||||
|
<unstableNewHigh/>
|
||||||
|
<unstableNewNormal/>
|
||||||
|
<unstableNewLow/>
|
||||||
|
<failedTotalAll/>
|
||||||
|
<failedTotalHigh/>
|
||||||
|
<failedTotalNormal/>
|
||||||
|
<failedTotalLow/>
|
||||||
|
<failedNewAll/>
|
||||||
|
<failedNewHigh/>
|
||||||
|
<failedNewNormal/>
|
||||||
|
<failedNewLow/>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<dontComputeNew>false</dontComputeNew>
|
||||||
|
<doNotResolveRelativePaths>true</doNotResolveRelativePaths>
|
||||||
|
<parserConfigurations/>
|
||||||
|
<consoleParsers>
|
||||||
|
<hudson.plugins.warnings.ConsoleParser>
|
||||||
|
<parserName>PHP Runtime</parserName>
|
||||||
|
</hudson.plugins.warnings.ConsoleParser>
|
||||||
|
</consoleParsers>
|
||||||
|
</hudson.plugins.warnings.WarningsPublisher>
|
||||||
|
<hudson.plugins.checkstyle.CheckStylePublisher>
|
||||||
|
<healthy/>
|
||||||
|
<unHealthy/>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[CHECKSTYLE] </pluginName>
|
||||||
|
<defaultEncoding/>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds>
|
||||||
|
<unstableTotalAll/>
|
||||||
|
<unstableTotalHigh/>
|
||||||
|
<unstableTotalNormal/>
|
||||||
|
<unstableTotalLow/>
|
||||||
|
<unstableNewAll/>
|
||||||
|
<unstableNewHigh/>
|
||||||
|
<unstableNewNormal/>
|
||||||
|
<unstableNewLow/>
|
||||||
|
<failedTotalAll/>
|
||||||
|
<failedTotalHigh/>
|
||||||
|
<failedTotalNormal/>
|
||||||
|
<failedTotalLow/>
|
||||||
|
<failedNewAll/>
|
||||||
|
<failedNewHigh/>
|
||||||
|
<failedNewNormal/>
|
||||||
|
<failedNewLow/>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<pattern>build/logs/checkstyle.xml</pattern>
|
||||||
|
</hudson.plugins.checkstyle.CheckStylePublisher>
|
||||||
|
<hudson.plugins.pmd.PmdPublisher>
|
||||||
|
<healthy/>
|
||||||
|
<unHealthy/>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[PMD] </pluginName>
|
||||||
|
<defaultEncoding/>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds>
|
||||||
|
<unstableTotalAll/>
|
||||||
|
<unstableTotalHigh/>
|
||||||
|
<unstableTotalNormal/>
|
||||||
|
<unstableTotalLow/>
|
||||||
|
<unstableNewAll/>
|
||||||
|
<unstableNewHigh/>
|
||||||
|
<unstableNewNormal/>
|
||||||
|
<unstableNewLow/>
|
||||||
|
<failedTotalAll/>
|
||||||
|
<failedTotalHigh/>
|
||||||
|
<failedTotalNormal/>
|
||||||
|
<failedTotalLow/>
|
||||||
|
<failedNewAll/>
|
||||||
|
<failedNewHigh/>
|
||||||
|
<failedNewNormal/>
|
||||||
|
<failedNewLow/>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<pattern>build/logs/pmd.xml</pattern>
|
||||||
|
</hudson.plugins.pmd.PmdPublisher>
|
||||||
|
<hudson.plugins.dry.DryPublisher>
|
||||||
|
<healthy/>
|
||||||
|
<unHealthy/>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[DRY] </pluginName>
|
||||||
|
<defaultEncoding/>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds>
|
||||||
|
<unstableTotalAll/>
|
||||||
|
<unstableTotalHigh/>
|
||||||
|
<unstableTotalNormal/>
|
||||||
|
<unstableTotalLow/>
|
||||||
|
<unstableNewAll/>
|
||||||
|
<unstableNewHigh/>
|
||||||
|
<unstableNewNormal/>
|
||||||
|
<unstableNewLow/>
|
||||||
|
<failedTotalAll/>
|
||||||
|
<failedTotalHigh/>
|
||||||
|
<failedTotalNormal/>
|
||||||
|
<failedTotalLow/>
|
||||||
|
<failedNewAll/>
|
||||||
|
<failedNewHigh/>
|
||||||
|
<failedNewNormal/>
|
||||||
|
<failedNewLow/>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<pattern>build/logs/pmd-cpd.xml</pattern>
|
||||||
|
<highThreshold>50</highThreshold>
|
||||||
|
<normalThreshold>25</normalThreshold>
|
||||||
|
</hudson.plugins.dry.DryPublisher>
|
||||||
|
<hudson.plugins.plot.PlotPublisher>
|
||||||
|
<plots>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>A - Lines of code</title>
|
||||||
|
<yaxis>Lines of Code</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Lines of Code (LOC)</string>
|
||||||
|
<string>Comment Lines of Code (CLOC)</string>
|
||||||
|
<string>Non-Comment Lines of Code (NCLOC)</string>
|
||||||
|
<string>Logical Lines of Code (LLOC)</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Lines of Code (LOC),Comment Lines of Code (CLOC),Non-Comment Lines of Code (NCLOC),Logical Lines of Code (LLOC)
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>123.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>B - Structures Containers</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Namespaces</string>
|
||||||
|
<string>Files</string>
|
||||||
|
<string>Directories</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Directories,Files,Namespaces</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1107599928.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>C - Average Length</title>
|
||||||
|
<yaxis>Average Lines of Code</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Average Function Length (LLOC)</string>
|
||||||
|
<string>Average Method Length (LLOC)</string>
|
||||||
|
<string>Average Class Length (LLOC)</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Average Class Length (LLOC),Average Method Length (LLOC),Average Function Length (LLOC)
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>523405415.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>D - Relative Cyclomatic Complexity</title>
|
||||||
|
<yaxis>Cyclomatic Complexity by Structure</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Cyclomatic Complexity / Lines of Code</string>
|
||||||
|
<string>Cyclomatic Complexity / Number of Methods</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Cyclomatic Complexity / Lines of Code,Cyclomatic Complexity / Number of Methods
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>186376189.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>E - Types of Classes</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Abstract Classes</string>
|
||||||
|
<string>Classes</string>
|
||||||
|
<string>Concrete Classes</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Classes,Abstract Classes,Concrete Classes</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>594356163.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>F - Types of Methods</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Methods</string>
|
||||||
|
<string>Static Methods</string>
|
||||||
|
<string>Non-Static Methods</string>
|
||||||
|
<string>Public Methods</string>
|
||||||
|
<string>Non-Public Methods</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Methods,Non-Static Methods,Static Methods,Public Methods,Non-Public Methods
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1019987862.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>G - Types of Constants</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Class Constants</string>
|
||||||
|
<string>Global Constants</string>
|
||||||
|
<string>Constants</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Constants,Global Constants,Class Constants</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>217648577.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>I - Testing</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Test Classes</string>
|
||||||
|
<string>Test Methods</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Test Classes,Test Methods</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>174807245.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>AB - Code Structure by Logical Lines of Code</title>
|
||||||
|
<yaxis>Logical Lines of Code</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Classes Length (LLOC)</string>
|
||||||
|
<string>LLOC outside functions or classes</string>
|
||||||
|
<string>Functions Length (LLOC)</string>
|
||||||
|
<string>Logical Lines of Code (LLOC)</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Logical Lines of Code (LLOC),Classes Length (LLOC),Functions Length (LLOC),LLOC outside functions or classes
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>946905520.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>H - Types of Functions</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Functions</string>
|
||||||
|
<string>Named Functions</string>
|
||||||
|
<string>Anonymous Functions</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Functions,Named Functions,Anonymous Functions</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1174623854.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>BB - Structure Objects</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Functions</string>
|
||||||
|
<string>Traits</string>
|
||||||
|
<string>Classes</string>
|
||||||
|
<string>Methods</string>
|
||||||
|
<string>Interfaces</string>
|
||||||
|
<string>Constants</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Interfaces,Traits,Classes,Methods,Functions,Constants
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1234245913.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
</plots>
|
||||||
|
</hudson.plugins.plot.PlotPublisher>
|
||||||
|
<org.jenkinsci.plugins.cloverphp.CloverPublisher>
|
||||||
|
<publishHtmlReport>true</publishHtmlReport>
|
||||||
|
<reportDir>build/coverage</reportDir>
|
||||||
|
<xmlLocation>build/logs/clover.xml</xmlLocation>
|
||||||
|
<disableArchiving>false</disableArchiving>
|
||||||
|
<healthyTarget>
|
||||||
|
<methodCoverage>70</methodCoverage>
|
||||||
|
<statementCoverage>80</statementCoverage>
|
||||||
|
</healthyTarget>
|
||||||
|
<unhealthyTarget/>
|
||||||
|
<failingTarget/>
|
||||||
|
</org.jenkinsci.plugins.cloverphp.CloverPublisher>
|
||||||
|
<hudson.plugins.crap4j.Crap4JPublisher>
|
||||||
|
<reportPattern>build/logs/crap4j.xml</reportPattern>
|
||||||
|
<healthThreshold/>
|
||||||
|
</hudson.plugins.crap4j.Crap4JPublisher>
|
||||||
|
<htmlpublisher.HtmlPublisher>
|
||||||
|
<reportTargets>
|
||||||
|
<htmlpublisher.HtmlPublisherTarget>
|
||||||
|
<reportName>API Documentation</reportName>
|
||||||
|
<reportDir>build/api</reportDir>
|
||||||
|
<reportFiles>index.html</reportFiles>
|
||||||
|
<keepAll>true</keepAll>
|
||||||
|
<wrapperName>htmlpublisher-wrapper.html</wrapperName>
|
||||||
|
</htmlpublisher.HtmlPublisherTarget>
|
||||||
|
</reportTargets>
|
||||||
|
</htmlpublisher.HtmlPublisher>
|
||||||
|
<xunit>
|
||||||
|
<types>
|
||||||
|
<PHPUnitJunitHudsonTestType>
|
||||||
|
<pattern>build/logs/junit.xml</pattern>
|
||||||
|
<faildedIfNotNew>true</faildedIfNotNew>
|
||||||
|
<deleteOutputFiles>true</deleteOutputFiles>
|
||||||
|
<stopProcessingIfError>true</stopProcessingIfError>
|
||||||
|
</PHPUnitJunitHudsonTestType>
|
||||||
|
</types>
|
||||||
|
<thresholds>
|
||||||
|
<org.jenkinsci.plugins.xunit.threshold.FailedThreshold>
|
||||||
|
<unstableThreshold>0</unstableThreshold>
|
||||||
|
<unstableNewThreshold>0</unstableNewThreshold>
|
||||||
|
<failureThreshold>0</failureThreshold>
|
||||||
|
<failureNewThreshold>0</failureNewThreshold>
|
||||||
|
</org.jenkinsci.plugins.xunit.threshold.FailedThreshold>
|
||||||
|
<org.jenkinsci.plugins.xunit.threshold.SkippedThreshold>
|
||||||
|
<unstableThreshold>0</unstableThreshold>
|
||||||
|
<unstableNewThreshold>0</unstableNewThreshold>
|
||||||
|
<failureThreshold>0</failureThreshold>
|
||||||
|
<failureNewThreshold>0</failureNewThreshold>
|
||||||
|
</org.jenkinsci.plugins.xunit.threshold.SkippedThreshold>
|
||||||
|
</thresholds>
|
||||||
|
<thresholdMode>1</thresholdMode>
|
||||||
|
</xunit>
|
||||||
|
<hudson.plugins.jdepend.JDependRecorder>
|
||||||
|
<configuredJDependFile>build/logs/jdepend.xml</configuredJDependFile>
|
||||||
|
</hudson.plugins.jdepend.JDependRecorder>
|
||||||
|
<hudson.plugins.violations.ViolationsPublisher>
|
||||||
|
<config>
|
||||||
|
<suppressions class="tree-set">
|
||||||
|
<no-comparator/>
|
||||||
|
</suppressions>
|
||||||
|
<typeConfigs>
|
||||||
|
<no-comparator/>
|
||||||
|
<entry>
|
||||||
|
<string>checkstyle</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>checkstyle</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern>build/logs/checkstyle.xml</pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>codenarc</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>codenarc</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>cpd</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>cpd</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern>build/logs/pmd-cpd.xml</pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>cpplint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>cpplint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>csslint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>csslint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>findbugs</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>findbugs</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>fxcop</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>fxcop</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>gendarme</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>gendarme</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>jcreport</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>jcreport</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>jslint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>jslint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>pep8</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>pep8</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>pmd</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>pmd</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern>build/logs/pmd.xml</pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>pylint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>pylint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>simian</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>simian</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>stylecop</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>stylecop</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern/>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
</typeConfigs>
|
||||||
|
<limit>100</limit>
|
||||||
|
<sourcePathPattern/>
|
||||||
|
<fauxProjectPath/>
|
||||||
|
<encoding>default</encoding>
|
||||||
|
</config>
|
||||||
|
</hudson.plugins.violations.ViolationsPublisher>
|
||||||
|
</publishers>
|
||||||
|
<buildWrappers>
|
||||||
|
<hudson.plugins.ws__cleanup.PreBuildCleanup>
|
||||||
|
<deleteDirs>false</deleteDirs>
|
||||||
|
<cleanupParameter></cleanupParameter>
|
||||||
|
<externalDelete></externalDelete>
|
||||||
|
<disableDeferredWipeout>false</disableDeferredWipeout>
|
||||||
|
</hudson.plugins.ws__cleanup.PreBuildCleanup>
|
||||||
|
</buildWrappers>
|
||||||
|
</project>
|
|
@ -0,0 +1,691 @@
|
||||||
|
<?xml version='1.0' encoding='UTF-8'?>
|
||||||
|
<project>
|
||||||
|
<actions/>
|
||||||
|
<description><img type="image/svg+xml" height="300" src="ws/build/pdepend/overview-pyramid.svg" width="500"></img>
|
||||||
|
<img type="image/svg+xml" height="300" src="ws/build/pdepend/dependencies.svg" width="500"></img></description>
|
||||||
|
<keepDependencies>false</keepDependencies>
|
||||||
|
<properties/>
|
||||||
|
<scm class="hudson.scm.NullSCM"/>
|
||||||
|
<canRoam>true</canRoam>
|
||||||
|
<disabled>true</disabled>
|
||||||
|
<blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
|
||||||
|
<blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
|
||||||
|
<triggers class="vector"/>
|
||||||
|
<concurrentBuild>false</concurrentBuild>
|
||||||
|
<builders>
|
||||||
|
<hudson.tasks.Ant>
|
||||||
|
<targets></targets>
|
||||||
|
</hudson.tasks.Ant>
|
||||||
|
</builders>
|
||||||
|
<publishers>
|
||||||
|
<hudson.plugins.warnings.WarningsPublisher>
|
||||||
|
<healthy></healthy>
|
||||||
|
<unHealthy></unHealthy>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[WARNINGS] </pluginName>
|
||||||
|
<defaultEncoding></defaultEncoding>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<usePreviousBuildAsReference>false</usePreviousBuildAsReference>
|
||||||
|
<useStableBuildAsReference>false</useStableBuildAsReference>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds>
|
||||||
|
<unstableTotalAll></unstableTotalAll>
|
||||||
|
<unstableTotalHigh></unstableTotalHigh>
|
||||||
|
<unstableTotalNormal></unstableTotalNormal>
|
||||||
|
<unstableTotalLow></unstableTotalLow>
|
||||||
|
<unstableNewAll></unstableNewAll>
|
||||||
|
<unstableNewHigh></unstableNewHigh>
|
||||||
|
<unstableNewNormal></unstableNewNormal>
|
||||||
|
<unstableNewLow></unstableNewLow>
|
||||||
|
<failedTotalAll></failedTotalAll>
|
||||||
|
<failedTotalHigh></failedTotalHigh>
|
||||||
|
<failedTotalNormal></failedTotalNormal>
|
||||||
|
<failedTotalLow></failedTotalLow>
|
||||||
|
<failedNewAll></failedNewAll>
|
||||||
|
<failedNewHigh></failedNewHigh>
|
||||||
|
<failedNewNormal></failedNewNormal>
|
||||||
|
<failedNewLow></failedNewLow>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<dontComputeNew>false</dontComputeNew>
|
||||||
|
<doNotResolveRelativePaths>true</doNotResolveRelativePaths>
|
||||||
|
<parserConfigurations/>
|
||||||
|
<consoleParsers>
|
||||||
|
<hudson.plugins.warnings.ConsoleParser>
|
||||||
|
<parserName>PHP Runtime</parserName>
|
||||||
|
</hudson.plugins.warnings.ConsoleParser>
|
||||||
|
</consoleParsers>
|
||||||
|
</hudson.plugins.warnings.WarningsPublisher>
|
||||||
|
<hudson.plugins.checkstyle.CheckStylePublisher>
|
||||||
|
<healthy></healthy>
|
||||||
|
<unHealthy></unHealthy>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[CHECKSTYLE] </pluginName>
|
||||||
|
<defaultEncoding></defaultEncoding>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds>
|
||||||
|
<unstableTotalAll></unstableTotalAll>
|
||||||
|
<unstableTotalHigh></unstableTotalHigh>
|
||||||
|
<unstableTotalNormal></unstableTotalNormal>
|
||||||
|
<unstableTotalLow></unstableTotalLow>
|
||||||
|
<unstableNewAll></unstableNewAll>
|
||||||
|
<unstableNewHigh></unstableNewHigh>
|
||||||
|
<unstableNewNormal></unstableNewNormal>
|
||||||
|
<unstableNewLow></unstableNewLow>
|
||||||
|
<failedTotalAll></failedTotalAll>
|
||||||
|
<failedTotalHigh></failedTotalHigh>
|
||||||
|
<failedTotalNormal></failedTotalNormal>
|
||||||
|
<failedTotalLow></failedTotalLow>
|
||||||
|
<failedNewAll></failedNewAll>
|
||||||
|
<failedNewHigh></failedNewHigh>
|
||||||
|
<failedNewNormal></failedNewNormal>
|
||||||
|
<failedNewLow></failedNewLow>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<pattern>build/logs/checkstyle.xml</pattern>
|
||||||
|
</hudson.plugins.checkstyle.CheckStylePublisher>
|
||||||
|
<hudson.plugins.pmd.PmdPublisher>
|
||||||
|
<healthy></healthy>
|
||||||
|
<unHealthy></unHealthy>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[PMD] </pluginName>
|
||||||
|
<defaultEncoding></defaultEncoding>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds>
|
||||||
|
<unstableTotalAll></unstableTotalAll>
|
||||||
|
<unstableTotalHigh></unstableTotalHigh>
|
||||||
|
<unstableTotalNormal></unstableTotalNormal>
|
||||||
|
<unstableTotalLow></unstableTotalLow>
|
||||||
|
<unstableNewAll></unstableNewAll>
|
||||||
|
<unstableNewHigh></unstableNewHigh>
|
||||||
|
<unstableNewNormal></unstableNewNormal>
|
||||||
|
<unstableNewLow></unstableNewLow>
|
||||||
|
<failedTotalAll></failedTotalAll>
|
||||||
|
<failedTotalHigh></failedTotalHigh>
|
||||||
|
<failedTotalNormal></failedTotalNormal>
|
||||||
|
<failedTotalLow></failedTotalLow>
|
||||||
|
<failedNewAll></failedNewAll>
|
||||||
|
<failedNewHigh></failedNewHigh>
|
||||||
|
<failedNewNormal></failedNewNormal>
|
||||||
|
<failedNewLow></failedNewLow>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<pattern>build/logs/pmd.xml</pattern>
|
||||||
|
</hudson.plugins.pmd.PmdPublisher>
|
||||||
|
<hudson.plugins.dry.DryPublisher>
|
||||||
|
<healthy></healthy>
|
||||||
|
<unHealthy></unHealthy>
|
||||||
|
<thresholdLimit>low</thresholdLimit>
|
||||||
|
<pluginName>[DRY] </pluginName>
|
||||||
|
<defaultEncoding></defaultEncoding>
|
||||||
|
<canRunOnFailed>true</canRunOnFailed>
|
||||||
|
<useDeltaValues>false</useDeltaValues>
|
||||||
|
<thresholds>
|
||||||
|
<unstableTotalAll></unstableTotalAll>
|
||||||
|
<unstableTotalHigh></unstableTotalHigh>
|
||||||
|
<unstableTotalNormal></unstableTotalNormal>
|
||||||
|
<unstableTotalLow></unstableTotalLow>
|
||||||
|
<unstableNewAll></unstableNewAll>
|
||||||
|
<unstableNewHigh></unstableNewHigh>
|
||||||
|
<unstableNewNormal></unstableNewNormal>
|
||||||
|
<unstableNewLow></unstableNewLow>
|
||||||
|
<failedTotalAll></failedTotalAll>
|
||||||
|
<failedTotalHigh></failedTotalHigh>
|
||||||
|
<failedTotalNormal></failedTotalNormal>
|
||||||
|
<failedTotalLow></failedTotalLow>
|
||||||
|
<failedNewAll></failedNewAll>
|
||||||
|
<failedNewHigh></failedNewHigh>
|
||||||
|
<failedNewNormal></failedNewNormal>
|
||||||
|
<failedNewLow></failedNewLow>
|
||||||
|
</thresholds>
|
||||||
|
<shouldDetectModules>false</shouldDetectModules>
|
||||||
|
<pattern>build/logs/pmd-cpd.xml</pattern>
|
||||||
|
<highThreshold>50</highThreshold>
|
||||||
|
<normalThreshold>25</normalThreshold>
|
||||||
|
</hudson.plugins.dry.DryPublisher>
|
||||||
|
<hudson.plugins.plot.PlotPublisher>
|
||||||
|
<plots>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>A - Lines of code</title>
|
||||||
|
<yaxis>Lines of Code</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Lines of Code (LOC)</string>
|
||||||
|
<string>Comment Lines of Code (CLOC)</string>
|
||||||
|
<string>Non-Comment Lines of Code (NCLOC)</string>
|
||||||
|
<string>Logical Lines of Code (LLOC)</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Lines of Code (LOC),Comment Lines of Code (CLOC),Non-Comment Lines of Code (NCLOC),Logical Lines of Code (LLOC)
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>123.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>B - Structures Containers</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Namespaces</string>
|
||||||
|
<string>Files</string>
|
||||||
|
<string>Directories</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Directories,Files,Namespaces</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1107599928.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>C - Average Length</title>
|
||||||
|
<yaxis>Average Lines of Code</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Average Function Length (LLOC)</string>
|
||||||
|
<string>Average Method Length (LLOC)</string>
|
||||||
|
<string>Average Class Length (LLOC)</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Average Class Length (LLOC),Average Method Length (LLOC),Average Function Length (LLOC)
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>523405415.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>D - Relative Cyclomatic Complexity</title>
|
||||||
|
<yaxis>Cyclomatic Complexity by Structure</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Cyclomatic Complexity / Lines of Code</string>
|
||||||
|
<string>Cyclomatic Complexity / Number of Methods</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Cyclomatic Complexity / Lines of Code,Cyclomatic Complexity / Number of Methods
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>186376189.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>E - Types of Classes</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Abstract Classes</string>
|
||||||
|
<string>Classes</string>
|
||||||
|
<string>Concrete Classes</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Classes,Abstract Classes,Concrete Classes</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>594356163.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>F - Types of Methods</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Methods</string>
|
||||||
|
<string>Static Methods</string>
|
||||||
|
<string>Non-Static Methods</string>
|
||||||
|
<string>Public Methods</string>
|
||||||
|
<string>Non-Public Methods</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Methods,Non-Static Methods,Static Methods,Public Methods,Non-Public Methods
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1019987862.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>G - Types of Constants</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Class Constants</string>
|
||||||
|
<string>Global Constants</string>
|
||||||
|
<string>Constants</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Constants,Global Constants,Class Constants</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>217648577.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>I - Testing</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Test Classes</string>
|
||||||
|
<string>Test Methods</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Test Classes,Test Methods</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>174807245.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>AB - Code Structure by Logical Lines of Code</title>
|
||||||
|
<yaxis>Logical Lines of Code</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Classes Length (LLOC)</string>
|
||||||
|
<string>LLOC outside functions or classes</string>
|
||||||
|
<string>Functions Length (LLOC)</string>
|
||||||
|
<string>Logical Lines of Code (LLOC)</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Logical Lines of Code (LLOC),Classes Length (LLOC),Functions Length (LLOC),LLOC outside functions or classes
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>946905520.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>H - Types of Functions</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Functions</string>
|
||||||
|
<string>Named Functions</string>
|
||||||
|
<string>Anonymous Functions</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>Functions,Named Functions,Anonymous Functions</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1174623854.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
<hudson.plugins.plot.Plot>
|
||||||
|
<title>BB - Structure Objects</title>
|
||||||
|
<yaxis>Count</yaxis>
|
||||||
|
<series>
|
||||||
|
<hudson.plugins.plot.CSVSeries>
|
||||||
|
<file>build/logs/phploc.csv</file>
|
||||||
|
<label/>
|
||||||
|
<fileType>csv</fileType>
|
||||||
|
<strExclusionSet>
|
||||||
|
<string>Functions</string>
|
||||||
|
<string>Traits</string>
|
||||||
|
<string>Classes</string>
|
||||||
|
<string>Methods</string>
|
||||||
|
<string>Interfaces</string>
|
||||||
|
<string>Constants</string>
|
||||||
|
</strExclusionSet>
|
||||||
|
<inclusionFlag>INCLUDE_BY_STRING</inclusionFlag>
|
||||||
|
<exclusionValues>
|
||||||
|
Interfaces,Traits,Classes,Methods,Functions,Constants
|
||||||
|
</exclusionValues>
|
||||||
|
<url/>
|
||||||
|
<displayTableFlag>false</displayTableFlag>
|
||||||
|
</hudson.plugins.plot.CSVSeries>
|
||||||
|
</series>
|
||||||
|
<group>phploc</group>
|
||||||
|
<numBuilds>100</numBuilds>
|
||||||
|
<csvFileName>1234245913.csv</csvFileName>
|
||||||
|
<csvLastModification>0</csvLastModification>
|
||||||
|
<style>line</style>
|
||||||
|
<useDescr>false</useDescr>
|
||||||
|
</hudson.plugins.plot.Plot>
|
||||||
|
</plots>
|
||||||
|
</hudson.plugins.plot.PlotPublisher>
|
||||||
|
<org.jenkinsci.plugins.cloverphp.CloverPublisher>
|
||||||
|
<publishHtmlReport>true</publishHtmlReport>
|
||||||
|
<reportDir>build/coverage</reportDir>
|
||||||
|
<xmlLocation>build/logs/clover.xml</xmlLocation>
|
||||||
|
<disableArchiving>false</disableArchiving>
|
||||||
|
<healthyTarget>
|
||||||
|
<methodCoverage>70</methodCoverage>
|
||||||
|
<statementCoverage>80</statementCoverage>
|
||||||
|
</healthyTarget>
|
||||||
|
<unhealthyTarget/>
|
||||||
|
<failingTarget/>
|
||||||
|
</org.jenkinsci.plugins.cloverphp.CloverPublisher>
|
||||||
|
<hudson.plugins.crap4j.Crap4JPublisher>
|
||||||
|
<reportPattern>build/logs/crap4j.xml</reportPattern>
|
||||||
|
<healthThreshold></healthThreshold>
|
||||||
|
</hudson.plugins.crap4j.Crap4JPublisher>
|
||||||
|
<htmlpublisher.HtmlPublisher>
|
||||||
|
<reportTargets>
|
||||||
|
<htmlpublisher.HtmlPublisherTarget>
|
||||||
|
<reportName>API Documentation</reportName>
|
||||||
|
<reportDir>build/api</reportDir>
|
||||||
|
<reportFiles>index.html</reportFiles>
|
||||||
|
<keepAll>true</keepAll>
|
||||||
|
<wrapperName>htmlpublisher-wrapper.html</wrapperName>
|
||||||
|
</htmlpublisher.HtmlPublisherTarget>
|
||||||
|
</reportTargets>
|
||||||
|
</htmlpublisher.HtmlPublisher>
|
||||||
|
<xunit>
|
||||||
|
<types>
|
||||||
|
<PHPUnitJunitHudsonTestType>
|
||||||
|
<pattern>build/logs/junit.xml</pattern>
|
||||||
|
<faildedIfNotNew>true</faildedIfNotNew>
|
||||||
|
<deleteOutputFiles>true</deleteOutputFiles>
|
||||||
|
<stopProcessingIfError>true</stopProcessingIfError>
|
||||||
|
</PHPUnitJunitHudsonTestType>
|
||||||
|
</types>
|
||||||
|
<thresholds>
|
||||||
|
<org.jenkinsci.plugins.xunit.threshold.FailedThreshold>
|
||||||
|
<unstableThreshold>0</unstableThreshold>
|
||||||
|
<unstableNewThreshold>0</unstableNewThreshold>
|
||||||
|
<failureThreshold>0</failureThreshold>
|
||||||
|
<failureNewThreshold>0</failureNewThreshold>
|
||||||
|
</org.jenkinsci.plugins.xunit.threshold.FailedThreshold>
|
||||||
|
<org.jenkinsci.plugins.xunit.threshold.SkippedThreshold>
|
||||||
|
<unstableThreshold>0</unstableThreshold>
|
||||||
|
<unstableNewThreshold>0</unstableNewThreshold>
|
||||||
|
<failureThreshold>0</failureThreshold>
|
||||||
|
<failureNewThreshold>0</failureNewThreshold>
|
||||||
|
</org.jenkinsci.plugins.xunit.threshold.SkippedThreshold>
|
||||||
|
</thresholds>
|
||||||
|
<thresholdMode>1</thresholdMode>
|
||||||
|
</xunit>
|
||||||
|
<hudson.plugins.jdepend.JDependRecorder>
|
||||||
|
<configuredJDependFile>build/logs/jdepend.xml</configuredJDependFile>
|
||||||
|
</hudson.plugins.jdepend.JDependRecorder>
|
||||||
|
<hudson.plugins.violations.ViolationsPublisher>
|
||||||
|
<config>
|
||||||
|
<suppressions class="tree-set">
|
||||||
|
<no-comparator/>
|
||||||
|
</suppressions>
|
||||||
|
<typeConfigs>
|
||||||
|
<no-comparator/>
|
||||||
|
<entry>
|
||||||
|
<string>checkstyle</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>checkstyle</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern>build/logs/checkstyle.xml</pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>codenarc</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>codenarc</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>cpd</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>cpd</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern>build/logs/pmd-cpd.xml</pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>cpplint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>cpplint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>csslint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>csslint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>findbugs</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>findbugs</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>fxcop</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>fxcop</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>gendarme</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>gendarme</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>jcreport</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>jcreport</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>jslint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>jslint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>pep8</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>pep8</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>pmd</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>pmd</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern>build/logs/pmd.xml</pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>pylint</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>pylint</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>simian</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>simian</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<string>stylecop</string>
|
||||||
|
<hudson.plugins.violations.TypeConfig>
|
||||||
|
<type>stylecop</type>
|
||||||
|
<min>10</min>
|
||||||
|
<max>999</max>
|
||||||
|
<unstable>999</unstable>
|
||||||
|
<usePattern>false</usePattern>
|
||||||
|
<pattern></pattern>
|
||||||
|
</hudson.plugins.violations.TypeConfig>
|
||||||
|
</entry>
|
||||||
|
</typeConfigs>
|
||||||
|
<limit>100</limit>
|
||||||
|
<sourcePathPattern></sourcePathPattern>
|
||||||
|
<fauxProjectPath></fauxProjectPath>
|
||||||
|
<encoding>default</encoding>
|
||||||
|
</config>
|
||||||
|
</hudson.plugins.violations.ViolationsPublisher>
|
||||||
|
</publishers>
|
||||||
|
<buildWrappers/>
|
||||||
|
</project>
|
5
site.yml
Normal file
5
site.yml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
- name: "Role for Jenkins/CI instances management"
|
||||||
|
hosts: all
|
||||||
|
roles:
|
||||||
|
- jenkins-php-v1
|
Reference in a new issue