diff options
Diffstat (limited to 'jjb/openci')
-rwxr-xr-x | jjb/openci/create-ane.sh | 26 | ||||
-rwxr-xr-x | jjb/openci/create-cde.sh | 27 | ||||
-rwxr-xr-x | jjb/openci/create-clme.sh | 27 | ||||
-rw-r--r-- | jjb/openci/openci-odl-daily-jobs.yaml | 99 | ||||
-rw-r--r-- | jjb/openci/openci-onap-daily-jobs.yaml | 99 | ||||
-rw-r--r-- | jjb/openci/openci-opnfv-daily-jobs.yaml | 149 |
6 files changed, 427 insertions, 0 deletions
diff --git a/jjb/openci/create-ane.sh b/jjb/openci/create-ane.sh new file mode 100755 index 000000000..8a4da8f52 --- /dev/null +++ b/jjb/openci/create-ane.sh @@ -0,0 +1,26 @@ +#!/bin/bash +# SPDX-license-identifier: Apache-2.0 +############################################################################## +# Copyright (c) 2018 Ericsson AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +set -o errexit +set -o nounset +set -o pipefail + +# This script creates ArtifactPublishedEvent +# The JMS Messaging Plugin doesn't handle the newlines well so the eventBody is +# constructed on a single line. This is something that needs to be fixed properly + +cat << EOF > $WORKSPACE/event.properties +type=$PUBLISH_EVENT_TYPE +origin=$PUBLISH_EVENT_ORIGIN +eventBody="{ 'type': '$PUBLISH_EVENT_TYPE', 'id': '$(uuidgen)', 'time': '$(date -u +%Y-%m-%d_%H:%M:%SUTC)', 'origin': '$PUBLISH_EVENT_ORIGIN', 'buildUrl': '$BUILD_URL', 'branch': 'master', 'artifactLocation': '$ARTIFACT_LOCATION', 'confidenceLevel': { $CONFIDENCE_LEVEL } }" +EOF +echo "Constructed $PUBLISH_EVENT_TYPE" +echo "--------------------------------------------" +cat $WORKSPACE/event.properties +echo "--------------------------------------------" diff --git a/jjb/openci/create-cde.sh b/jjb/openci/create-cde.sh new file mode 100755 index 000000000..410db50e6 --- /dev/null +++ b/jjb/openci/create-cde.sh @@ -0,0 +1,27 @@ +#!/bin/bash +# SPDX-license-identifier: Apache-2.0 +############################################################################## +# Copyright (c) 2018 Ericsson AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +set -o errexit +set -o nounset +set -o pipefail + +# This script creates CompositionDefinedEvent +# The JMS Messaging Plugin doesn't handle the newlines well so the eventBody is +# constructed on a single line. This is something that needs to be fixed properly + +cat << EOF > $WORKSPACE/event.properties +type=$PUBLISH_EVENT_TYPE +origin=$PUBLISH_EVENT_ORIGIN +scenario=$DEPLOY_SCENARIO +eventBody="{ 'type': '$PUBLISH_EVENT_TYPE', 'id': '$(uuidgen)', 'time': '$(date -u +%Y-%m-%d_%H:%M:%SUTC)', 'origin': '$PUBLISH_EVENT_ORIGIN', 'buildUrl': '$BUILD_URL', 'branch': 'master', 'compositionName': '$DEPLOY_SCENARIO', 'compositionMetadataUrl': '$SCENARIO_METADATA_LOCATION' }" +EOF +echo "Constructed $PUBLISH_EVENT_TYPE" +echo "--------------------------------------------" +cat $WORKSPACE/event.properties +echo "--------------------------------------------" diff --git a/jjb/openci/create-clme.sh b/jjb/openci/create-clme.sh new file mode 100755 index 000000000..5e8ee10c9 --- /dev/null +++ b/jjb/openci/create-clme.sh @@ -0,0 +1,27 @@ +#!/bin/bash +# SPDX-license-identifier: Apache-2.0 +############################################################################## +# Copyright (c) 2018 Ericsson AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +set -o errexit +set -o nounset +set -o pipefail + +# This script creates ConfidenceLevelModifiedEvent +# The JMS Messaging Plugin doesn't handle the newlines well so the eventBody is +# constructed on a single line. This is something that needs to be fixed properly + +cat << EOF > $WORKSPACE/event.properties +type=$PUBLISH_EVENT_TYPE +origin=$PUBLISH_EVENT_ORIGIN +scenario=$DEPLOY_SCENARIO +eventBody="{ 'type': '$PUBLISH_EVENT_TYPE', 'id': '$(uuidgen)', 'time': '$(date -u +%Y-%m-%d_%H:%M:%SUTC)', 'origin': '$PUBLISH_EVENT_ORIGIN', 'buildUrl': '$BUILD_URL', 'branch': 'master', 'compositionName': '$DEPLOY_SCENARIO', 'compositionMetadataUrl': '$SCENARIO_METADATA_LOCATION', 'confidenceLevel': { $CONFIDENCE_LEVEL } }" +EOF +echo "Constructed $PUBLISH_EVENT_TYPE" +echo "--------------------------------------------" +cat $WORKSPACE/event.properties +echo "--------------------------------------------" diff --git a/jjb/openci/openci-odl-daily-jobs.yaml b/jjb/openci/openci-odl-daily-jobs.yaml new file mode 100644 index 000000000..d80feadf6 --- /dev/null +++ b/jjb/openci/openci-odl-daily-jobs.yaml @@ -0,0 +1,99 @@ +--- +- project: + name: openci-odl + + project: '{name}' + + stream: + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + + jobs: + - 'openci-odl-autorelease-daily-{stream}' + - 'openci-odl-promote-daily-{stream}' + +# This job gets triggered manually for the demo purposes. +# +# In prototype, either what this job does needs to be integrated to +# ODL autorelease job or triggered by the upstream autorelease job. +- job-template: + name: 'openci-odl-autorelease-daily-{stream}' + + disabled: '{obj:disabled}' + + concurrent: false + + parameters: + - string: + name: PUBLISH_EVENT_TYPE + default: ArtifactPublishedEvent + description: 'The type of the event this job publishes' + - string: + name: PUBLISH_EVENT_ORIGIN + default: ODL + description: 'Originating community' + - string: + name: ARTIFACT_LOCATION + default: https://url/to/artifact/on/odl/nexus/$BUILD_NUMBER + description: 'The location of the artifact on ODL Nexus' + - string: + name: CONFIDENCE_LEVEL + default: "'autorelease': 'SUCCESS'" + description: 'The confidence level the published artifact gained' + - 'opnfv-build-defaults' + + builders: + - shell: + !include-raw-escape: ./create-ane.sh + - inject: + properties-file: "$WORKSPACE/event.properties" + + publishers: + - jms-messaging: + provider-name: openci.activemq + msg-type: Custom + msg-props: | + type=$type + origin=$origin + msg-content: + $eventBody + +# This job gets triggered by a ConfidenceLevelModifiedEvent published +# by OPNFV jobs so ODL can promote the autorelease artifact even further. +# +# This job is created for the demo purposes and might not be there for +# the prototype. +- job-template: + name: 'openci-odl-promote-daily-{stream}' + + disabled: '{obj:disabled}' + + concurrent: false + + parameters: + - 'opnfv-build-defaults' + + triggers: + - jms-messaging: + provider-name: openci.activemq + selector: CI_TYPE = 'custom' + checks: + - field: origin + expected-value: 'OPNFV' + - field: type + expected-value: 'ConfidenceLevelModifiedEvent' + - field: scenario + expected-value: 'os-odl-nofeature' + + builders: + - shell: | + #!/bin/bash + + echo + echo "Triggered by $type" + echo "----------------------------------" + echo $CI_MESSAGE + echo "----------------------------------" + echo " Promoted ODL Autorelease artifact as release candidate!" diff --git a/jjb/openci/openci-onap-daily-jobs.yaml b/jjb/openci/openci-onap-daily-jobs.yaml new file mode 100644 index 000000000..28c3e6948 --- /dev/null +++ b/jjb/openci/openci-onap-daily-jobs.yaml @@ -0,0 +1,99 @@ +--- +- project: + name: openci-onap + + project: '{name}' + + stream: + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + + jobs: + - 'openci-onap-autorelease-daily-{stream}' + - 'openci-onap-promote-daily-{stream}' + +# This job gets triggered manually for the demo purposes. +# +# In prototype, either what this job does needs to be integrated to +# ONAP autorelease job or triggered by the upstream autorelease job. +- job-template: + name: 'openci-onap-autorelease-daily-{stream}' + + disabled: '{obj:disabled}' + + concurrent: false + + parameters: + - string: + name: PUBLISH_EVENT_TYPE + default: ArtifactPublishedEvent + description: 'The type of the event this job publishes' + - string: + name: PUBLISH_EVENT_ORIGIN + default: ONAP + description: 'Originating community' + - string: + name: ARTIFACT_LOCATION + default: https://url/to/artifact/on/onap/nexus/$BUILD_NUMBER + description: 'The location of the artifact on ONAP Nexus' + - string: + name: CONFIDENCE_LEVEL + default: "'autorelease': 'SUCCESS'" + description: 'The confidence level the published artifact gained' + - 'opnfv-build-defaults' + + builders: + - shell: + !include-raw-escape: ./create-ane.sh + - inject: + properties-file: "$WORKSPACE/event.properties" + + publishers: + - jms-messaging: + provider-name: openci.activemq + msg-type: Custom + msg-props: | + type=$type + origin=$origin + msg-content: + $eventBody + +# This job gets triggered by a ConfidenceLevelModifiedEvent published +# by OPNFV jobs so ONAP can promote the autorelease artifact even further. +# +# This job is created for the demo purposes and might not be there for +# the prototype. +- job-template: + name: 'openci-onap-promote-daily-{stream}' + + disabled: '{obj:disabled}' + + concurrent: false + + parameters: + - 'opnfv-build-defaults' + + triggers: + - jms-messaging: + provider-name: openci.activemq + selector: CI_TYPE = 'custom' + checks: + - field: origin + expected-value: 'OPNFV' + - field: type + expected-value: 'ConfidenceLevelModifiedEvent' + - field: scenario + expected-value: 'k8-nosdn-onap' + + builders: + - shell: | + #!/bin/bash + + echo + echo "Triggered by $type" + echo "----------------------------------" + echo $CI_MESSAGE + echo "----------------------------------" + echo " Promoted ONAP Autorelease artifact as release candidate!" diff --git a/jjb/openci/openci-opnfv-daily-jobs.yaml b/jjb/openci/openci-opnfv-daily-jobs.yaml new file mode 100644 index 000000000..cb150148b --- /dev/null +++ b/jjb/openci/openci-opnfv-daily-jobs.yaml @@ -0,0 +1,149 @@ +--- +- project: + name: openci-opnfv + + project: '{name}' + + stream: + - master: + branch: '{stream}' + gs-pathname: '' + disabled: false + + scenario: + - 'os-odl-nofeature-ha': + origin: ODL + - 'k8-nosdn-onap-ha': + origin: ONAP + + jobs: + - 'openci-opnfv-{scenario}-compose-daily-{stream}' + - 'openci-opnfv-{scenario}-test-daily-{stream}' + +- job-template: + name: 'openci-opnfv-{scenario}-compose-daily-{stream}' + + disabled: '{obj:disabled}' + + concurrent: false + + parameters: + - string: + name: PUBLISH_EVENT_TYPE + default: CompositionDefinedEvent + description: 'The type of the event this job publishes' + - string: + name: PUBLISH_EVENT_ORIGIN + default: OPNFV + description: 'Originating community' + - string: + name: DEPLOY_SCENARIO + default: '{scenario}' + description: 'The scenario that is composed' + - string: + name: SCENARIO_METADATA_LOCATION + default: https://url/to/scenario/metadata/on/opnfv/artifact/repo/$BUILD_NUMBER + description: 'The location of the scenario metadata' + - 'opnfv-build-defaults' + + triggers: + - jms-messaging: + provider-name: openci.activemq + selector: CI_TYPE = 'custom' + checks: + - field: origin + expected-value: '{origin}' + - field: type + expected-value: 'ArtifactPublishedEvent' + + builders: + - shell: | + #!/bin/bash + + echo + echo "Triggered by $type" + echo "----------------------------------" + echo $CI_MESSAGE + echo "----------------------------------" + - shell: + !include-raw-escape: ./create-cde.sh + - inject: + properties-file: "$WORKSPACE/event.properties" + + publishers: + - jms-messaging: + provider-name: openci.activemq + msg-type: Custom + msg-props: | + type=$type + origin=$origin + scenario=$scenario + msg-content: + $eventBody + +- job-template: + name: 'openci-opnfv-{scenario}-test-daily-{stream}' + + disabled: '{obj:disabled}' + + concurrent: false + + parameters: + - string: + name: PUBLISH_EVENT_TYPE + default: ConfidenceLevelModifiedEvent + description: 'The type of the event this job publishes' + - string: + name: PUBLISH_EVENT_ORIGIN + default: OPNFV + description: 'Originating community' + - string: + name: DEPLOY_SCENARIO + default: '{scenario}' + description: 'The scenario that is composed' + - string: + name: SCENARIO_METADATA_LOCATION + default: https://url/to/scenario/metadata/on/opnfv/artifact/repo/$BUILD_NUMBER + description: 'The location of the scenario metadata' + - string: + name: CONFIDENCE_LEVEL + default: "'opnfvdaily': 'SUCCESS'" + description: 'The confidence level the published artifact gained' + - 'opnfv-build-defaults' + + triggers: + - jms-messaging: + provider-name: openci.activemq + selector: CI_TYPE = 'custom' + checks: + - field: origin + expected-value: 'OPNFV' + - field: type + expected-value: 'CompositionDefinedEvent' + - field: scenario + expected-value: '{scenario}' + + builders: + - shell: | + #!/bin/bash + + echo + echo "Triggered by $type" + echo "----------------------------------" + echo $CI_MESSAGE + echo "----------------------------------" + - shell: + !include-raw-escape: ./create-clme.sh + - inject: + properties-file: "$WORKSPACE/event.properties" + + publishers: + - jms-messaging: + provider-name: openci.activemq + msg-type: Custom + msg-props: | + type=$type + origin=$origin + scenario=$scenario + msg-content: + $eventBody |