1
0
mirror of https://github.com/SAP/jenkins-library.git synced 2024-12-14 11:03:09 +02:00
Commit Graph

281 Commits

Author SHA1 Message Date
Marcus Holl
5629bc9d17
Merge pull request #39 from marcusholl/pr/dockerExecuteMoreRobust
Make docker more resilent wrt to environment
2017-12-27 10:43:59 +01:00
Marcus Holl
739b77d6ae Add test for dockerExecute results in local execution 2017-12-27 10:10:20 +01:00
Marcus Holl
4987382cd5 Avoid having the step name redundant 2017-12-27 10:10:18 +01:00
Oliver Feldmann
9fe6d041f8 Cache pip and maven dependencies
To avoid downloading the same things over and over we cache
`$HOME/.cache/pip` for pip and `$HOME/.m2` for maven dependencies.
2017-12-21 15:29:06 +01:00
Oliver Feldmann
613b2ad61d Build docs only for Pull Requests
The check whether the documentation build includes errors or warnings is
only necessary as a voter on the PR.
2017-12-21 15:28:36 +01:00
Oliver Feldmann
1f28e870fe Build documenation with mkdocs
To find errors in the documentation it is build with mkdocs usind strict
mode. Thus warnings also abort the travis build.
2017-12-21 14:48:01 +01:00
Oliver Feldmann
a2708763ee Install mkdocs and material theme using pip
To build the documentation mkdocs, a python package, is necessary. The
material theme is used and also needs to be installed.
Pass PEP370 --user to pip install, otherwise root privileges are needed.
Maven needs to be executed explicitely, as we are modifying the script
lifecycle phase.
2017-12-21 14:46:27 +01:00
Alejandra Ferreiro Vidal
ce8afe679b
Merge pull request #42 from alejandraferreirovidal/addDocu
format docu
2017-12-18 16:49:07 +01:00
Alejandra Ferreiro Vidal
34f8962897 format docu 2017-12-18 14:23:15 +01:00
Alejandra Ferreiro Vidal
bf9ca0218d
Merge pull request #33 from alejandraferreirovidal/workingWithForks
add info about working with forks
2017-12-18 10:00:18 +01:00
Marcus Holl
66a65d3907 Make docker more resilent wrt to environment
We check
  1.) if docker-workflow plugin is installed
  2.) if docker itself is installed on the system hosting Jenkins

If one of the conditions is not fullfilled we try to execute
locally.
2017-12-14 14:53:27 +01:00
Oliver Feldmann
b81ee87218
Merge pull request #37 from o-liver/DocuLink
Correct reference to commonPipelineEnvironment.md
2017-12-14 09:54:05 +01:00
Oliver Feldmann
74f63a1936 Correct reference to commonPipelineEnvironment.md
In configurationLoader.md the reference to commonPipelineEnvironment.md
is wrong and will give you a 404, because commonPipelineEnvironment.md
lies in a separate folder called steps.
The change was already deployed to the gh-pages!
2017-12-13 14:35:23 +01:00
Marcus Holl
b54fd85755
Merge pull request #35 from marcusholl/pr/FixDefaultValueCacheGetInstance
fix default value cache get instance
2017-12-13 08:47:53 +01:00
Marcus Holl
8fc4ae7cdc Avoid getting the unflattened default values
Caused by the missing nonCps annotation the unflatted configuration
tree of all the default values was returned.

