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

240 Commits

Author SHA1 Message Date
Marcus Holl
c9457df43c Improve rule setup 2018-10-31 12:48:49 +01:00
Marcus Holl
ea23d65594 Merge remote-tracking branch 'github/master' into HEAD 2018-10-30 17:01:19 +01:00
Marcus Holl
c03a75da9f Ensure script is mandatory parameter
... only in case a step uses the script at all.
2018-10-30 16:24:47 +01:00
Marcus Holl
a2393c3f92 merge remote-tracking branch 'github/master' into HEAD 2018-10-23 09:08:59 +02:00
Marcus Holl
d4f9171247 erge remote-tracking branch 'github/master' into HEAD 2018-10-18 11:02:09 +02:00
Oliver Nocon
455461d3c1
add step pipelineRestartSteps (#337)
This step allows to restart a set of steps in order to retry in case of e.g. infrastructure failures which first need to be fixed.

* update documentation
2018-10-18 08:51:48 +02:00
Marcus Holl
f47d540aa3 Introduce dedicated factory method for configuration helper 2018-10-17 11:15:37 +02:00
Florian Wilhelm
7f7afdad1a
Implement workaround for incompatible change in cloud foundry API (#343) 2018-10-17 11:01:09 +02:00
Christopher Fenner
34b675a030
handle test repositories (#324)
* handle test repositories

* use GitUtils

* add test case

* fix test cases

* return stash name

* handle seleniumExecuteTests step

* Revert "handle seleniumExecuteTests step"

This reverts commit 2b33d274fe.

* handle seleniumExecuteTests step

* add import of GitUtils
2018-10-08 11:30:42 +02:00
Marcus Holl
f14781d913 Report all missing mandatory parameters instead of only the first one 2018-09-27 11:13:47 +02:00
Marcus Holl
09e4e999a2 Merge remote-tracking branch 'mholl/pr/shStdoutOrReturnStatus' into HEAD 2018-09-27 09:10:06 +02:00
Marcus Holl
752993aefa Merge remote-tracking branch 'github/master' into HEAD 2018-09-27 08:24:04 +02:00
Marcus Holl
56d150932f release transport CTS support 2018-09-25 12:34:52 +02:00
Marcus Holl
4d7274ee45 Introduce backend type for releasing transports 2018-09-25 10:50:05 +02:00
Marcus Holl
de05e1dc55 Merge provide either stdout or return status 2018-09-25 10:11:14 +02:00
Marcus Holl
ddbb09fa66 transport request create CTS 2018-09-25 09:27:11 +02:00
Marcus Holl
f34308ffe0 upload file to transport for CTS use case 2018-09-24 15:08:01 +02:00
Marcus Holl
8a5685bae7 Merge remote-tracking branch 'github/master' into HEAD 2018-09-21 12:18:25 +02:00
Marcus Holl
123ce3a603 Merge remote-tracking branch 'github/master' into HEAD 2018-09-21 11:20:14 +02:00
Marcus Holl
e40e3eb72f Introduce backendType in ChangeManagement util internally
without affecting method signatures.
2018-09-18 14:54:40 +02:00
Marcus Holl
726fbe36ab Limit usage of ConfigurationHelper to the builder pattern
it is the duty of the configuration helper to build a map
providing the configuration. Having facilites to use the
ConfigurationHelper as some kind of configuration registry
makes life more complicated.
2018-09-17 12:56:18 +02:00
Marcus Holl
dc9ce9a732 Remove generic gitUtils from BasePiperTest
there is only one test class making use of it left. This test class is the
GitUtilsTest itself.

Hence moving this member downwards in the test class hierarchy into GitUtilsTest.

I doubt it makes sense to make use of a generic git utils mock somewhere else since this basically
means to test the GitUtils class in the conxtext of other examinees. For that there is no need.
The GitUtils class should be tested by the corresponding test class, but not in a transive manner
by other tests. For all other tests a specific git utils mock should be provided mocking the corresponding
method class. This is already the case today, otherwise we would have more test classes making use
of the generic git utils mock.
2018-09-13 16:01:35 +02:00
Marcus Holl
d31e0e73cb Remove not (really) needed declarations of prepareObjectInterceptors
- In ArtifactSetVersionTest the method was declared,
    but not used at all.
  - In MtaUtilsTest there was a particular Object created
    for the sole purpose of serving as script.
    For that we have the nullScript.
  - In DockerArtifactVersioningTest 'this' was configured to
    serve as script. There is basically no reason why the
    instance of the JUnitTest should serve as script.
    Instead we have the nullScript for that purpose.
2018-09-10 16:52:44 +02:00
Marcus Holl
55a952522b ConfigurationHelper: replace all occurences of GString by java.lang.String
GStrings might be handed over e.g. via signature to steps.

GStrings in configuration makes it harder to deal with configurations.
E.g.
   ```if(param == 'a' || param == 'b')``` returns true if a is a GString representing 'a'
but
   ```if(param in ['a', 'b'])``` returns false.

It would be possible not to use the ```in``` notation in our code. But this
increases readability.

GString are not significant and can be replaced by the corresponding java.lang.String
representation without loss of information. Hence it is justified IMO to ensure
there are no GStrings contained in the configuration map.
2018-09-10 10:10:19 +02:00
Marcus Holl
0dd74fe684 GitUtils: provide method for checking worktree is clean. 2018-09-07 12:38:14 +02:00
Marcus Holl
5f66113c37 no script in method signatures. 2018-09-06 16:45:30 +02:00
Marcus Holl
2b95be12aa Ensure proper initialization of ConfigurationHelper
Up to now we had two constructors, one with a Script and the other one with a map holding some defaults.
In case the constructor with the map was called the step name was uninitialized
2018-09-06 16:21:38 +02:00
Marcus Holl
b65eca35b2 MapUtils: Provide method for traversing of nested maps. 2018-09-06 12:17:55 +02:00
Marcus Holl
138a41f02a Merge remote-tracking branch 'github/master' into work 2018-09-04 10:42:36 +02:00
Marcus Holl
6b7dc48c44 Be more flexible with JenkinsReadYaml rule
When we register a closure as file, the closure will be exectutd.
Otherwise we return what is registered.

This gives us a maximum level of flexibility. We can throw exceptions (e.g. FileNotFound) as
as test setup requires this, in simple cases we provide the yaml as a string.
2018-09-04 09:46:59 +02:00
Marcus Holl
26ecbe5013 Provide option for registering file for read yaml.
We can now registering files to JenkinsReadYamlRule by
providing the file name alongside with the expected content
(or e.g. an expception)

With that change it is possible to remove pwd statements
from mtaBuild. These statements was used in order to pass
a temporary directory inside the mtaBuild (code under test).
This is not needed anymore since we can register the files
directly.

Having pwd implies working with absolute pathes which is
also a no-go when working with docker, since the absolute
pathes inside and outside docker are normally not the same.

For pathes relative to a build root directory it is rather
easy to keep the pathes consistent the same.

Adjust sources according to registering yaml file to jenkins rule.

For mtaBuild this means also: get ride of absolute pathes for denoting the yaml file.
Having absolute pathes makes it difficult/impossible to work also with dockerized versions
of mtaBuild since the absolute pathes are most probably not the same inside and outside
the docker container, but the relatives pathes can be kept the same easily.
2018-09-03 15:43:15 +02:00
Marcus Holl
f2feb8f5ad Ensure consistent location for files used by versioning tests (#278) 2018-08-31 14:13:11 +02:00
Marcus Holl
8a019f5b86 Remove read yaml rule from common rules
read yaml rule is a very frequently used rule. But having the rule in the common rules
means we cannot register text or files to that rule, which makes it less handy to work
with yaml files in the tests.
2018-08-31 10:22:46 +02:00
Christopher Fenner
4425629ee7
notify about deactivated SWA reporting (#261)
* report deactivated SWA reporting

* Update Utils.groovy

* add tests

* add test cases

* use hamcrest matchers in tests

* check for missing call to web analytics

* Update UtilsTest.groovy
2018-08-29 10:01:16 +02:00
Roland Stengel
67429626a7 cmclient call needs to quote the file path 2018-08-28 15:29:08 +02:00
Marcus Holl
edee92020c No versionBackup files for mvn versioning (#259) 2018-08-22 09:59:19 +02:00
Ramachandra Kamath Arbettu
c84114c3df
Enable support for executing on K8S as a step (#231)
* Create executeDockerOnKubernetes.groovy

* Update dockerExecute.groovy

* Create SysEnvTest.groovy

* Update default_pipeline_environment.yml

* Update executeDockerOnKubernetes.groovy

* Create utils object

* update docker image

* Update mavenExecute.groovy

* Use pipeline-lib than piper

* Check container name

* Always change ownership to 1000

* Check for map

* Fix command

* Move chmod to docker execute

* Use generic name for the pod

* runAsPod has been added

* Return false if script has no k8smapping

* fix syntax error

* Null checks

* Returnn dockerImage name

* Check method body

* Return container name

* Cleanup echos

* Use runAsPod

* Rename step

* Use official jenkins JNLP agent image

* Construct containersMap

* Check if kubernetes plugin is active

* Support JaaS

* pass script object

* Move configuration to default section

* Use generic flag to check if running in k8s

* fix jnlp agent name

* Solve travis errors

* Improvements to config and changes to name of the method

* Improvements to config

* Fix type

* Rename stash config

* add import

* Fix map order

* Fix jnlp agent name

* cleanup config usage

* Check if config is enabled

* Use nested k8s mapping

* Support custom docker workspace and move flag to env

* Feature/k8s stage (#1)

* Use nested k8s mapping

* Support custom docker workspace and move flag to env

* Check dockerOptions value

* Support local execution

* Add tests for dockerExecute

* Move config to step and Fix tests

* Use step configuration while running as a pod

* Streamline parameter and config initialization

* Streamline parameter and tests

* Cleanup and align variable name

* Use default JNLP agent if one not defined in config

* Add tests for runInsidePod. Ensure lowercase container names.

* Improve tests and remove unused code block

* Fix permission issues

* Perform stashing and unstashing inside container

* Use custom jnlp agent due to user id restriction

* Fix tests after jnlp agent change

* Address review comments

* Initialize script to default value if null

* Address review comments

* Update exeception handling and documentation

* Improve documentation

* correct indent

* Link documents to the index page

* Merge containerExecute and dockerExecuteOnKuberenetes step and address comments.

* Update dockerExecute.md

* Update dockerExecuteOnKubernetes.md

* Update default_pipeline_environment.yml

* update documentation

* Update documentation. Use annotation for singleton

* Update DockerExecuteOnKubernetesTest.groovy

* Update dockerExecute.groovy

* Update dockerExecuteOnKubernetes.groovy

* Improve documentation and test case names

* neoDeploy: switch to chained ConfigurationHelper (#244)

* switch neoDeploy to chained ConfigurationHelper

* update imports

* Improve tests

* Address review comments

* Improve documentation

* made dockerImage non-mandatory parm, improved test

* add comment regarding userid assumption
2018-08-21 15:45:59 +02:00
Christopher Fenner
6007f54074
use new config handler in steps (#253)
* use new config handler

* use new config handler

* add reporting

* Update checksPublishResults.groovy

* remove unused ConfigurationMerger methods

* fix typo

* revert changes on script loading

* remove outdated test case

* Add missing import
2018-08-15 11:53:28 +02:00
Marcus Holl
bfb131407d Merge remote-tracking branch 'github/master' into HEAD 2018-08-14 12:13:30 +02:00
Oliver Nocon
71f7f05427
add telemetry reporting to steps (#243)
add telemetry to all steps using ConfigurationHelper.
Other steps need to be switched to ConfigurationHelper first.

update docs
2018-08-09 11:35:33 +02:00
Thorsten Willenbacher
9dfc7fcd01 refactor withCredentials to ChangeManagement util class
fix tests to match refactoring
2018-08-09 11:03:30 +02:00
Oliver Nocon
65b582dc9d
artifactSetVersion - add new artifact types & cleanup (#242)
* artifactSetVersion - add new artifact types & cleanup

added:
* dlang
* golang
* npm
* pip
* scala

* add documentation update
2018-08-08 22:21:26 +02:00
Christopher Fenner
30f0c5a6cc
correct test cases 2018-08-01 08:50:21 +02:00
Christopher Fenner
0db93df011
fix closure 2018-08-01 08:41:49 +02:00
Christopher Fenner
8c7dc44d1d
add tests 2018-08-01 08:30:10 +02:00
Oliver Nocon
d844b23b90
add cloudFoundryDeploy step (#173)
* add cloudFoundryDeploy step
* added cf-cli docker image
* support existing parameters
* support check script with flexible STATUS_CODE
* add mandatory parameters
* fix compatibility handling
* address PR feedback
* fix access to smokeTest script
* make credentialsId mandatory to avoid NPE
2018-07-30 09:28:24 +02:00
Marcus Holl
f16d5c766b Merge remote-tracking branch 'github/master' into HEAD 2018-07-25 12:26:20 +02:00
Christopher Fenner
aa57127e84
Merge branch 'master' into pr/readNestedProperties 2018-07-25 09:49:33 +02:00
Marcus Holl
411fd7fe62 Access to nested properties
yaml configuration supports nested properties. With this change
we can read those nested properties.
2018-07-25 09:47:16 +02:00
Marcus Holl
b65a5d5699 Release transport request: decouple tests
Focus on only one class under test, not having the step and the util class under
test at once.
2018-07-23 09:39:40 +02:00
Marcus Holl
0678019efb Merge remote-tracking branch 'github/master' into HEAD 2018-07-18 12:49:41 +02:00
Marcus Holl
f2bf406dee Merge remote-tracking branch 'github/master' into HEAD 2018-07-18 12:42:54 +02:00
Roland Stengel
4851ba94bf drop NEO version verification - remove neo version check 2018-07-18 09:46:11 +02:00
Roland Stengel
38360f1d0c drop NEO version verification - introduce getVersion 2018-07-17 20:56:31 +02:00
Marcus Holl
4f8f7be6aa Access to nested properties
yaml configuration supports nested properties. With this change
we can read those nested properties.
2018-07-16 17:26:22 +02:00
Marcus Holl
bb0e9b92ce transport request upload file: decouple tests. 2018-07-13 16:09:51 +02:00
Marcus Holl
8d60a81ec5 Read transportId from commit history: split getChangeID method 2018-07-12 14:17:33 +02:00
Christopher Fenner
aa865f145f
Merge pull request #172 from SAP/CCFenner/mtaVersioning
add versioning for MTAs
2018-07-11 11:53:20 +02:00
Marcus Holl
5e09e2fb88 No forwarding of config map in to ChangeManagement class. 2018-07-10 12:30:31 +02:00
Marcus Holl
bb2ed27c10 Switch from gitLabel to gitChangeDocumentLabel
since we will have two labels in future. One for scanning changeDocumentIds and
another one for scanning transportRequestIds
2018-07-10 11:15:09 +02:00
Marcus Holl
71ca78e0a9 Switch from git_xxx to gitXxx like properties 2018-07-10 11:14:43 +02:00
Marcus Holl
44cee0475d
Merge pull request #176 from marcusholl/pr/decoupleTests
Pr/decouple tests
2018-07-06 13:09:44 +02:00
Marcus Holl
aa900d7dcf withMandatoryParameter supports a error message from the caller 2018-06-29 11:15:37 +02:00
Marcus Holl
d270a2d232 Decouple tests: transport request upload file 2018-06-29 10:53:47 +02:00
Marcus Holl
5a73af4c02 Decouple tests: transport request create 2018-06-29 10:15:20 +02:00
Marcus Holl
1493393805 Improve log message in case a call to cmclient for getting change status fails. 2018-06-28 15:37:14 +02:00
Marcus Holl
bdef708522 Assert logging 2018-06-28 15:37:14 +02:00
Marcus Holl
6d943d2005 Support CMCLIENT_OPTS
needed e.g. for providing a trust store.
2018-06-28 15:37:13 +02:00
Marcus Holl
5d0ffa3e69 Make use of unified cmCommandLine 2018-06-28 15:37:13 +02:00
Marcus Holl
38c6d35adb Introde getCMCommandLine 2018-06-28 15:37:13 +02:00
Marcus Holl
9d0eb79d94 filter null values from changeId array. 2018-06-28 15:37:13 +02:00
Marcus Holl
c494e33c1d Tests for isChangeInDevelopment 2018-06-28 15:37:13 +02:00
Marcus Holl
37ba20d060 more tests 2018-06-28 15:37:13 +02:00
Marcus Holl
00304d67db [refactoring] getting the gitUtils mock 2018-06-28 15:37:12 +02:00
Marcus Holl
9adad5ba37 Get changeDocumentId from git commits. 2018-06-28 15:37:12 +02:00
Christopher Fenner
44ff690a77
fix test issue on Windows 2018-06-27 14:38:57 +02:00
Christopher Fenner
70f7e5a6fa
fix test issue on Windows 2018-06-27 14:28:16 +02:00
Christopher Fenner
251f731ca8
fix test issue on Windows 2018-06-27 14:19:40 +02:00
Christopher Fenner
a93443ebdf add MTA versioning class 2018-06-27 11:08:09 +02:00
Christopher Fenner
e51b82e0ea
fix imports 2018-06-25 22:49:34 +02:00
Christopher Fenner
b891b36fbf
add further test case 2018-06-25 22:45:43 +02:00
Christopher Fenner
1c924cc8df
add test for MtaMultiplexer 2018-06-25 14:53:28 +02:00
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
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
e276f58573 fix tests 2018-05-30 12:58:52 +02:00
Marcus Holl
4ca3236ba4 general default section mixed in automatically. 2018-05-30 10:53:21 +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
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
Daniel Kurzynski
540e8c36db
Fix merging if default values do not exist (#130) 2018-04-23 13:41:22 +02:00
Marcus Holl
3e64f4a130 Fix wrong package declaration 2018-04-20 10:59:32 +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
f6834c9a42 change file utils to bash 2018-04-10 10:05:26 +02:00
Alejandra Ferreiro Vidal
dafd48504e refactor toolValidate step to tool utils 2018-04-10 10:05:12 +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
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
Marcus Holl
efafd9a44a [refactoring] resolve data inside merge (#101) 2018-02-28 11:42:19 +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
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
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
Alejandra Ferreiro Vidal
5bfb68d24a move utils test classes to com.sap.piper folder
The folder com.sap.piper was created and the corresponding test classes
were not moved. Furthermore, a new UtilsTest class was created when this
test class did already exist, and the same tests were already
implemented, also this new test class uses the lesfurets testing
framework when it is not needed, so this new test class is removed and
the test class that there was before is kept.
2018-02-09 18:08:11 +01:00
Christopher Fenner
157c9cacfe
Merge pull request #66 from CCFenner/deepConfigMerge
extend config merger to handle deep config structures
2018-02-08 08:50:20 +01:00
Christopher Fenner
3bf3a2a9f5
Update ConfigurationMergerTest.groovy 2018-02-07 22:53:47 +01:00
Oliver Nocon
fbd03a88da
Step for automatic versioning (#65)
It contains:

* versioning step artifactSetVersion
* versioning implementation for Maven & Docker
* enhancements to commonPipelineEnvironment
* extended default configuration
* new utils object for git-related tasks
* automated tests incl. new Rules and resources
* incorporated PR feedback
* step documentation
2018-02-07 13:17:33 +01:00
Christopher Fenner
6300008fe2 adopt tests 2018-02-07 12:01:46 +01:00
Christopher Fenner
edf3deaa9c rename method 2018-02-05 20:31:30 +01:00
Christopher Fenner
88d09eee63 filter by keyset 2018-02-05 19:54:04 +01:00
Christopher Fenner
192d96d082 add MapUtils 2018-02-02 09:30:31 +01:00
Christopher Fenner
41e85c035c extend config merger to handle deep config structures 2018-02-02 09:05:25 +01:00
Marcus Holl
ef0b1bd9dd [refactoring] Rule handling
Starting point for that refactoring: it turned out that the tests
was not independent. The DefaultValueCache which is a singleton
keeps the status over various tests. Success of test execution depends
on the order test execution.

We have now
  * a dedicated rule for resetting the default value cache
  * JenkinsConfiguration rule (which already provided facilities for
    dealing with the configuration) has been replaced by a readYaml rule.
    From the PipelineUnit test framework we get already a handler for
    libraryResource, which is also part of the setup of the default
    values.
  * An auxiliar class which combines the
      * JenkinsSetupRule (registers the lib)
      * JenkinsReadYamlRule (provides facilities for Yaml parsing)
      * JenkinsResetDefaultValueCacheRule (cleans up the DefaultValueCache)
    into a rule chain. By using this rule chain we ensure that our
    setup OK (piper lib registered, and default config can be setup in
    a clean way).
2018-01-29 09:42:23 +01:00
Oliver Nocon
749aa5e7ed
InfluxDB support (#52)
* adding step for writing metrics to InfluxDB including dependencies
* added documentation
* incorporated PR feedback
2018-01-24 09:55:38 +01:00
Sven Merk
fe89155a04
Initial check-in of lesfurets test improvements (#23)
Adding lesfurets test framwork improvements via helper classes
2018-01-10 10:27:55 +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