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

3084 Commits

Author SHA1 Message Date
Alejandra Ferreiro Vidal
12e1ff0c60
Add mta extension descriptor (#1729)
Co-authored-by: Oliver Feldmann <oliver.feldmann@sap.com>
Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-07-06 12:16:06 +02:00
Florian Wilhelm
209d940522
Cf validate app name (#1759)
CF deployment will fail if you have an _ in the app name. Also in general names should only contain alphanumeric chars. Warn users if it does not.
2020-07-06 11:45:36 +02:00
Oliver Feldmann
cd4e4eb3b4
docs: Fix old protecode host url (#1745)
* Fix old protecode host url

* Update documentation/docs/steps/protecodeExecuteScan.md

* fix trailing space

Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
Co-authored-by: Christopher Fenner <26137398+CCFenner@users.noreply.github.com>
2020-07-06 11:26:37 +02:00
Florian Wilhelm
f8a9abf88c
Automated go dependency update (#1756)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2020-07-03 13:35:09 +02:00
Daniel Kurzynski
3b8253958e
Add documentation to scale the infrastructure with Kubernetes or Jenkins agents (#1740)
Co-authored-by: Kevin Hudemann <kevin.hudemann@sap.com>
Co-authored-by: Florian Wilhelm <florian.wilhelm02@sap.com>
2020-07-03 10:28:48 +02:00
Daniel Kurzynski
e6ab6f815f
Default source for maven deployments to neo (#1755) 2020-07-03 09:56:14 +02:00
Daniel Kurzynski
bfb6fa8b33
Multicloud change config order (#1754) 2020-07-02 16:53:03 +02:00
Oliver Nocon
49b7abb4ca
Fix stashing issue with binrary execution (#1749)
Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-07-02 12:08:56 +02:00
Daniel Kurzynski
be97e07f1c
Expose enableZeroDowntimeDeployment as step parameter (#1751) 2020-07-02 10:50:37 +02:00
Florian Wilhelm
ca425954f9
Update docs on js linting in Cloud SDK Pipeline (#1750) 2020-07-02 10:09:36 +02:00
Florian Wilhelm
b5dbd0dafc
Cf create services in multiclouddeploy step (#1736) 2020-07-01 17:28:50 +02:00
Kevin Hudemann
12455ae747
Separate log folders for neo deployments (#1747)
Previously, all logs were stored in the same folder and in case of an
error all logs in that folder would be returned to the user. Thus, it
is possible that unrelated logs, i.e., from different deployments (in
case of parallel deployments) are returned to the user.
2020-07-01 16:36:08 +02:00
Kevin Hudemann
89e8209f8e
Add isolation for CF Deployments in multicloudDeploy step (#1742)
This change adds isolation to CF deployments, when using blue-green
deployments in multicloudDeploy step.
2020-07-01 16:08:12 +02:00
Marcus Holl
0e19a3e71a
cf login additional opts (#1739)
provide facilities for handing over additional cf login and cf api parameters
2020-07-01 15:19:47 +02:00
Marcus Holl
580e6f8989
More acurate tests for cf login check (#1738)
- mock is used now for cf api commands
  - tests for cf api and cfk login are checking which
    commands are really executed
  - some minor simplifications wrt asserts
2020-07-01 14:19:21 +02:00
Marcus Holl
4f2ba73314
[refactoring] move the shell/command related interfaces into pkg/command (#1737)
* [refactoring] move the shell/command related interfaces into pkg/command

otherwise we are not able to use the corresponding mocks for the items contained in pkg since
these interfaces are not visible from the pkg folder

Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-07-01 11:28:16 +02:00
Daniel Kurzynski
0f6a48bede
Remove defaults for mtaBuild (#1734)
Defaults should only be defined in the metadata file.
2020-07-01 10:14:59 +02:00
Jordan Levin
34967c502c
Whitesource scan (MVP) (#1658)
* Whitesource MVP for Gradle, Golang, and NPM/Yarn

* Refactoring

* Refactor and cleanup, better error checking

* publish stepResults, use pkg/versioning, bubble up errors, add gomod versioning support

* Run gofmt and cleanup comments

* Resolve PR comments

* Update resources/metadata/whitesource.yaml

Co-authored-by: Christopher Fenner <26137398+CCFenner@users.noreply.github.com>

* Only determine project coordinates if they are missing

Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>

* Gradle versioning artifact

* fix gradle artifact version regexp and refactor

* Fix token extraction from output buffer

* Fix some issues with pip and jsonfile versioning logic

* Remove useless spacing

* Remove unnecessary test file and fix naming style for JSONDescriptor

* Automatically download wss-unified-agent if file does not exist

* adds downloadVulnerabilityReport, checkSecurityViolations, minor refactoring

* adds config.ReportDirectoryName, improves readability

* Version-wide reporting for vulnerabilities and list of libraries.

* Refactor and improve build accuracy

* fix sed command

* Add includes file pattern config option

* Adds --exclude command line flag

* run go mod tidy and regenerate step framework

* Fix unit tests

* revert changes

* poll project status before downloading reports

* merge with master

* go mod tidy, go fmt, and fix whitesource unit test

* sync go.mod

* sync go.mod again

Co-authored-by: Christopher Fenner <26137398+CCFenner@users.noreply.github.com>
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
2020-07-01 07:54:13 +02:00
MuellerHenrik
de3afe9476
Change parameters/alias for CfServiceKeyName (#1726)
* Fix alias cfServiceKeyName

* Adapt documentation

* Fix alias use in go files

Co-authored-by: Daniel Mieg <56156797+DanielMieg@users.noreply.github.com>
2020-06-30 15:46:07 +02:00
Oliver Nocon
dc296b0727
Allow retrieving exit code from command execution (#1728)
* Allow retrieving exit code from command execution

This will be helpful to derive error categories in case
an executable provides context-specific error codes.

* make sure that we always have a non 0 exit code for errors
2020-06-30 12:57:27 +02:00
Srinikitha Kondreddy
1387f15ed6
Upgrade cloud mbt tool docker image version (#1735) 2020-06-30 12:23:17 +02:00
Oliver Nocon
ac5ae40ecb
kubernetesDeploy: categorize known errors & fix #1732 (#1727)
* kubernetesDeploy: categorize known errors

* hide Docker secret in log output
2020-06-30 10:48:30 +02:00
Marcus Holl
23fe4dcdcd
handle map[interface]interface{} in yaml utils substitute (#1725)
reality teaches us that we need to handle that type
2020-06-29 08:11:05 +02:00
Alejandra Ferreiro Vidal
775f6d0b2e
add mtaExtensionDescriptor to cf target (#1720) 2020-06-26 15:04:35 +02:00
Oliver Nocon
54850d2ca0
sonarExecuteScan: add error categorization (#1715) 2020-06-26 07:38:27 +02:00
Oliver Nocon
bb8cd30c4c
Extend resource references to cater for secrets (#1718)
* Add secret references to step metadata

* Update references

* update generated files
2020-06-25 16:33:38 +02:00
Marcus Holl
d1130a11ac
Support file modes in file system mock (#1716)
Support file mode in file system mock
2020-06-25 14:39:15 +02:00
andre2007
f0babcade1
feat(sonar): upgrade sonar-scanner-cli to 4.4.0.2170 (#1710)
Co-authored-by: Christopher Fenner <26137398+CCFenner@users.noreply.github.com>
2020-06-25 13:53:22 +02:00
Thorsten Duda
30302ff47a
mbt default version update (#1704)
With devxci/mbtci:1.0.14.1 docker image, UI5 projects
generated from Business Application Studio can be build
out of the box.
2020-06-25 12:16:02 +02:00
Marcus Holl
d53ff9de0b
YamlUtil (prepares for cf deploy) (#1624)
Migrates basically `com/sap/piper/variablesubstitution/YamlUtils.groovy`.
2020-06-25 10:59:30 +02:00
Kevin Hudemann
a4fc7bf4af
Fix error Handling in DefaultValueCache (#1719)
This change fixes the error handling in addDefaultsFromFiles(), i.e.,
using the correct path when calling the readFile step to return the
content of the unsuccessfully parsed yaml file.

Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-06-25 07:58:29 +02:00
Daniel Mieg
f38a50739c
Fix extensions for Post stage of Abap Pipeline (#1714) 2020-06-24 17:44:15 +02:00
Stephan Aßmus
dc99676c8d
Init container map via YAML resource (#1695) 2020-06-24 17:04:58 +02:00
Marcus Holl
295d526531
file system mock: Add capabilities for checks if a file has been written (#1706)
* Add capabilities for checks if a file has been written

With the current file system mock we cannot assert if
a file has been written. E.g. we cannot distiguish between
files added to the virtual file system before the test and files
explicitly written. In contrast to that we can check for deleted
files.

With the change here we get a func HasWritteFile(name).

[Q] Wouln't it be possible to check based on the file content
if a file has been written (the new file should have another
content as the file registered before).
[A] We should not assert some file content here since the
produced file content can be created by another "class" which
is unit tested somewhere else. With that approach we would test
the producer here again.

Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-06-24 11:27:28 +02:00
Alejandra Ferreiro Vidal
3d9606022f
add parallel execution to multicloudDeploy (#670)
* add parallelExecution to multicloudDeploy

adds parallel execution to the step multicloudDeploy

* add log

* fix warning

Co-authored-by: Oliver Feldmann <oliver.feldmann@sap.com>
2020-06-24 10:56:36 +02:00
Oliver Nocon
eafe383d54
Add error category parsing to cmd execution (#1703)
* Add error category parsing to cmd execution

It is now possible to define `ErrorCategoryMapping` as a `map[string][]string` on a `Command`.
The format contains the category as key which has a list of error patterns assigned.
Example:

```
cmd := Command{
  ErrorCategoryMapping: map[string][]string
    "build": {"build failed"},
    "compliance": {"vulnerabilities found", "outdated components found"},
    "test": {"some tests failed"},
  },
}
```

Setting this map triggers console log parsing when executing a command.
If a match is found the error category is stored and
it will automatically be added to the `errorDetails.json`.

* clean up go.mod

* fix test

* fix test

* Update DEVELOPMENT.md

* fix tests

* address long console content without line breaks

* scan condition update

* fix test

* add missing comment for exported function

* Update pkg/command/command.go

Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>

Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
Co-authored-by: Christopher Fenner <26137398+CCFenner@users.noreply.github.com>
2020-06-24 10:04:05 +02:00
Christopher Fenner
1d1bf68d96
fix(security): remove duplicate stage wrapper (#1707)
* remove duplicate stage wrapper

fixes #1705

* Update piperPipelineStageSecurity.groovy

* fix trailing spaces
2020-06-24 08:21:41 +02:00
Christopher Fenner
c42553593e
fix: remove unused variables from generated step coding (#1698)
* remove unused parameters from generated code

* update steps

* update steps

* correct golden files

Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-06-23 18:05:21 +02:00
Daniel Mieg
f348c53989
Add ABAP Environment Pipeline (#1555) 2020-06-23 15:56:56 +02:00
Christopher Fenner
1c1c141f3b
fix(influx): pass Sonar token to influx (#1699) 2020-06-23 14:16:44 +02:00
Daniel Kurzynski
654dea4b3e
Load global extensions in setupCommonPipelineEnvironment (#1688)
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
Co-authored-by: Florian Wilhelm <florian.wilhelm02@sap.com>
2020-06-22 17:52:11 +02:00
lydiazcheng
59f3cddd43
TMS: extend upload mta ext descriptor to node (#1635)
* add APIs for getNodes, getExtDescriptor, putExtDescriptor and uploadExtDescriptor
* add new params and extend the logic to enable upload or update extension descriptor to node
* extends unit tests


Co-authored-by: Zihe Cheng <zihe.cheng@sap.com>
Co-authored-by: Marcus Holl <marcus.holl@sap.com>
2020-06-22 11:34:10 +02:00
Florian Wilhelm
60eefabb20
Install dev deps in mta build (#1685)
Ensure npm dev dependencies are available after mtaBuild as they are required by certain tests.
Co-authored-by: Kevin Hudemann <kevin.hudemann@sap.com>
Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-06-22 10:39:52 +02:00
Kevin Hudemann
60fa1d5bbf
Add Java-/Typescript linting capabilities (#1636)
This change adds linting support for Java-/TypeScript projects based on the checkDefaultLint and checkUserLint steps from Cloud SDK Pipeline.

Following options are supported:

1. Define a linting script named ci-lint in the package.json file(s) of the project
2. Provide a configuration for ESLint as part of the project
3. If none of the above: ESLint is executed with a general purpose configuration.

Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-06-22 10:12:28 +02:00
Daniel Kurzynski
7c0c5242e3
Revert go mod change (#1696) 2020-06-22 10:04:25 +02:00
Oliver Nocon
d8444d51f2
Add possibility to add category to failures (#1692)
* Add possibility to add category to failures

It is now possible to set the error category within the flow.
When exiting the program the error category can be used.

There is  a convenience function available for exiting with a previously set category,
for example

```
log.SetErrorCategory(log.ErrorCompliance)
...
log.FatalError(err, "configuration error")
```

* extend test

* go mod tidy

* add missing comment

* update information about error categories

* Update DEVELOPMENT.md
2020-06-22 08:21:38 +02:00
Daniel Kurzynski
8f9ed0766c
Let json patcher fail if file not found (#1694)
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-06-19 20:13:20 +02:00
Daniel Kurzynski
0d1b94adb3
Add sysadmin capabilities to npmExecuteScripts (#1691) 2020-06-19 16:39:07 +02:00
Daniel Kurzynski
7c441f552f
Make version command a high level command like get-config without resolving the configuration (#1689) 2020-06-19 14:39:19 +02:00
Oliver Nocon
d602c6e2b9
extend security stage (#1687)
* extend security stage

Add new steps
* checkmarxExecuteScan
* fortifyExecuteScan

closes #1650

* update tests
2020-06-19 12:35:02 +02:00