summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFatih Degirmenci <fdegir@gmail.com>2018-05-18 13:56:43 +0200
committerFatih Degirmenci <fdegir@gmail.com>2018-05-18 15:08:47 +0200
commitbb376c197b864e9f60c43f97337da0d37e2d443d (patch)
tree9ddabd7d46e353c787ef03a558576f8cd0c1b5cd
parent47e912753dfbd977499ab8ce8f072a1d293a5410 (diff)
openci: Add event publisher to ODL and ONAP Autorelease jobs
Change-Id: I1efdff3dbcfdcc9b0820b43d982f686bbe1db4a7 Signed-off-by: Fatih Degirmenci <fdegir@gmail.com>
-rwxr-xr-xjjb/openci/create-ane.sh26
-rw-r--r--jjb/openci/openci-odl-daily-jobs.yaml34
-rw-r--r--jjb/openci/openci-onap-daily-jobs.yaml34
3 files changed, 86 insertions, 8 deletions
diff --git a/jjb/openci/create-ane.sh b/jjb/openci/create-ane.sh
new file mode 100755
index 0000000..8a4da8f
--- /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/openci-odl-daily-jobs.yaml b/jjb/openci/openci-odl-daily-jobs.yaml
index 8b53f65..89f8e54 100644
--- a/jjb/openci/openci-odl-daily-jobs.yaml
+++ b/jjb/openci/openci-odl-daily-jobs.yaml
@@ -26,13 +26,39 @@
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: |
- #!/bin/bash
+ - shell:
+ !include-raw-escape: ./create-ane.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
- echo "Will construct and publish an ArtifactPublishedEvent"
+ 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.
@@ -64,7 +90,7 @@
#!/bin/bash
echo
- echo "Triggered by an event"
+ echo "Triggered by $type"
echo "----------------------------------"
echo $CI_MESSAGE
echo "----------------------------------"
diff --git a/jjb/openci/openci-onap-daily-jobs.yaml b/jjb/openci/openci-onap-daily-jobs.yaml
index 4640eb3..524f784 100644
--- a/jjb/openci/openci-onap-daily-jobs.yaml
+++ b/jjb/openci/openci-onap-daily-jobs.yaml
@@ -26,13 +26,39 @@
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: |
- #!/bin/bash
+ - shell:
+ !include-raw-escape: ./create-ane.sh
+ - inject:
+ properties-file: "$WORKSPACE/event.properties"
- echo "Will construct and publish an ArtifactPublishedEvent"
+ 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.
@@ -64,7 +90,7 @@
#!/bin/bash
echo
- echo "Triggered by an event"
+ echo "Triggered by $type"
echo "----------------------------------"
echo $CI_MESSAGE
echo "----------------------------------"