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

268 Commits

Author SHA1 Message Date
Christopher Fenner
257308298d extract map merging to MapUtils (#156)
* Update MapUtils.groovy

* Update ConfigurationMerger.groovy

* tests

* forward skipNull

* Fix indent in tests

* More tests.

* MapUtils simplified wrt deep merge and pruneNulls

* Add test for isMap with null value
2018-06-20 10:15:36 +02:00
Alejandra Ferreiro Vidal
fbefcfeffd include special characters in mta.jar file namex 2018-06-12 19:12:08 +02:00
Marcus Holl
3499d4843c GitUtils: Extract lines matching a pattern from a set of commits
In preparation of SOLMAN features. Here we need to get a change
document ID out of the commit message.

Start and end commit can be provided as well as a log format
and a filter condition.
2018-06-11 09:53:26 +02:00
Marcus Holl
599e8dedbc
Merge pull request #149 from marcusholl/pr/improveShellCallRuleReturnValues
fix: apply same script transformation when registering script and whe…
2018-06-11 09:49:52 +02:00
Marcus Holl
dd36e6ea5b
Merge pull request #152 from marcusholl/pr/neoDeployTestMoreTolerantWrtArgOrder
Make neo command line tests more tolerant wrt to order of args
2018-06-11 09:49:08 +02:00
Marcus Holl
3ae2d0ae47
Merge pull request #150 from marcusholl/pr/insideWorkingTree
git utils: is inside working tree
2018-06-11 09:46:51 +02:00
Daniel Kurzynski
322a437763 Revert "Merge branch 'master' of https://github.com/SAP/jenkins-library"
This reverts commit 65220efb4e, reversing
changes made to cf17510641.
2018-06-08 11:55:38 +02:00
Ramachandra Kamath Arbettu
d78dc454fb Support K8S execution 2018-06-07 13:58:32 +02:00
Florian Wilhelm
6dc13801b0
Disable download logs in Maven by default (#159)
Disable download logs in Maven by default

This commit adds a flag to Maven by default, which disables the messages
like "Downloading from central".

The logger is set to level "warn", so errors will still be visible, but
successful messages won't clutter logs anymore.

This option is also set by default in the GitLab CI template file for
maven.

See [1] for reference on the option.

1: https://stackoverflow.com/a/35653426/8843830
2018-06-06 14:42:47 +02:00
Oliver Nocon
f8e5733486 speed up tests
* use new base class for testing
* initialize jenkins unit test framework only once for all test classes
* minor test cleanups
2018-06-06 11:19:19 +02:00
Oliver Nocon
96cc75d72a pipelineStashFiles - cleanup & documentation
This contains some cleanups to the code
plus documentation for the step
2018-06-01 12:33:06 +02:00
Oliver Nocon
e276f58573 fix tests 2018-05-30 12:58:52 +02:00
Thorsten Duda
2e2b43d68b add missing file 2018-05-30 12:39:01 +02:00
Thorsten Duda
fed20184b4 fix maven execute test 2018-05-30 12:30:26 +02:00
Oliver Nocon
9d0e7eaf4e add steps for file stashing 2018-05-30 12:00:13 +02:00
Marcus Holl
4ca3236ba4 general default section mixed in automatically. 2018-05-30 10:53:21 +02:00
Marcus Holl
8f1e3dfa8f Make neo command line tests more tolerant wrt to order of args 2018-05-28 13:34:19 +02:00
Alejandra Ferreiro Vidal
53e5c0fe6b add multiple versions verification tests 2018-05-24 14:12:14 +02:00
Alejandra Ferreiro Vidal
3c59ac4454
Merge pull request #143 from alejandraferreirovidal/compatibilityCode
compatibility code for new feature
2018-05-24 14:03:23 +02:00
Marcus Holl
d7cfddd182 git utils: is inside working tree 2018-05-11 15:19:43 +02:00
Marcus Holl
e8ced708f6 fix: apply same script transformation when registering script and when quering
avoids trouble in case of multi line scripts.
2018-05-11 14:21:22 +02:00
Marcus Holl
e61f16abfb Check if inside git repo via rev-parse --is-inside-work-tree
This approach works also in case we are in a subdirectory of the git repo,
e.g. in the closure of a dir statement.

The decission is delegate to git rather than using internal knowledge
about git file names. Well, the directory will be always named '.git',
but nevertheless ...

May endup in a false positive in case we did not clone a repo AND there
is another git repo somewhere upwards in the file system. Maybe some
other git repo is located upstairs containing e.g. the jenkins setup.
The advantage of working also for subdirectories outweights the disadvantage
for the false positive. It is not likely that we have to deal with another
git repo upstairs, since the pipeline script is expected to be located in
the payload git repo. A phantom repo upstairs looks like a pure academical
discussion.
2018-05-11 10:04:18 +02:00
Daniel Kurzynski
e8fb41aab6 Add configuration support for postActions (#135) 2018-05-07 10:50:21 +02:00
Alejandra Ferreiro Vidal
9892bff907 compatibility code for new feature 2018-05-04 11:52:51 +02:00
Alejandra Ferreiro Vidal
407b71441c improve log 2018-04-26 18:02:17 +02:00
Alejandra Ferreiro Vidal
3bf3b49880 improve message and add test 2018-04-26 17:29:26 +02:00
Alejandra Ferreiro Vidal
e7b84345ae add file name and extension to mtaJarLocation
Adds the file name and extension to the mtaJarLocation to make the SAP
Multitarget Archive Builder jar file configurable.
2018-04-26 16:17:54 +02:00
Alejandra Ferreiro Vidal
a8a9281093
Merge pull request #138 from alejandraferreirovidal/addToolDescriptorTest
add ToolDescriptorTest
2018-04-25 17:45:55 +02:00
Alejandra Ferreiro Vidal
ce8f66bd12 add ToolDescriptorTest 2018-04-24 15:05:17 +02:00
Marcus Holl
afcb8f2c3f
Merge pull request #133 from marcusholl/pr/fixPackageDeclaration
Fix wrong package declaration
2018-04-24 09:57:04 +02:00
Marcus Holl
651a11f5d9
Merge pull request #136 from marcusholl/pr/useGroovyInIncreaseReadability
Pr/use groovy in increase readability
2018-04-24 09:48:11 +02:00
Daniel Kurzynski
540e8c36db
Fix merging if default values do not exist (#130) 2018-04-23 13:41:22 +02:00
Marcus Holl
62fee7a63c [refactoring] increase readability: warAction 2018-04-20 12:25:15 +02:00
Marcus Holl
73abb0ee99 [refactoring] increase readability: vmSize 2018-04-20 12:24:37 +02:00
Marcus Holl
39d23d29fd [refactoring] increase readability: deployMode 2018-04-20 12:23:26 +02:00
Marcus Holl
3e64f4a130 Fix wrong package declaration 2018-04-20 10:59:32 +02:00
Alejandra Ferreiro Vidal
c04bc79976 add extension to mtaBuild 2018-04-17 17:35:10 +02:00
Alejandra Ferreiro Vidal
64b45a13c4 review 2018-04-12 14:25:28 +02:00
Alejandra Ferreiro Vidal
2eafecf38d check tool on PATH 2018-04-10 10:26:55 +02:00
Alejandra Ferreiro Vidal
60d1b007a8 add JavaArchiveDescriptor 2018-04-10 10:26:45 +02:00
Alejandra Ferreiro Vidal
f29734c6da validate JAVA if it is in PATH 2018-04-10 10:20:43 +02:00
Alejandra Ferreiro Vidal
66c60b4f26 validate NEO if it is in the PATH or current dir 2018-04-10 10:20:42 +02:00
Alejandra Ferreiro Vidal
74ee6128b7 validate MTA if it is located in current dir 2018-04-10 10:20:42 +02:00
Alejandra Ferreiro Vidal
6f1e2cd205 add verifyTool to mtaBuild and neoDeploy 2018-04-10 10:20:37 +02:00
Alejandra Ferreiro Vidal
f6834c9a42 change file utils to bash 2018-04-10 10:05:26 +02:00
Alejandra Ferreiro Vidal
a1a6467495 remove outdated code from step toolValidate 2018-04-10 10:05:25 +02:00
Alejandra Ferreiro Vidal
dafd48504e refactor toolValidate step to tool utils 2018-04-10 10:05:12 +02:00
Daniel Kurzynski
b29de61f3c Fix referencing script in setVersion (#128)
In order to use the configuration the script needs to be forwarded to

* Fix reference to script in tests and steps
2018-04-05 11:36:51 +02:00
Christopher Fenner
b08d26f5fd
Merge pull request #4 from SAP/master
get changes from master
2018-04-05 09:06:09 +02:00
Daniel Kurzynski
fe4707faeb
Improve Docker options configuration and forward from mavenExecute (#123) 2018-03-29 14:13:11 +02:00
Ramachandra Kamath Arbettu
aa681dd166 Fix the syntax error in artifactSetVersion step (#127)
* Update artifactSetVersion.groovy
* Fix tests for artifactSetVersion
2018-03-28 21:38:30 +02:00
Marcus Holl
c8fdbcf263
Merge pull request #124 from IKirilova/master
generate mta.yml from package.json and given applicationName
2018-03-23 10:28:45 +01:00
Irina Kirilova
f70ae7f986 rework after code review 2018-03-21 13:07:26 +01:00
Irina Kirilova
29da70fd72 generate mta from package.json and given applicationName 2018-03-15 14:21:27 +01:00
Christopher Fenner
2bd7ffb529
fix tests 2018-03-14 15:58:16 +01:00
Christopher Fenner
3524f3cade
fix tests 2018-03-14 15:55:56 +01:00
Christopher Fenner
3ca1b6ac12
fix tests 2018-03-14 15:53:22 +01:00
Christopher Fenner
84ee9f2e39
fix test case 2018-03-14 15:45:49 +01:00
Christopher Fenner
cb9b8e6360
add tests 2018-03-14 15:44:04 +01:00
Marcus Holl
9529954acd Disable tool validation inside neoDeploy and mtaBuild
We know about two issues:

1.) groovy based file systems checks seems to be executed on Jenkins
    master even if there is a node which is dispatched to a slave.
2.) Environment variable contained in the value of a provided
    variable are not expanded. Example: In case we describe neoHome like
    "$JENKINS_HOME/tools/neo" we do not expand $JENKINS_HOME. Hence the
    file exists check for file '$JENKINS_HOME/tools/neo' fails.
2018-03-08 11:23:56 +01:00
Marcus Holl
840f93208c Merge tag 'mtaMerge2' into HEAD 2018-03-06 17:24:58 +01:00
Marcus Holl
86ab0e04c3 Merge remote-tracking branch 'mholl/pr/javaHomeValidationInsideNeoDeploy' into HEAD 2018-03-06 17:24:31 +01:00
Marcus Holl
690e59f4d2 erge remote-tracking branch 'mholl/pr/javaHomeValidationInsideMtaBuild' into HEAD 2018-03-06 17:16:21 +01:00
Marcus Holl
3cafd0b6d5 Validating mta jar inside mtaBuild 2018-03-06 16:53:14 +01:00
Marcus Holl
3bc53b906f Make test more tolerant 2018-03-06 16:50:03 +01:00
Marcus Holl
b8760201c7 Emit log message in case tool validation is skipped. 2018-03-06 16:44:11 +01:00
Marcus Holl
d93b865f8d java home validation inside mtabuild 2018-03-06 16:44:11 +01:00
Marcus Holl
9c544bb6e0 Make test more tolerant 2018-03-06 16:28:01 +01:00
Marcus Holl
23e6e87b75 Validation of neo toolset inside neoDeploy 2018-03-06 16:12:53 +01:00
Marcus Holl
bc9298738b Make validation of shell calls more tolerant.
Needed in order to deal with new shell calls wrt 'which neo.sh'.
2018-03-06 16:02:49 +01:00
Marcus Holl
1c45b043e5 java home validation inside neoDeploy 2018-03-06 15:37:52 +01:00
Marcus Holl
048e004ca7 Make validation of shell calls more tolerant.
Needed in order to deal with new shell calls wrt 'which neo.sh'.
2018-03-06 15:37:52 +01:00
Florian Wilhelm
f6c71a8484 Use executeMaven step for artifact versioning (#114)
* Execute Maven inside Docker container
* Fix test
2018-03-06 13:28:57 +01:00
Florian Wilhelm
ff46bb0f00 Make commit of new version optional in artifactSetVersion step (#112)
* Make commit of new version optional in `artifactSetVersion` step

You might not want to add a new commit for each version, when versions
are automatically created. This commit makes this feature optional, but
enabled by default to maintain API compatibility.

* Set `gitCommitId` if null

* Improve documentation of `commitVersion` parameter

* Allow to operate in a code checkout without `.git` directory
2018-03-05 09:04:53 +01:00
Florian Wilhelm
f18f11fafe Use UTC time zone for artifact version time stamp (#111)
By using UTC, we avoid potential issues when development happens in
different time zones. Also, daylight saving time does not exist in UTC.
2018-03-02 16:35:35 +01:00
Christopher Fenner
d10b94a166
Update SetupCommonPipelineEnvironmentTest.groovy 2018-03-02 10:57:50 +01:00
Christopher Fenner
e38eda33a7
Update DockerExecuteTest.groovy 2018-03-02 10:55:27 +01:00
Christopher Fenner
83d75e99b7
Update DockerExecuteTest.groovy 2018-03-02 10:54:50 +01:00
Christopher Fenner
76fd77f907
Update ChecksPublishResultsTest.groovy 2018-03-02 10:53:46 +01:00
Christopher Fenner
3ed2d64195
Update ArtifactSetVersionTest.groovy 2018-03-02 10:53:09 +01:00
Christopher Fenner
a54e1a7611
use new rules 2018-02-28 13:12:03 +01:00
Christopher Fenner
158a60aecc
use new rules 2018-02-28 13:11:09 +01:00
Christopher Fenner
4fcc911e6c
use new rules 2018-02-28 11:55:19 +01:00
Christopher Fenner
0ba1a2c594
add JenkinsEnvironmentRule 2018-02-28 11:54:52 +01:00
Christopher Fenner
be26c8dc1e
add JenkinsStepRule 2018-02-28 11:54:39 +01:00
Marcus Holl
efafd9a44a [refactoring] resolve data inside merge (#101) 2018-02-28 11:42:19 +01:00
Christopher Fenner
9d070767fc
remove duplicate class 2018-02-26 09:03:55 +01:00
Alejandra Ferreiro Vidal
e7bf3b1b0f mtaJarLocation as step configuration 2018-02-20 12:02:33 +01:00
Alejandra Ferreiro Vidal
5256494ffa
Merge pull request #88 from marcusholl/pr/useSetsInsteadOfLists
Replace usage of lists for denoting keys by sets.
2018-02-20 11:54:30 +01:00
Marcus Holl
5fe76eb9dc Replace usage of lists for denoting keys by sets.
The characteristics of a list are
  o the order of the entries is significant
  o duplicates are allowed

The characteristics of a set are
  o the order is not significant
  o duplicates are not allowed.

When describing keys for a step the characteristics of a
set applies here, whereas the characteristics of a list does
not apply.
2018-02-19 12:53:08 +01:00
Christopher Fenner
26bbee5fb4
use perfReport step 2018-02-19 10:26:50 +01:00
Alejandra Ferreiro Vidal
c12af7b8d5 add custom configuration test 2018-02-19 09:40:14 +01:00
Alejandra Ferreiro Vidal
ac6cc2aa60
Merge pull request #79 from alejandraferreirovidal/cleanUpNeoDeploymentTest
clean up NeoDeploymentTest
2018-02-19 09:34:15 +01:00
Alejandra Ferreiro Vidal
0510e087b8
Merge pull request #82 from alejandraferreirovidal/addTests
improve tests coverage
2018-02-16 17:26:55 +01:00
Alejandra Ferreiro Vidal
b243ce4e5c improve test coverage 2018-02-16 17:15:41 +01:00
Alejandra Ferreiro Vidal
f156509484
Merge pull request #78 from alejandraferreirovidal/mtaBuildTest
create test files before class - MTABuildTest
2018-02-16 17:09:27 +01:00
Christopher Fenner
98b5590d53
Merge branch 'master' into publishTestResults 2018-02-16 10:32:24 +01:00
Christopher Fenner
be5b5ec9fa
Merge pull request #58 from CCFenner/publishCheckResults
add new step checkResultsPublish
2018-02-16 10:30:59 +01:00
Alejandra Ferreiro Vidal
0703147802 create test files before class 2018-02-14 14:36:50 +01:00
Alejandra Ferreiro Vidal
b813dc4b42 add missing package 2018-02-14 11:32:52 +01:00