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

154 Commits

Author SHA1 Message Date
Marcus Holl
a7bc198342 neo toolset not configurable (#484) 2019-03-07 12:53:25 +01:00
Daniel Kurzynski
6e26d78047
Improve neo deploy (#440)
The following features were added:
Lock resources for deployment
New parameters: environment, vmArguments
Assert password does not start with @
Link to cloud cockpit
Only execute rolling update if app is running
Show logs if deployment failed
Restart app after normal deployment
Use neo namespace for parameters
Align parameter names with neo sdk: size, application, source
Remove vmSize check as done by the tool itself
2019-01-28 11:32:24 +01:00
Marcus Holl
f81b83169a Better readable rule names: readFileRule 2019-01-23 14:54:52 +01:00
Marcus Holl
e4c3228e25 Better readable rule names: writeJsonRule 2019-01-23 14:54:51 +01:00
Marcus Holl
7ba695e767 Better readable rule names: readJsonRule 2019-01-23 14:54:51 +01:00
Marcus Holl
da1969e089 Better readable rule names: writeFileRule 2019-01-23 14:54:51 +01:00
Marcus Holl
9b1397e998 Better readable rule names: loggingRule 2019-01-23 14:54:50 +01:00
Marcus Holl
994e1f1692 Better readable rule names: shellRule 2019-01-23 14:54:49 +01:00
Marcus Holl
f48c8a038e Merge remote-tracking branch 'github/master' into HEAD 2018-11-08 15:58:26 +01:00
Thorsten Duda
3896177b3e
Merge branch 'master' into pr/changeDocumentIdInCommonPipelineEnv 2018-11-08 11:00:28 +01:00
Marcus Holl
e354da8a05 Merge remote-tracking branch 'github/master' into HEAD 2018-11-07 11:44:15 +01:00
Marcus Holl
b8c0c8e6b3 Cache transport request Id in common pipeline environment 2018-11-06 15:36:39 +01:00
Marcus Holl
76be6f0b24 Cache change document id in common pipeline environment 2018-11-06 14:36:40 +01:00
Marcus Holl
1a62b263fe fix set the build status 2018-10-31 12:52:37 +01:00
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