Compare commits
15 Commits
0641ff48fc
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0f94871e6e | ||
|
|
c8d987682c | ||
|
|
aee76fc969 | ||
|
|
3e6d014b99 | ||
| 92dd1c441d | |||
|
|
5b020c7b05 | ||
|
|
e0b605e388 | ||
|
|
8ecef15579 | ||
| c3c92ecd4b | |||
|
|
76d880c31f | ||
|
|
c9495162e3 | ||
|
|
37fc2de34c | ||
| f7c6180b01 | |||
| e923c8c0e2 | |||
| 8c7d3947cb |
130
Jenkinsfile
vendored
130
Jenkinsfile
vendored
@@ -1,130 +0,0 @@
|
||||
pipeline {
|
||||
agent {
|
||||
label 'puppet'
|
||||
}
|
||||
|
||||
post {
|
||||
always {
|
||||
deleteDir() /* clean up our workspace */
|
||||
}
|
||||
success {
|
||||
updateGitlabCommitStatus state: 'success'
|
||||
}
|
||||
failure {
|
||||
updateGitlabCommitStatus state: 'failed'
|
||||
step([$class: 'Mailer', notifyEveryUnstableBuild: true, recipients: 'support@confdroid.com', sendToIndividuals: true])
|
||||
}
|
||||
}
|
||||
|
||||
options {
|
||||
gitLabConnection('gitlab.confdroid.com')
|
||||
}
|
||||
|
||||
stages {
|
||||
|
||||
stage('pull master') {
|
||||
steps {
|
||||
sshagent(['edd05eb6-26b5-4c7b-a5cc-ea2ab899f4fa']) {
|
||||
sh '''
|
||||
git config user.name "Jenkins Server"
|
||||
git config user.email jenkins@confdroid.com
|
||||
git fetch origin
|
||||
source_branch="${gitlabSourceBranch:-${BRANCH_NAME:-${GIT_LOCAL_BRANCH:-$GIT_BRANCH}}}"
|
||||
source_branch="${source_branch#origin/}"
|
||||
source_branch="${source_branch#refs/heads/}"
|
||||
if [ -z "$source_branch" ]; then
|
||||
source_branch="development"
|
||||
fi
|
||||
echo "Using source branch: $source_branch"
|
||||
# Create an isolated build branch from the triggering branch revision.
|
||||
git checkout -B jenkins-build-$BUILD_NUMBER "origin/$source_branch"
|
||||
# Merge the current master into the build branch before validation.
|
||||
git merge origin/master --no-ff || { echo "Merge conflict detected"; exit 1; }
|
||||
'''
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('puppet parser') {
|
||||
steps {
|
||||
sh '''for file in $(find . -iname \'*.pp\'); do
|
||||
/opt/puppetlabs/bin/puppet parser validate --color false --render-as s --modulepath=modules $file || exit 1;
|
||||
done;'''
|
||||
}
|
||||
}
|
||||
|
||||
stage('check templates') {
|
||||
steps{
|
||||
sh '''for file in $(find . -iname \'*.erb\');
|
||||
do erb -P -x -T "-" $file | ruby -c || exit 1;
|
||||
done;'''
|
||||
}
|
||||
}
|
||||
|
||||
stage('puppet-lint') {
|
||||
steps {
|
||||
sh '''/usr/local/bin/puppet-lint . \\
|
||||
--no-variable_scope-check \\
|
||||
|| { echo "Puppet lint failed"; exit 1; }
|
||||
'''
|
||||
}
|
||||
}
|
||||
|
||||
stage('SonarScan') {
|
||||
steps {
|
||||
withCredentials([string(credentialsId: 'sonar-token', variable: 'SONAR_TOKEN')]) {
|
||||
sh '''
|
||||
/opt/sonar-scanner/bin/sonar-scanner \
|
||||
-Dsonar.projectKey=confdroid_java \
|
||||
-Dsonar.sources=. \
|
||||
-Dsonar.host.url=https://sonarqube.confdroid.com \
|
||||
-Dsonar.token=$SONAR_TOKEN
|
||||
'''
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stage('create Puppet documentation') {
|
||||
steps {
|
||||
sh '/opt/puppetlabs/bin/puppet strings'
|
||||
}
|
||||
}
|
||||
|
||||
stage('update repo') {
|
||||
steps {
|
||||
sshagent(['edd05eb6-26b5-4c7b-a5cc-ea2ab899f4fa']) {
|
||||
sh '''
|
||||
git config user.name "Jenkins Server"
|
||||
git config user.email jenkins@confdroid.com
|
||||
git add -A && git commit -am "Recommit for updates in build $BUILD_NUMBER" || echo "No changes to commit"
|
||||
git fetch origin
|
||||
git checkout -B master origin/master
|
||||
git merge --no-ff jenkins-build-$BUILD_NUMBER -m "Merge build $BUILD_NUMBER into master"
|
||||
git push origin master
|
||||
'''
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('Mirror to Gitea') {
|
||||
steps {
|
||||
withCredentials([usernamePassword(
|
||||
credentialsId: 'Jenkins-gitea',
|
||||
usernameVariable: 'GITEA_USER',
|
||||
passwordVariable: 'GITEA_TOKEN')]) {
|
||||
script {
|
||||
sh '''
|
||||
git fetch origin
|
||||
git checkout master
|
||||
git reset --hard origin/master
|
||||
git remote get-url master >/dev/null 2>&1 \
|
||||
&& git remote set-url master https://sourcecode.confdroid.com/confdroid/confdroid_java.git \
|
||||
|| git remote add master https://sourcecode.confdroid.com/confdroid/confdroid_java.git
|
||||
git -c credential.helper="!f() { echo username=${GITEA_USER}; echo password=${GITEA_TOKEN}; }; f" \
|
||||
push --force master refs/heads/master:refs/heads/master
|
||||
'''
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
# Readme
|
||||
|
||||
[](https://jenkins.confdroid.com/job/confdroid_java/)
|
||||
[](https://sonarqube.confdroid.com/dashboard?id=confdroid_java)
|
||||
|
||||
- [Readme](#readme)
|
||||
- [Synopsis](#synopsis)
|
||||
@@ -18,11 +19,11 @@
|
||||
|
||||
## Synopsis
|
||||
|
||||
`confdroid_java` is a Puppet module to automate installation and configuration of java, mainly to install the binaries and main configuration files for use with other modules, like jenkins_cd.
|
||||
`confdroid_java` is a Puppet module to automate installation and configuration of java, mainly to install the binaries and main configuration files for use with other modules, like [confdroid_jenkins](https://sourcecode.confdroid.com/confdroid/confdroid_jenkins).
|
||||
|
||||
## WARNING
|
||||
|
||||
***Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production***
|
||||
> **Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production**
|
||||
|
||||
## Features
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
<div id="content"><div id='filecontents'>
|
||||
<h1 id="label-Readme">Readme</h1>
|
||||
|
||||
<p><a href="https://jenkins.confdroid.com/job/confdroid_java/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_java&style=plastic"></a></p>
|
||||
<p><a href="https://jenkins.confdroid.com/job/confdroid_java/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_java&style=plastic"></a> <a href="https://sonarqube.confdroid.com/dashboard?id=confdroid_java"><img src="https://sonarqube.confdroid.com/api/project_badges/measure?project=confdroid_java&metric=security_hotspots&token=sqb_c7b9021dbe66678773699d0232454ad6cc64234f"></a></p>
|
||||
<ul><li>
|
||||
<p><a href="#readme">Readme</a></p>
|
||||
</li><li>
|
||||
@@ -91,11 +91,13 @@
|
||||
|
||||
<h2 id="label-Synopsis">Synopsis</h2>
|
||||
|
||||
<p><code>confdroid_java</code> is a Puppet module to automate installation and configuration of java, mainly to install the binaries and main configuration files for use with other modules, like jenkins_cd.</p>
|
||||
<p><code>confdroid_java</code> is a Puppet module to automate installation and configuration of java, mainly to install the binaries and main configuration files for use with other modules, like <a href="https://sourcecode.confdroid.com/confdroid/confdroid_jenkins">confdroid_jenkins</a>.</p>
|
||||
|
||||
<h2 id="label-WARNING">WARNING</h2>
|
||||
|
||||
<p><strong><em>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</em></strong></p>
|
||||
<blockquote>
|
||||
<p><strong>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</strong></p>
|
||||
</blockquote>
|
||||
|
||||
<h2 id="label-Features">Features</h2>
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
<div id="content"><div id='filecontents'>
|
||||
<h1 id="label-Readme">Readme</h1>
|
||||
|
||||
<p><a href="https://jenkins.confdroid.com/job/confdroid_java/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_java&style=plastic"></a></p>
|
||||
<p><a href="https://jenkins.confdroid.com/job/confdroid_java/"><img src="https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_java&style=plastic"></a> <a href="https://sonarqube.confdroid.com/dashboard?id=confdroid_java"><img src="https://sonarqube.confdroid.com/api/project_badges/measure?project=confdroid_java&metric=security_hotspots&token=sqb_c7b9021dbe66678773699d0232454ad6cc64234f"></a></p>
|
||||
<ul><li>
|
||||
<p><a href="#readme">Readme</a></p>
|
||||
</li><li>
|
||||
@@ -91,11 +91,13 @@
|
||||
|
||||
<h2 id="label-Synopsis">Synopsis</h2>
|
||||
|
||||
<p><code>confdroid_java</code> is a Puppet module to automate installation and configuration of java, mainly to install the binaries and main configuration files for use with other modules, like jenkins_cd.</p>
|
||||
<p><code>confdroid_java</code> is a Puppet module to automate installation and configuration of java, mainly to install the binaries and main configuration files for use with other modules, like <a href="https://sourcecode.confdroid.com/confdroid/confdroid_jenkins">confdroid_jenkins</a>.</p>
|
||||
|
||||
<h2 id="label-WARNING">WARNING</h2>
|
||||
|
||||
<p><strong><em>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</em></strong></p>
|
||||
<blockquote>
|
||||
<p><strong>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</strong></p>
|
||||
</blockquote>
|
||||
|
||||
<h2 id="label-Features">Features</h2>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user