diff options
-rw-r--r-- | jjb/integration/integration-macros.yaml | 18 | ||||
-rw-r--r-- | jjb/integration/integration-templates-docker.yaml | 44 | ||||
-rw-r--r-- | shell/docker-compose-logs.sh | 31 |
3 files changed, 93 insertions, 0 deletions
diff --git a/jjb/integration/integration-macros.yaml b/jjb/integration/integration-macros.yaml index aeb793f6f..99647507b 100644 --- a/jjb/integration/integration-macros.yaml +++ b/jjb/integration/integration-macros.yaml @@ -66,6 +66,11 @@ vagrant plugin install vagrant-disksize mkdir -p ~/.ssh +- builder: + name: integration-docker-compose-logs + builders: + - shell: !include-raw: shell/docker-compose-logs.sh + - publisher: name: integration-robot publishers: @@ -75,3 +80,16 @@ unstable-threshold: '{unstable-if}' pass-threshold: '{pass-if}' only-critical: false + +- publisher: + name: integration-docker-compose-logs + publishers: + - postbuildscript: + builders: + - role: BOTH + build-on: + - FAILURE + - SUCCESS + - UNSTABLE + build-steps: + - integration-docker-compose-logs diff --git a/jjb/integration/integration-templates-docker.yaml b/jjb/integration/integration-templates-docker.yaml index 0bf309756..caa0ad756 100644 --- a/jjb/integration/integration-templates-docker.yaml +++ b/jjb/integration/integration-templates-docker.yaml @@ -123,3 +123,47 @@ - infra-shiplogs: maven-version: '{maven-version}' + +- job-template: + name: '{project-name}-{stream}-{subproject}-docker-compose-verify' + project-type: freestyle + description: 'This job validates Docker Compose based projects' + node: 'ubuntu1804-docker-8c-8g' + docker_root: '$WORKSPACE' + + parameters: + - lf-infra-parameters: + project: '{project}' + stream: '{stream}' + branch: '{branch}' + + properties: + - infra-properties: + build-days-to-keep: '{build-days-to-keep}' + + scm: + - gerrit-trigger-scm: + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + submodule-recursive: '{submodule-recursive}' + + wrappers: + - infra-wrappers: + build-timeout: '{build-timeout}' + + triggers: + - gerrit-trigger-patch-submitted: + server: '{server-name}' + project: '{project}' + branch: '{branch}' + files: '{pattern}' + + builders: + - inject: + properties-content: | + DOCKER_ROOT={docker_root} + - shell: '{script}' + + publishers: + - integration-docker-compose-logs + - lf-infra-publish diff --git a/shell/docker-compose-logs.sh b/shell/docker-compose-logs.sh new file mode 100644 index 000000000..87bcd690d --- /dev/null +++ b/shell/docker-compose-logs.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +# Copyright 2020 Samsung Electronics Co., Ltd. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Dump Docker Compose info + +set +e # Do not fail build if any of script command fails +set -x + +echo "---> docker-compose-logs.sh" + +cd $DOCKER_ROOT +docker-compose config +docker-compose ps +docker-compose top +docker-compose images + +# Do not fail build if script fails. +exit 0 |