After adding the nonCps annotation we get only the default for
either stages or steps and only for the required step/stage.
2017-12-12 16:37:46 +01:00
Marcus Holl
0d2bb41f34 Avoid strange behaviour with return value from DefaultValueCache getinstance 2017-12-12 15:44:37 +01:00
Alejandra Ferreiro Vidal
810f4ed0f1 add info about working with forks 2017-12-06 17:29:16 +01:00
Oliver Feldmann
14e43d9e0e
Merge pull request #17 from o-liver/documentation
Documentation overhaul
2017-12-06 14:34:50 +01:00
Oliver Feldmann
b4a4f135fa Template overhaul
Step template improvements.
Addition of script template.
2017-12-06 13:24:19 +01:00
Oliver Feldmann
8e70c72ea9 Documentation improvements
Slight improvements on various md files.
Deletion of method-based commonPipelineEnvironment documentation as it
is not used.
2017-12-06 13:24:01 +01:00
Daniel Kurzynski
22ee06dc17 Enable configuration via yaml file + mavenExecute as example (#18)
* Enable configuration via yaml file
* Add documentation 
* Add tests
2017-12-06 12:03:06 +01:00
Oliver Feldmann
5c37d62343
Merge pull request #19 from o-liver/contributing
Minor changes to CONTRIBUTING.md
2017-12-05 14:39:01 +01:00
Oliver Feldmann
026e0d3f29
Merge pull request #31 from o-liver/executePipeline
Remove node from test pipeline of executePipeline unit tests.
2017-12-05 14:20:47 +01:00
Oliver Feldmann
772fc50b50 Fix CONTRIBUTING.md
Fix some spelling errors.
2017-12-05 14:18:20 +01:00
Alejandra Ferreiro Vidal
98a08968af
Merge pull request #30 from marcusholl/pr/removeGetGitCoordinates
Remove Utils#retrieveGitCoordinates
2017-12-05 14:15:10 +01:00
Oliver Feldmann
f72d93ae2c Remove node from test pipeline
node() is not necessary in the LesFurets unit tests. This is especially
misleading for the pipelineExecute step, as the step itself opens a node
closure when loading a pipeline. If used like this in Jenkins
unnecessary executors will be used.
2017-12-05 13:33:03 +01:00
Marcus Holl
4a9ec0b20c
Merge pull request #29 from 1084565/master
Build Result Transparency
2017-12-05 09:10:10 +01:00
Marcus Holl
44a3c8f571 Remove Utils#retrieveGitCoordinates
The methods a related to an outdated use case

It was intended for getting the coordinates of a payload repo when the
pipeline repo is specified in the pipeline job.

That has been changed so that the pipeline (or at least a stub pipeline)
is now always contained in the payload repo and the payload repo is
always specified in the pipeline job itself.
2017-12-04 17:06:35 +01:00
Alejandra Ferreiro Vidal
f9ebbfb835
Merge pull request #28 from alejandraferreirovidal/cleanPom
pom clean up
2017-12-04 16:27:36 +01:00
Alejandra Ferreiro Vidal
b0651030c7 clean up pom.xml 2017-12-04 14:15:47 +01:00
Christoph Szymanski
56d08bbb5a
Integrate Travis Build Badge 2017-12-04 14:09:52 +01:00
Marcus Holl
1245528cfa
Merge pull request #22 from marcusholl/pr/fixQuotationInsideNeoDeploy
fix quotation inside neo deploy
2017-12-04 12:12:08 +01:00
Alejandra Ferreiro Vidal
c8c0352058
Merge pull request #24 from alejandraferreirovidal/docuIssue
add further information to library step
2017-12-04 11:08:14 +01:00
Marcus Holl
02d9ed6239 Merge remote-tracking branch 'github/master' into HEAD 2017-12-04 11:05:42 +01:00
Marcus Holl
9d3d6b3f1e
Merge pull request #16 from o-liver/centralPipelineLoadStep
Central pipeline load step
2017-12-04 10:59:29 +01:00
Alejandra Ferreiro Vidal
8cc797d53c add further information 2017-12-04 10:53:16 +01:00
Marcus Holl
36837ad3b8 Prevent pointing to pipelineExecute in case of an failure inside foreign pipeline
In case there is an error in another pipeline step inside a foreign pipeline we got
nevertheless an error explaining there is an issue inside the pipeline load step.
2017-12-04 10:51:42 +01:00
Marcus Holl
15a7e8e3f8 Explain the use case for pipelineExecute 2017-12-04 10:51:42 +01:00
Marcus Holl
88ac3ae43e Rename externalPipelineExecute to pipelineExecute 2017-12-04 10:51:42 +01:00
Marcus Holl
bbe799fd19 Rename centralPipelineLoad step to externalPipelineExecute 2017-12-04 10:51:42 +01:00
Marcus Holl
67630d829b change naming of parameter holding the path to the pipeline script. 2017-12-04 10:51:42 +01:00
Marcus Holl
13139da01e Use a dedicated node() instead of a temporary directory. 2017-12-04 10:51:42 +01:00
Oliver Feldmann
b4d17fa929 Documentation for 'centralPipelineLoad' 2017-12-04 10:51:42 +01:00
Oliver Feldmann
a6df3b3053 'centralPipelineLoad' unit tests
Mocking with LesFurets. Check that everything is at the right place.
1. Test with only the mandatory parameter 'repoUrl'.
1. Test setting all available parameters.
1. Test with no parameters throws Exception for missing mandatory
parameter 'repoUrl'.
2017-12-04 10:51:42 +01:00
Oliver Feldmann
5d5a82929c centralPipelineLoad step
A more convenient way to checkout the project sources. The idea is to
have a Jenkinsfile in the payload repository that only loads the shared
library and then runs this step. This step in turn loads a Jenkinsfile
from another repository.
The repo url, branch, Jenkinsfile path and credentials ID can be
provided to the step. The Jenkinsfile is first checked out to a
temporary folder, before it is loaded.
The payload repo must include a Jenkinsfile to be loaded with this
approach.
2017-12-04 10:51:42 +01:00
Alejandra Ferreiro Vidal
c47ff499fe
Merge pull request #25 from SAP/travis
Create .travis.yml to build project
2017-12-04 10:30:16 +01:00
Christoph Szymanski
98d81c6d6e Create .travis.yml 2017-12-04 10:17:02 +01:00
Marcus Holl
d3efa3edb7 [fix] missing quotes in neoDeploy shell exectution
Without proper quotation characters with a special semantics
on shell level (e.g. "${}", "!", """ gets escaped on shell level
before handed over to the neo tool.

neoExecutable is surrounded by double quotes since we may have
shell ${variables} inside the groovy variable.

All other variables (user, host, account, password) are surrounded
by single quotes since we do not expect to be variables used here.

The neoExecutable is
2017-12-01 09:51:54 +01:00
Marcus Holl
e9a17aa41c Fix mail notification
- send "build failed" mail only when an exception has been received.
 - provide a non empty mail message, since an empty mail body causes the build to fail.
2017-11-22 14:16:28 +01:00
Marcus Holl
a72cd278b4
Merge pull request #5 from marcusholl/pr/piperTestBase
piper test base
2017-11-21 16:42:22 +01:00