Commit Graph
45 Commits
Author SHA1 Message Date
Kevin Hudemann 83daa33e65 Update defaults for npmExecuteScripts and mavenExecuteIntegration to run install (#2369)
This change updates the defaults for npmExecuteScripts to run npm install and mavenExecuteIntegration to install all artifacts by default.
2020-11-13 13:01:02 +01:00
Kevin Hudemann 7a04bb9749 Add runStep conditions for mavenExecuteIntegration and npmExecuteScripts in Integration stage (#2361)
This change adds runStep conditions for the steps mavenExecuteIntegration and
npmExecuteScripts for the stage Integration.
2020-11-12 16:50:57 +01:00
Kevin Hudemann 8fd6927854 Add mavenExecuteIntegration, mavenExecuteStaticCodeChecks, npmExecuteLint and npmExecuteScripts to piperPipelineStagePRVoting (#2352)
This change adds the steps mavenExecuteIntegration, mavenExecuteStaticCodeChecks,
npmExecuteLint and npmExecuteScripts to the stage piperPipelineStagePRVoting.
2020-11-12 09:25:44 +01:00
Kevin Hudemann a04e53df2a npmExecuteScripts: allow passing a list of build descriptors to execute scripts for (#2312)
This change extends the npmExecuteScripts step to support execution of
npm scripts for specific modules. Previously, it was not possible to
execute npm scripts only for specific modules. Now, if the parameter
buildDesriptorList is set the scripts defined by the runScripts
parameter will be executed for the modules defined by
buildDescriptorList. Note, in this case the buildDescriptorExcludeList
will be ignored.
2020-11-04 16:20:26 +01:00
Kevin Hudemann e4979af112 Add default stashes to metadata of cloudFoundryDeploy (#2307)
This change adds the default stash deployDescriptor to the metadata of the new
cloudFoundryDeploy Go step.
2020-11-04 13:55:26 +01:00
Kevin Hudemann f13ccabe1e Add preDeploymentHook to multicloudDeploy step (#2308) 2020-11-03 16:46:33 +01:00
Kevin Hudemann 546bc7b692 Add default stashes for npmExecuteScripts (#2271) 2020-10-30 09:25:26 +01:00
Kevin Hudemann 228d1c1e82 Cloud SDK: Update legacy config with integration tests stage merge (#2215) 2020-10-22 09:52:19 +02:00
Kevin Hudemann dc3bf0e68d Cloud SDK: Update stash settings, stage defaults and containers map for a single call of integration stage (#2212)
This change updates the stash settings, stage defaults and the containers map to
allow a single call of `piperPipelineStageIntegration` in SAP Cloud SDK Pipeline.
2020-10-21 10:51:39 +02:00
Kevin Hudemann 6c2f8365c1 WhiteSource: Remove performance-tests from default maven excludes (#2176)
This change fixes an issue with the default maven excludes where the step would fail when performance tests are present in the project, but are not a module in the root pom. In addition, it provides a small fix of a method where a wrong path was passed to an error.
2020-10-15 08:08:00 +02:00
Kevin Hudemann 91067d219a Fix Cloud SDK Pipeline stash settings for security stage (#2114)
This change fixes the stash settings for the security stage in Cloud
SDK Pipeline. Previously, the SOURCES stash was not unstashed, thus
potentially existing extensions could not be found.
2020-10-02 15:52:16 +02:00
Kevin Hudemann 08a5189f39 Update Cloud SDK stash settings and stage defaults (#2105)
This change updates and cleans up the Cloud SDK specific stash settings
and stage defaults.
2020-10-02 09:05:42 +02:00
Kevin Hudemann b47e08781c Remove absolute links from Cloud SDK docs section (#2089) 2020-09-29 14:23:46 +02:00
Kevin HudemannandStephan Aßmus e2aea73022 Preparation to switch to piperPipelineStageSecurity for Cloud SDK pipeline (#2082)
Updates containersMap, stash settings, stage defaults and legacy config settings.

Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-09-29 12:25:57 +02:00
Kevin Hudemann b3a5d1e55e Update Cloud SDK documentation (#2081)
This change updates the Cloud SDK documentation with the changes of migrating to
the piperPipelineStageInit and update the legacy configuration settings accordingly.
In addition, it fixes the documentation of the step debugReportArchive and includes
it in the list of library steps.
2020-09-29 11:26:55 +02:00
Kevin Hudemann 80250ab2b9 Extend piperPipelineStageInit to support init of Cloud SDK (#2062)
This change adds necessary functionality to support initialization of
Cloud SDK pipelines. In addition, it adds the support to check the
pipeline configuration for legacy configuration parameters.
2020-09-28 10:44:56 +02:00
Kevin Hudemann a075526d15 Extend piperPipelineStageSecurity to run detectExecuteScan step (#2069)
This change adds the detectExecuteScan step to the
piperPipelineStageSecurity.
2020-09-28 09:56:57 +02:00
Kevin Hudemann fda932aff5 Add capabilities to check for breaking changes in config (#2045)
This change adds the capabilities to check if the user still uses legacy
configuration parameters and allows to fail the pipeline in the
piperPipelineStageInit in case incompatible configuration is found.

Thus, it is now possible to describe breaking changes in the
configuration with the use of a yaml resource file. In this file, one can
describe the changes in configuration, e.g., when a configuration parameter
was replaced or removed. A concrete example for such a file for the Cloud
SDK Pipeline is part of this PR.
2020-09-21 14:29:07 +02:00
Kevin Hudemann a57e3bf0ce Fix runStep condition for mavenExecuteStaticCodeChecks (#2009)
This change fixes the step mavenExecuteStaticCodeChecks to skip execution
if no tool is configured. Previously, the step was executed even when both 
supported tools, i.e., PMD and SpotBugs were disabled.
2020-09-11 16:16:00 +02:00
Kevin Hudemann 37b4af110c Rename frontendUnitTests to additionalUnitTests stage (#2011) 2020-09-11 14:50:09 +02:00
Kevin Hudemann 712d18ce0e Update Cloud SDK docs on linting and static code checks (#1996) 2020-09-09 13:34:08 +02:00
Kevin HudemannandFlorian Wilhelm 8d549a1f6c Add npmExecuteLint and mavenExecuteStaticCodeChecks to build stage (#1985)
This change adds the support for executing maven static code checks and
linting using the mavenExecuteStaticCodeChecks and npmExecuteLint steps
as part of the piperPipelineStageBuild.

Co-authored-by: Florian Wilhelm <florian.wilhelm02@sap.com>
2020-09-07 16:57:01 +02:00
Kevin Hudemann 79b522a48b Update Cloud SDK Pipeline docs on linting (#1986)
This change updates the documentation provided for the linting
capabilities of the Cloud SDK Pipeline.
2020-09-07 16:15:07 +02:00
Kevin Hudemann 3caf401b79 Add npmExecuteScripts to piperPipelineStageAdditionalUnitTests (#1978)
This change adds the support for running frontend unit tests using the
npmExecuteScripts step in the piperPipelineStageAdditionalUnitTests.
2020-09-03 13:12:27 +02:00
Kevin HudemannandStephan Aßmus e210c5c40a Extend testsPublishResults step to support publishing of HTML reports (#1976)
This change extends the testsPublishResults step to support publishing
of HTML reports using the HTML publisher plugin. This change is a
preperation for the migration of frontend unit tests as already existing
in the SAP Cloud SDK Pipeline to the
piperPipelineStageAdditionalUnitTests.

Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-09-02 17:04:59 +02:00
Kevin Hudemann ce48491a36 Fix stageDefaults fortify and mavenStaticCodeChecks (#1962) 2020-08-28 10:51:55 +02:00
Kevin Hudemann a035690f3d Update Cloud SDK stage defaults (#1959)
This change updates the Cloud SDK stage defaults, makes the piperPipelineStageMavenStaticCodeChecks use the step condition and adds the onlyRunInProductiveBranch configuration option to npmExecuteEndToEndTests step.
2020-08-27 16:17:06 +02:00
Kevin HudemannandStephan Aßmus 139e34cd37 Extend conditions for step and stage activation (#1955)
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-08-27 15:49:09 +02:00
Kevin Hudemann ce96c379ef Add mavenExecuteIntegration and writeTemporaryCredentials to piperPipelineStageIntegration (#1927)
This change add the support for running integration tests using the
recently introduced step mavenExecuteIntegration in
piperPipelineStageIntegration. In addition, capabilities to provide
temporary credentials to these tests is added using the
writeTemporaryCredentials step.
2020-08-14 15:22:05 +02:00
Kevin Hudemann 771bfd0cf2 Remove sapNpmRegistry (#1909)
The SAP NPM registry has been migrated to the default public registry,
thus the separate configuration with the sapNpmRegistry is not required
anymore.
All packages from npm.sap.com have been migrated to npmjs.org
and in the future SAP packages will only be available from the default
public registry.
2020-08-11 15:58:39 +02:00
Kevin Hudemann 806f7c8a09 Add groovy wrapper for TemporaryCredentialsUtils (#1906)
This change adds the groovy step writeTemporaryCredentials, in order to
avoid resolving configuration parameters within the piperPipelineStageIntegration
in the future.
For the integration tests functionality provided by the SAP Cloud SDK
Pipeline it needs be possible to configure a credential id pointing to
Jenkins credentials, which are then temporarily written to a file to be
available during the execution of the integration tests.
With the previous implementation solely in the TemporaryCredentialsUtils
class, it would be required to resolve the credentialId from the
configuratuion within the piperPipelineStageIntegration, once we fully
migrate the Cloud SDK integration tests stage.
2020-08-10 17:54:03 +02:00
Kevin Hudemann 415efb066a Add TemporaryCredentialsUtils (#1894)
This change adds a utils class to write credentials specified in Jenkins to a
temporary file, to be used for the execution of, e.g., integration tests
as already available in Cloud SDK Pipeline.
2020-08-07 16:12:34 +02:00
Kevin Hudemann eea0c1f35e Use npmExecuteEndToEndTests step in Release/Acceptance stage if it is configured (#1813)
This change enables the use of the new npmExecuteEndToEndTests in the
stages release and acceptance if it is configured. If it is not
configured, nothing should change.
2020-07-17 13:59:14 +02:00
Kevin Hudemann 58e7e4be44 Add buildDescriptorExcludeList parameter to npmExecuteScripts step (#1800)
This change adds a buildDescriptorExcludeList parameter to
npmExecuteScripts, to enable the exclusion of certain directories when
executing npm scripts. Previously, npmExecuteScripts could only execute
scripts in all packages.

Now it is possible to provide paths or patterns as elements of the
buildDescriptorExcludeList to exclude packages when executing npm scripts.
2020-07-16 17:16:55 +02:00
Kevin Hudemann ebfb208528 Add report handling to npmExecuteEndToEndTests (#1791)
This change adds the missing report handling to npmExecuteEndToEndTests
step. In addition, it extends the testsPublishResults step to support
cucumber test results.
2020-07-14 13:33:49 +02:00
Kevin HudemannandDaniel Kurzynski fd98d6279f Add step for end to end test execution (#1786)
This change adds the end to end test execution capabilities of the SAP
Cloud SDK pipeline, i.e., the consumer can define a npm script which is
then executed using the npmExecuteScripts step.

The handling of generated results will be provided in a follow up PR.

Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
2020-07-13 15:10:12 +02:00
Kevin Hudemann c8ca3ea522 Add mta extension credentials handling to cloudFoundryDeploy step and infer deployTool default from buildTool (#1761) 2020-07-06 16:16:48 +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
Kevin HudemannandDaniel Kurzynski 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
Kevin HudemannandDaniel Kurzynski 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
ceb3dd0a04 Refactor pkg/npm and npmExecuteScripts (#1684)
This change refactors the npm pkg and npmExecuteScripts implementations
to be reusable for future steps, e.g., npmExecuteLint.

In addition, it fixes few small bugs related to unit test execution on
Windows and the fileUtils mocking implementation.

Co-authored-by: Daniel Kurzynski <daniel.kurzynski@sap.com>
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-06-18 17:30:17 +02:00
Kevin HudemannandStephan Aßmus d7985dd1b5 Enable use of customDefaults from Project Config also in Groovy (#1521)
This change enables the setupCommonPipelineEnvironment step to handle
custom default configurations defined in customDefaults parameter of the
project configuration.

Previously, only the getConfig Go step was able to incorporate custom
default configurations.

Update documentation on custom defaults and sharing between projects.

Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com>
2020-05-12 13:50:18 +02:00
Kevin Hudemann 0be3225a3c Enable the use of artifactPrepareVersion instead of artifactSetVersion (#1455)
This change enables the use of the artifactPrepareVersion go step instead
of the deprecated artifactSetVersion groovy implementation for the Cloud
SDK Pipeline. The groovy wrapper for the artifactPrepareVersion step now
enables the use of the download cache and minor issues are fixed.
2020-04-27 09:56:58 +02:00
Kevin Hudemann 462a403d5c Add documentation for the lint stage of Cloud SDK Pipeline (#1384)
This change adds documentation for the new behavior and capabilities of
the lint stage of the Cloud SDK Pipeline.
2020-04-14 10:18:07 +02:00