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

2913 Commits

Author SHA1 Message Date
Alexander Link
a864cf0f60
Fix docker.includes in WhitesourceConfigurationHelper (#1666)
* Fix docker.includes in WhitesourceConfigurationHelper

Not sure, but it seems the [`docker.includes` parameter](https://whitesource.atlassian.net/wiki/spaces/WD/pages/804814917/Unified+Agent+Configuration+File+and+Parameters#UnifiedAgentConfigurationFileandParameters-DockerImages) needs to be a regex.

Our pipeline is failing with:
```
10:22:33  [ERROR] [2020-06-15 08:22:33,740 +0000] - Resolve DockerEntity Exception Dangling meta character '*' near index 0
10:22:33  *.tar
10:22:33  ^
10:22:33  [DEBUG] [2020-06-15 08:22:33,743 +0000] - Resolve DockerEntity Exception {}
10:22:33  java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0
10:22:33  *.tar
10:22:33  ^
10:22:33  	at java.base/java.util.regex.Pattern.error(Unknown Source)
10:22:33  	at java.base/java.util.regex.Pattern.sequence(Unknown Source)
10:22:33  	at java.base/java.util.regex.Pattern.expr(Unknown Source)
10:22:33  	at java.base/java.util.regex.Pattern.compile(Unknown Source)
10:22:33  	at java.base/java.util.regex.Pattern.<init>(Unknown Source)
10:22:33  	at java.base/java.util.regex.Pattern.compile(Unknown Source)
10:22:33  	at org.whitesource.utils.WssStringUtils.isMatchingPattern(WssStringUtils.java:49)
10:22:33  	at org.whitesource.agent.dependency.resolver.docker.DockerResolver.filterTarImagesToScan(DockerResolver.java:296)
10:22:33  	at org.whitesource.agent.dependency.resolver.docker.DockerResolver.resolveDockerEntities(DockerResolver.java:186)
10:22:33  	at org.whitesource.fs.scanOrigins.DockerEntityScanOrigin.scan(DockerEntityScanOrigin.java:66)
10:22:33  	at org.whitesource.fs.scanOrigins.ScanOrigin.runOriginScan(ScanOrigin.java:36)
10:22:33  	at org.whitesource.fs.FileSystemAgent.createProjects(FileSystemAgent.java:132)
10:22:33  	at org.whitesource.fs.Main.scanAndSend(Main.java:157)
10:22:33  	at org.whitesource.fs.Main.main(Main.java:102)
10:22:33  [WARN] [2020-06-15 08:22:33,744 +0000] - Resolve DockerEntity Exception Dangling meta character '*' near index 0
10:22:33  *.tar
10:22:33  ^
```

* Switch docker.includes to slashy string

* Fix docker includes pattern in tests

Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
Co-authored-by: D070410 <srinikitha.kondreddy@sap.com>
2020-06-15 17:02:28 +02:00
Oliver Nocon
f125ba5b60
adding groovy wrapper for containerSaveImage (#1663) 2020-06-15 16:44:49 +02:00
Oliver Nocon
6116fe5528
Decouple config reading and retrieval (#1668)
There are use cases where we need to run `GetStepConfig()` multiple times.
In such cases it is more efficient to load the files once and then resolve the
respective step configuration.
2020-06-15 14:17:59 +02:00
Florian Wilhelm
0fcf1654fe
Install maven artifacts after mta build (#1641)
Extend mta build step to install maven artefacts after build to allow re-using them in later stages (additional unit or integration tests which might not be running as part of the "build" life-cycle).
2020-06-15 12:46:54 +02:00
Stephan Aßmus
f855658e06
Enhance piperutils.Files and mock.FilesMock (#1664)
* Flesh out piperutils.Files and mock.FilesMock functionality
* Avoid a lot of code-duplication via embedding
2020-06-15 09:47:33 +02:00
Gabriel Borges
4e73a699c2
doc(kubernetes): Make plugin link clickable (#1657)
Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
2020-06-15 07:03:53 +02:00
Sven Merk
89f5ca9da1
whitesourceExecuteScan: Fix scanType: docker related issues (#1644)
Co-authored-by: Oliver Feldmann <oliver.feldmann@sap.com>
Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
2020-06-12 16:55:16 +02:00
Oliver Nocon
50b2a2d6fc
Update deprecation message (#1656) 2020-06-12 15:19:13 +02:00
sudeepsukumar
702664645c
feat(newman): fetch xsuaa credentials in newman execution (#1325)
* fetch xsuaa credentials in newman execution

* refactor CfUtils and moving to integration package

* removing CfUtils from old package com.sap.piper

* avoid config.verbose as "null"

* variable renamed for consistent naming

* handling NPE and other comments incorp

* added test cases

Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
Co-authored-by: Christopher Fenner <26137398+CCFenner@users.noreply.github.com>
2020-06-12 10:04:03 +02:00
Daniel Kurzynski
41c1653a06
Fix checkmarx (#1655) 2020-06-12 09:22:22 +02:00
Daniel Kurzynski
d1cdf4449c
Fix reading download cache variables on node (#1660) 2020-06-11 21:59:55 +02:00
Stephan Aßmus
d558db9106
Refactor maven.Evaluate() to take options (#1659)
Co-authored-by: Florian Wilhelm <florian.wilhelm02@sap.com>
2020-06-11 14:02:54 +02:00
Stephan Aßmus
c693c4c7dc
Increase default transport timeout to 3 mins (#1648) 2020-06-10 11:14:55 +02:00
Daniel Kurzynski
d9a8537eb5
Revert to again use curl to download binary (#1637)
Revert "Remove curl for unstashing binary (#1580)"
This reverts commit 8b296f74

Improve error message

Co-authored-by: Christopher Fenner <26137398+CCFenner@users.noreply.github.com>
2020-06-10 10:11:20 +02:00
Christopher Fenner
8e78199cce
chore: emit used project config & defaults to log (#1633)
* print used project config

* print used project defaults
2020-06-10 09:39:29 +02:00
Daniel Kurzynski
1ee13b358b
Store build tool in commonPipelineEnvironment (#1645) 2020-06-09 14:52:03 +02:00
Florian Wilhelm
4295f7a24e
Restore alphabetical order of docs (#1643) 2020-06-09 09:05:28 +02:00
Florian Wilhelm
edef158e61
Document new npmExecuteScripts and mavenBuild steps (#1632) 2020-06-09 08:46:54 +02:00
Stephan Aßmus
56699ab019
Run artifactPrepareVersion in maven container if necessary (#1634)
* The metadata for artifactPrepareVersion-go specifies a container for when the buildTool is maven.
* The alias to 'mavenExecute' was removed. The problem with this is that when a section containers is included in the metadata, dockerImage will always be picked up from mavenExecute, the conditional dependency on buildTool will not even be considered. Parameters such as m2Path, projectSettingsFile and globalSettingsFile should be configured in general/maven if necessary.
* When the step ends up being executed within dockerExecuteOnKubernetes, we need to preserve the .git folder. This folder would normally be excluded by the default excludes of the stash step. There was already a comment that suppressing this behavior by passing useDefaultExcludes: false was problematic (unfortunately without going into details), so I've added a new parameter to dockerExecute and dockerExecuteOnKubernetes named stashNoDefaultExcludes (note the reverted meaning to ease preserving the default behavior when this parameter is not provided). This parameter is passed to piperExecuteBin from the artifactPreferVersion groovy wrapper.
2020-06-08 17:08:05 +02:00
Florian Wilhelm
c490ce9211
Use go-based npmExecuteScripts, mavenBuild in buildExecute (#1622) 2020-06-04 17:53:06 +02:00
Florian Wilhelm
285537f6a4
Automated go dependency update (#1630)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2020-06-04 13:52:19 +02:00
Marcus Holl
f071b4490d
Fix: yaml util handling for boolean with value false (#1629)
* Provide test for yamlUtils substitution with boolean value false

* Fix: handle booleans with value 'false' in yaml substitution

* Improve variable naming
2020-06-04 06:03:12 +02:00
Marcus Holl
0ad38b8621
Timeout for malwarescan (#1623)
Provide a timeout parameters to malwarescan step. This is forwarded to the piper http layer. The default used there is 10 seconds with is not useable for that use case for larger files.
2020-06-03 11:08:34 +02:00
Stephan Aßmus
f90a4f9eae
Provide an ExecRunner implementation for running commands in docker (#1606)
* ExecRunner implementation for executing commands within docker
* Add whole-file example as documentation
2020-06-02 14:24:06 +02:00
Daniel Kurzynski
cf9a41850e
Needed CLI separator for Fortify tools depends on platform (#1616)
* Update fortify.yaml
* src, exclude and pythonAdditionalPaths are now lists of strings
* Re-implement pythonIncludes and pythonExcludes as aliases of src and exclude
* Fix using the correct separator (; on windows, : on everything else)
* Tokenize also python "includes"
* mvnCustomArgs was removed

Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-06-02 13:47:07 +02:00
Florian Wilhelm
7fc9002ce1
Build go binary without debug symbols (#1618)
This produces a much smaller binary for faster downloads.

See https://golang.org/cmd/link/ for docs on -s and -w flag.
2020-06-02 12:32:29 +02:00
Srinikitha Kondreddy
c2de96ab43
Fix credential parameter in the docu (#1597)
Co-authored-by: Christopher Fenner <26137398+CCFenner@users.noreply.github.com>
2020-06-02 10:04:56 +02:00
Stephan Aßmus
a24a7aad23
Fortify: Using mvn to auto-resolve classpath needs additional params (#1607)
* also reduce code duplication in token fetching
* concatenate classpaths from multi-maven projects

Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-05-29 15:42:35 +02:00
Daniel Kurzynski
ae6853ee4d
Use fixed versions for docker images for mtaBuild (#1615) 2020-05-29 13:51:33 +02:00
Stephan Aßmus
c5f3b85037
Strip "./" from artifacts (#1611)
Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-05-29 10:59:55 +02:00
Marcus Holl
c3c486e051
Reload default value cache also in case we have only customDefaultsFromFile present (#1612)
Co-authored-by: Kevin Hudemann <kevin.hudemann@sap.com>
2020-05-28 21:07:30 +02:00
Stephan Aßmus
6a96629d65
Provide a timeout of 20m for the go Integration Tests (#1613)
* Provide a timeout of 20m for the go IT
Default is 10m, see https://golang.org/cmd/go/#hdr-Testing_flags
Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-05-28 18:28:38 +02:00
Daniel Mieg
6db5beb2ec
Increase timeout (#1609)
Co-authored-by: Christopher Fenner <26137398+CCFenner@users.noreply.github.com>
2020-05-28 13:08:26 +02:00
Oliver Nocon
6053cae6c5
Cleanup go.mod (#1603)
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-05-28 11:04:28 +02:00
Daniel Kurzynski
0a4309a2c2
Add build project name (#1610)
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-05-28 10:45:06 +02:00
Maximilian Lenkeit
10e5bf98f8
artifactPrepareVersion: remember original artifact version (#1600)
* Update resources.go

* expose originalArtifactVersion parameter

* re-generate steps

* adjust golden files for generator changes
2020-05-28 10:05:22 +02:00
Christopher Fenner
65a3ecd208
refactor(go): increase retry time for piper binary download (#1591)
* increase retry time

* Update src/com/sap/piper/PiperGoUtils.groovy

Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>

Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
2020-05-28 09:28:31 +02:00
Daniel Kurzynski
3992f17b32
Fix injection of download cache parameters (#1605)
- NPMRegistry was always an empty string
- MTA did not use npm registry
2020-05-27 18:20:10 +02:00
Stephan Aßmus
e6f5544601
Implement YAMLfile.GetCooridnates() (#1604) 2020-05-27 17:20:34 +02:00
Oliver Nocon
5e27d26a7c
whitesourceExecuteScan: add Docker image scanning (#1556)
* whitesourceExecuteScan: add Docker image scanning

* add test

* Update whitesourceExecuteScan.groovy

* Update WhitesourceConfigurationHelper.groovy
2020-05-27 16:27:36 +02:00
Florian Wilhelm
6cbc407af1
Use short warn log level (#1599)
Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-05-27 14:06:09 +02:00
Daniel Kurzynski
aa5566d8af
Add fortify docs (#1598)
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-05-27 13:36:40 +02:00
Daniel Kurzynski
8b296f7420
Remove curl for unstashing binary (#1580) 2020-05-27 13:30:04 +02:00
Florian Wilhelm
0857c9a3c6
Allow custom options for src, exclude in fortify translate (#1592)
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
Co-authored-by: Kevin Hudemann <kevin.hudemann@sap.com>
Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-05-27 11:45:01 +02:00
Marcus Holl
d1b717d7a4
suppress error in log message on case there is no error available (#1594) 2020-05-27 09:31:41 +02:00
Oliver Nocon
243d196283
Add package for whitesource (#1577) 2020-05-26 17:30:45 +02:00
Marcus Holl
2879d98502
Include error in log message (#1535)
* Include error in the log.

In case the default text formatter is used, the error
will be contained in the log, too.

* Avoid stupid nil token printed in error message
2020-05-26 11:06:52 +02:00
Marcus Holl
1836bb728b
Emit piper version to log (#1583)
* introduce variable for piper bin

* log the version of the piper bin

* don't fail with generic message from script execution (sh)
2020-05-26 09:38:47 +02:00
Oliver Nocon
d5d510719d
piperExecuteBin - prevent non-speaking exit code 1 error (#1584)
* piperExecuteBin - prevent non-speaking exit code 1 error

Make sure that error during context resolution gets more context.

* properly provide golang errors

* improve error message, when no details are available

* Add error category

* Update getConfig.go
2020-05-26 07:58:03 +02:00
lndrschlz
80f70aba4a
Error reporting: change category to standard term (#1587)
* streamlined error category with standard term

* remove unused import from test

Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
2020-05-25 22:38:26 +02:00