Marcus Holl
8aa22d179a
Denote use case in test name for creating transport request
2019-02-14 12:04:45 +01:00
Marcus Holl
02e832b008
Test for RFC transportRequestCreate
2019-02-14 12:01:28 +01:00
Marcus Holl
80bd4cf11c
Support code page parameter
2019-02-14 09:36:51 +01:00
Oliver Nocon
793df723cf
add step slackSendNotification ( #338 )
...
* add step slackSendNotification
This step allows to send Slack notifications in case of pipeline failures.
* add SWA reporting
* remove allowBuildFailure
* add GENERAL_CONFIG_KEYS
* update STEP_NAME
* add missing import
* fix MD findings
* adjust rule name to be aligned with #455
2019-02-13 16:45:35 +01:00
Marcus Holl
af5d67aaf7
docker params as map when releasing tr via rfc
2019-02-13 14:58:46 +01:00
Marcus Holl
5f07490cf2
Unstash in loop only if identifier is available
...
In case unstashAll is called with a Set containing a null value we get
an ugly message in the log:
Unstash failed: null (Could not instantiate {name=null} for UnstashStep(name: String):
This can be avoided by unstashing only in case we have an ID.
2019-02-13 14:31:25 +01:00
Marcus Holl
2d7079a8c9
Merge remote-tracking branch 'github/master' into HEAD
2019-02-13 09:05:28 +01:00
Marcus Holl
ff88bfa79f
Merge remote-tracking branch 'github/master' into HEAD
2019-02-13 08:51:26 +01:00
Marcus Holl
0ae673c021
docker params as map when creating tr via rfc
2019-02-12 15:35:27 +01:00
Marcus Holl
dc1dfd622c
docker params as map for fileUpload
2019-02-12 15:22:22 +01:00
Marcus Holl
9305a52d0f
Merge remote-tracking branch 'github/master' into HEAD
2019-02-08 12:38:59 +01:00
Christopher Fenner
d657f0dc28
testsPublishResults: add option to fail the build on test errors ( #472 )
...
* add option to fail the build on test errors
* fix typo
* add test cases
* adjust docs
* set build result
* add hasTestFailure utils method
* use utils method
* use dedicated type
* adapt tests
* handle missing test actions
* Update testsPublishResults.md
* Update JenkinsUtils.groovy
* Update JenkinsUtils.groovy
* Update JenkinsUtils.groovy
* remove comments
* adapt test case
* Update TestsPublishResultsTest.groovy
2019-02-08 12:30:59 +01:00
Marcus Holl
8b13164d74
[fix] remove inapproriate package statement ( #497 )
...
The test class is in the default package and not in a package 'steps'.
2019-02-08 12:03:41 +01:00
Marcus Holl
fe147eff81
Handle parameters as env vars instead of options for RFC upload
...
options are not supported for dockerExecuteOnKubernetes, but
environment variables are. Hence we switch to environment variables
which works on both, plain docker and on kubernetes.
Using env vars is the cleaner approach anyway.
2019-02-08 12:03:05 +01:00
Marcus Holl
d369d3cd4a
Remove println statements from tests
...
Nobody will have a look at println statements emitted by tests. Proper way is to assert.
* log is empty, not sure if it makes sense to assert that the log is empty.
* result is already asserted, so everything is fine there ...
2019-02-07 17:03:32 +01:00
Marcus Holl
6b4d2ba33e
Remove println statements from default registered sh closure
...
We should try to avoid promting statements to the log during tests. This is basically
some kind of manual/visual checking of conditions. This does not work since in most cases
nobody scans test logs manually/visually. I think this is often a smell for missing assertions.
2019-02-07 16:58:49 +01:00
Marcus Holl
8d1786fa8d
DevelopmentInstance for upload file rfc
2019-02-07 11:46:45 +01:00
Marcus Holl
3a982a8f04
provide developent instance for transportRequest release RFC
2019-02-07 11:24:39 +01:00
Marcus Holl
e9c1834f9d
Provide development instance for create transport request RFC
2019-02-07 11:12:17 +01:00
Marcus Holl
d8d2d8b1fd
abap development client always under changeManagement.rfc
2019-02-07 10:11:22 +01:00
Marcus Holl
fd5a07d403
applicationId -> applicationName for RFC file upload
2019-02-07 08:29:53 +01:00
Marcus Holl
200e18f468
transportRequestRelease sanity checks for CTS case.
2019-02-06 15:31:50 +01:00
Marcus Holl
608b76f1c8
transportRequestRelease sanity checks for SOLMAN case.
2019-02-06 15:16:27 +01:00
Marcus Holl
663b840dee
Add test for release transport CTS success
2019-02-06 14:23:00 +01:00
Marcus Holl
1b202f879a
Provide flag for skipping docker image pulls ( #407 )
...
* Provide flag for skipping docker image pulls
Usefull for testing while developing images. Without pulling images it is possible to
use images available in the local registry only.
2019-02-06 08:48:33 +01:00
Marcus Holl
d8b0de3735
Add step test: transportRequestRelease for CTS fails
2019-02-05 17:29:45 +01:00
Oliver Nocon
74366631b5
Project "Piper" Template: framework and structure ( #476 )
...
* Project "Piper" Template: framework and structure
This is the first in a series of Pull-Requests to provide a fully functional Pipeline template into the library.
This PR contains:
* general Pipeline structure incl. tests
* Pipeline initialization incl. tests
* Hollow pipeline stages incl. tests
* first set of default values
* add gitUrls to commonPipelineEnvironment
* set correct git information on commonPipelineEnvironment
2019-02-05 15:37:59 +01:00
Marcus Holl
6f96f3d87b
Add test for transportRequestRelease failure for type RFC
2019-02-01 13:29:41 +01:00
Marcus Holl
59bff987d7
Test for releaseTransportRequest RFC sanity checks
2019-02-01 13:23:08 +01:00
Marcus Holl
0d2dec0922
Introcude test transportRequest RFC release
2019-02-01 13:08:25 +01:00
Marcus Holl
cb61d80e12
development client for RFC release transport not hard coded anymore
2019-02-01 13:08:25 +01:00
Marcus Holl
c785e53317
split releaseTransportRequest method into three methods
...
one for each BackendType.
2019-02-01 13:08:24 +01:00
Marcus Holl
6072bbd280
Remove outdated comment from test class
2019-01-31 14:12:05 +01:00
Marcus Holl
6a6e075da8
Provide test for transport request create rfc fails
2019-01-31 14:02:54 +01:00
Marcus Holl
71148faa42
Test for create transport request via RFC succeeds.
2019-01-31 13:06:52 +01:00
Marcus Holl
3ea0cb6208
Remove duplicate test
...
the other test doing the same is testReleaseTransportRequestFailsSOLMAN
2019-01-31 12:38:46 +01:00
Marcus Holl
5302d1d7b1
Merge remote-tracking branch 'github/master' into work
2019-01-31 09:55:21 +01:00
Marcus Holl
06f48ce5e7
Test failure case RFC upload ChangeManagement
2019-01-31 09:39:34 +01:00
Oliver Nocon
3b2e42c74f
Add step containerExecuteStructureTest ( #441 )
...
* add step containerExecuteStructureTest
* include PR-review feedback
* documentation
2019-01-31 09:39:13 +01:00
Marcus Holl
80c7da76f4
Test good case RFC upload ChangeManagement
2019-01-31 09:31:52 +01:00
Christopher Fenner
bca5b8ccf1
Add step uiVeri5ExecuteTests ( #469 )
...
* add defaults for uiVeri5 step
* add step and tests
* correct parameter names
* add empty docs
* add docs annotations
* remove not needed parameter
* add docs annotations
2019-01-31 09:16:34 +01:00
Marcus Holl
01cdfc5d91
Make clear in the testName which type we test.
2019-01-31 09:06:02 +01:00
Marcus Holl
34b0e1f4f5
RFC: upload failure test
2019-01-30 17:34:16 +01:00
Marcus Holl
40d89f2e5d
Test: sanity check parameters
2019-01-30 17:34:16 +01:00
Marcus Holl
dfe69d7a31
Test: upload rfc success
2019-01-30 16:57:25 +01:00
Marcus Holl
a70fc10ae0
Parameter applicationURL instead of file path
2019-01-30 16:02:48 +01:00
Marcus Holl
ce710dfa38
More consistent test names for transportRequestUploadFile
2019-01-30 15:13:10 +01:00
Marcus Holl
88d50a0a10
Fix error message: cmclient, rfc client
2019-01-30 15:13:10 +01:00
Marcus Holl
661745fd81
Merge remote-tracking branch 'github/master' into HEAD
2019-01-30 15:01:09 +01:00
Christopher Fenner
def66f4ffa
extend Analytics ( #439 )
...
* add extension mechanism for analytics
* add sha1 hashing
* correct return types
* correct registerEventListener method
* decrese visibility of createInstance
* correct typo
* catch exceptions from tests
* correct test case
* Update Analytics.groovy
* rename to Telemetry
* rename file
* fix typo
* add test case for generateSha1
* expose methods to tests
* add clear method for tests
* change return type
* add test for Telemetry class
* replace UtilsTests
* remove unused imports
* make default reporter static
* add stage parameters to payload
* simplify SHA1 method
* remove obsolete method
* remove obsolete methods
* remove outdated tests
2019-01-30 12:39:33 +01:00
Florian Geckeler
a72e33f488
Stop old instance only if it exists in CloudFoundry
...
If there was no instance deployed in CF and blue-green deployment was activated stopping the old instance caused a failure of the pipeline, even if the application was deployed successfully.
With that change the failure of the pipeline will be avoided in case of no old application is available.
2019-01-30 10:07:00 +01:00
Bernd Maier
c7a6b073fc
RFC release transport
2019-01-29 14:57:31 +01:00
Daniel Kurzynski
09a2e3f090
Remove compatibility for neoDeploy
2019-01-28 12:35:35 +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
Christopher Fenner
152c0e3682
Merge branch 'master' into pr/betterReadableRuleNames
2019-01-23 16:53:52 +01:00
Marcus Holl
ddc796b85d
Better readable rule names: readJsonRule
2019-01-23 14:54:52 +01:00
Marcus Holl
9e56ebc724
Better readable rule names: dockerExecuteRule
2019-01-23 14:54:52 +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
afa8889e9d
Better readable rule names: errorRule
2019-01-23 14:54:51 +01:00
Marcus Holl
5c0abfdff8
Better readable rule names: readYamlRule
2019-01-23 14:54:51 +01:00
Marcus Holl
4e01b94458
Better readable rule names: dockerExecuteRule
2019-01-23 14:54:50 +01:00
Marcus Holl
b486f32dc1
Better readable rule names: stepRule
2019-01-23 14:54:50 +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
9bf38f9a76
Merge remote-tracking branch 'github/master' into HEAD
2019-01-23 14:26:30 +01:00
Oliver Nocon
05e0d958da
dockerExecute - fix issue when image does not contain which ( #458 )
...
command `which` requires a dedicated OS package to be installed.
In case a Jenkins Master or Jenkins Slave Image does not contain `which`, although `docker` command is available the step took a wrong turn.
This removes the check using `which` since checking `docker ps` is sufficient.
2019-01-23 14:19:36 +01:00
Marcus Holl
2330bfdcf4
Merge remote-tracking branch 'github/master' into HEAD
2019-01-23 12:34:25 +01:00
Oliver Nocon
27c3891685
deployToCloudFoundry - patch mta blue-green deployment ( #457 )
...
mta deploy plugin has flag:
` --no-confirm` which is described as _"Do not require confirmation for deleting the previously deployed MTA apps"_
This flag is essentials for performing fully automated blue-green deployments.
2019-01-22 16:13:59 +01:00
Marcus Holl
c8c96f11e3
Escape blanks when contained in env values for docker
2019-01-18 15:48:58 +01:00
sbmaier
423c9f52ba
cloudFoundryDeploy: fix naming of Influx step ( #450 )
...
* fix naming Influx
* fix test for influx name change
2019-01-18 15:33:36 +01:00
Christopher Fenner
f6647d9ce5
newmanExecuteTests: use user-specific .npm-global directory ( #447 )
...
* use user-specific .npm-global directory
* Update newmanExecute.groovy
* fix typo
* Update NewmanExecuteTest.groovy
* Update NewmanExecuteTest.groovy
2019-01-18 13:14:39 +01:00
Marcus Holl
0914f6920a
no docker pull
2019-01-18 10:26:27 +01:00
Marcus Holl
cca46d509b
Upload binaries to transport requests via RFC
2019-01-18 10:26:03 +01:00
Oliver Nocon
e11478ca00
cloudFoundryDeploy - add deployment reporting to Influx ( #421 )
...
Add reporting of operations-related data to Influx (if configured), like:
* Version of deployed artifact
* Deployment time
* Target infrastructure for deployment
2019-01-18 08:25:22 +01:00
Oliver Nocon
98139bb498
influxWriteData - support Influx tags ( #420 )
...
* influxWriteData - support Influx tags
In order to better query data in Influx, tags needs to be written.
This change allows filling tag data via the Influx plugin.
2019-01-17 15:42:03 +01:00
Marcus Holl
db5022a4ff
New Scenario Step: SAP UI5 on SAP Cloud Platform ( #388 )
...
This scenario builds a UI5 app and deploys it to SAP Cloud Platform (neo).
2019-01-15 13:32:01 +01:00
Oliver Nocon
20a54cf094
dockerExecute - extend Kubernetes capabilities ( #432 )
...
allow `dockerExecute` to pass on to dockerExecuteOnKubernetes
* containerCommand
* containerShell
2019-01-14 14:43:07 +01:00
Oliver Nocon
4064e6ffe1
piperStageWrapper - switch to parameter map for extensions ( #424 )
...
switch to using a parameter map
2019-01-14 10:25:47 +01:00
Oliver Nocon
724a851bcd
executeDockerOnKubernetes - specify custom shell ( #428 )
...
Depending on the Docker image used the default shell will not work in certain cases.
This extends the executeDockerOnKubernetes step to be able to use a custom shell according to https://github.com/jenkinsci/kubernetes-plugin#specifying-a-different-shell-command-other-than-binsh
2019-01-08 19:44:28 +01:00
Marcus Holl
d6372d5d96
Merge remote-tracking branch 'github/master' into HEAD
2018-12-19 13:18:00 +01:00
Oliver Nocon
130e607446
influxWriteData - fix issue when running in POST ( #413 )
...
influxWriteData requires a node to be executed.
In a declarative pipeline the POST section by default does not provide a node/agent.
This adds a parameter to force creation of a node/agent.
2018-12-12 17:33:36 +01:00
Marcus Holl
0751eda1ee
Merge remote-tracking branch 'github/master' into HEAD
2018-12-12 12:24:26 +01:00
Marcus Holl
45170e979e
Adapt mta build test test JenkinsShellCallRule
...
a lot of code can be replaced by configuring the JenkinsShellCallRule accordingly. At the time when
this test was provided there was not JenkinsShellCallRule ...
2018-12-12 12:14:14 +01:00
Marcus Holl
bf881bfc13
Merge remote-tracking branch 'github/master' into HEAD
2018-12-12 12:05:24 +01:00
Oliver Nocon
e556fba950
add wrapper for stages contained in library ( #341 )
...
* add wrapper for stages contained in library
`piperStageWrapper` provides a wrapper for stages which we may include into the library.
It will take care about extension capabilities, locking, node handling, ... which should be a capability of every stage contained in the library.
2018-12-12 11:45:11 +01:00
Marcus Holl
51afc894e5
Implement hashCode/equals/toString for JenkinsShellCallRule
...
* toString is helpful for troubleshooting during developing tests
* equals/hashCode are required in case somebody would like to register
some responses again (e.g. register something valid almost all the time, and
register something more specific for a certain test).
2018-12-10 16:23:24 +01:00
thorstenwillenbacher
4d06cf151e
Merge branch 'master' into pr/moreLoggingAndFailfastInMtaBuild
2018-12-06 15:12:46 +01:00
Marcus Holl
dc780b1248
[fix] Make regex in test Operating System independent.
...
We searched for the slash, but on win like operating system we have of course a backslash.
2018-11-28 11:52:37 +01:00
Oliver Nocon
2881877322
newmanExecute - adapt to changes ( #400 )
...
* script now mandatory, thus passing it to dockerExecute
* html reporter needs to be installed separately
2018-11-28 09:25:34 +01:00
Florian Geckeler
32e20a7293
Provide option to Stop and not delete old instance on BlueGreenDeploy ( #394 )
...
* Provide option to Stop and not delete old instance on BlueGreenDeploy
* Default is still delete old instance
Closes #323
2018-11-27 11:47:44 +01:00
Oliver Nocon
d65a010158
testsPublishResults: Make jUnit pattern more universal ( #386 )
...
* Make jUnit pattern more universal
* update documentation & test
2018-11-16 08:57:09 +01:00
Marcus Holl
a84d91f6bf
More logging and be failfast around mtaYamlFile
...
- don't log a message and continue when it is clear that we cannot succeed
together with error raised later during attempt not parse a non-existing
file
- More log output in order to clarify what happens with mta.yaml
2018-11-13 09:23:26 +01:00
Marcus Holl
5c4007180c
Merge remote-tracking branch 'github/master' into HEAD
2018-11-12 13:11:54 +01:00
Marcus Holl
f48c8a038e
Merge remote-tracking branch 'github/master' into HEAD
2018-11-08 15:58:26 +01:00
Marcus Holl
7063aa1249
set build to unstable in case old config framework is used.
...
protected by feature flag (so we can test it manually already).
2018-11-08 13:11:24 +01:00
Marcus Holl
b3c5cba707
Notify about old config framework from neo deploy.
2018-11-08 12:18:49 +01:00
Christopher Fenner
9a1ab37c0b
add new step karmaExecuteTests ( #351 )
...
* add new step for karma execution
* add defaults
* Update karmaExecuteTests.groovy
* add key comments
* add test case
* docs
* add step docs
* add step docs
* Update karmaExecuteTests.md
* complete docs
* Update karmaExecuteTests.md
* init `script` the "new way"
* Update karmaExecuteTests.groovy
* Update karmaExecuteTests.groovy
2018-11-08 12:15:15 +01:00