apex: Fixes daily job and baremetal deploys
[releng.git] / jjb / apex / apex.yml
1 - project:
2     name: apex
3     jobs:
4         - 'apex-verify-{stream}'
5         - 'apex-merge-{stream}'
6         - 'apex-build-{stream}'
7         - 'apex-deploy-virtual-{scenario}-{stream}'
8         - 'apex-deploy-baremetal-{scenario}-{stream}'
9         - 'apex-daily-{stream}'
10
11     # stream:    branch with - in place of / (eg. stable-arno)
12     # branch:    branch (eg. stable/arno)
13     stream:
14         - master:
15             branch: 'master'
16             gs-pathname: ''
17         - brahmaputra:
18             branch: 'stable/brahmaputra'
19             gs-pathname: '/brahmaputra'
20             disabled: true
21
22     project: 'apex'
23
24     scenario:
25          - 'os-odl_l2-nofeature-ha'
26          - 'os-odl_l2-sfc-ha'
27          - 'os-odl_l3-nofeature-ha'
28          - 'os-onos-nofeature-ha'
29          - 'os-opencontrail-nofeature-ha'
30
31 - job-template:
32     name: 'apex-verify-{stream}'
33
34     node: opnfv-jump-1
35
36     parameters:
37         - apex-parameter:
38             gs-pathname: '{gs-pathname}'
39         - project-parameter:
40             project: '{project}'
41         - gerrit-parameter:
42             branch: '{branch}'
43         - string:
44             name: GIT_BASE
45             default: https://gerrit.opnfv.org/gerrit/$PROJECT
46             description: "Used for overriding the GIT URL coming from parameters macro."
47
48     scm:
49         - gerrit-trigger-scm:
50             credentials-id: '{ssh-credentials}'
51             refspec: '$GERRIT_REFSPEC'
52             choosing-strategy: 'gerrit'
53
54     triggers:
55         - gerrit:
56             trigger-on:
57                 - patchset-created-event:
58                     exclude-drafts: 'false'
59                     exclude-trivial-rebase: 'false'
60                     exclude-no-code-change: 'false'
61                 - draft-published-event
62                 - comment-added-contains-event:
63                     comment-contains-value: 'recheck'
64                 - comment-added-contains-event:
65                     comment-contains-value: 'reverify'
66             projects:
67               - project-compare-type: 'ANT'
68                 project-pattern: 'apex'
69                 branches:
70                   - branch-compare-type: 'ANT'
71                     branch-pattern: '**/{branch}'
72                 file-paths:
73                   - compare-type: ANT
74                     pattern: 'ci/**'
75                   - compare-type: ANT
76                     pattern: 'build/**'
77                   - compare-type: ANT
78                     pattern: 'lib/**'
79                   - compare-type: ANT
80                     pattern: 'config/**'
81                 forbidden-file-paths:
82                   - compare-type: ANT
83                     pattern: 'docs/**'
84
85     properties:
86         - build-blocker:
87             use-build-blocker: true
88             blocking-jobs:
89                 - "apex-daily.*"
90                 - "apex-deploy.*"
91                 - "apex-build.*"
92
93     builders:
94         - 'apex-build'
95         - trigger-builds:
96           - project: 'apex-deploy-virtual-os-odl_l2-nofeature-ha-{stream}'
97             predefined-parameters:
98               BUILD_DIRECTORY=apex-verify-master/build_output
99             git-revision: false
100             block: true
101         - trigger-builds:
102           - project: 'apex-deploy-virtual-os-onos-nofeature-ha-{stream}'
103             predefined-parameters:
104               BUILD_DIRECTORY=apex-verify-master/build_output
105             git-revision: false
106             block: true
107         - 'apex-workspace-cleanup'
108
109 - job-template:
110     name: 'apex-merge-{stream}'
111
112     # builder-merge job to run JJB update
113     #
114     # This job's purpose is to update all the JJB
115
116     node: opnfv-jump-1
117
118     disabled: true
119
120     parameters:
121         - apex-parameter:
122             gs-pathname: '{gs-pathname}'
123         - project-parameter:
124             project: '{project}'
125         - gerrit-parameter:
126             branch: '{branch}'
127         - string:
128             name: GIT_BASE
129             default: https://gerrit.opnfv.org/gerrit/$PROJECT
130             description: "Used for overriding the GIT URL coming from parameters macro."
131
132     scm:
133         - gerrit-trigger-scm:
134             credentials-id: '{ssh-credentials}'
135             refspec: ''
136             choosing-strategy: 'default'
137
138     triggers:
139         - gerrit:
140             trigger-on:
141                 - change-merged-event
142                 - comment-added-contains-event:
143                     comment-contains-value: 'remerge'
144             projects:
145               - project-compare-type: 'ANT'
146                 project-pattern: 'apex'
147                 branches:
148                     - branch-compare-type: 'ANT'
149                       branch-pattern: '**/master'
150                 forbidden-file-paths:
151                   - compare-type: ANT
152                     pattern: 'docs/**'
153
154     builders:
155         - 'apex-build'
156         - 'apex-deploy-virtual'
157         - 'apex-workspace-cleanup'
158
159 - job-template:
160     name: 'apex-build-{stream}'
161
162     # Job template for builds
163     #
164     # Required Variables:
165     #     stream:    branch with - in place of / (eg. stable)
166     #     branch:    branch (eg. stable)
167     node: opnfv-jump-1
168
169     disabled: false
170
171     parameters:
172         - project-parameter:
173             project: '{project}'
174         - apex-parameter:
175             gs-pathname: '{gs-pathname}'
176         - gerrit-parameter:
177             branch: '{branch}'
178         - string:
179             name: GIT_BASE
180             default: https://gerrit.opnfv.org/gerrit/$PROJECT
181             description: "Used for overriding the GIT URL coming from parameters macro."
182
183     scm:
184         - git-scm:
185             credentials-id: '{ssh-credentials}'
186             refspec: ''
187             branch: '{branch}'
188
189     properties:
190         - build-blocker:
191             use-build-blocker: true
192             blocking-jobs:
193                 - "apex-deploy.*"
194
195     builders:
196         - 'apex-build'
197         - 'apex-deploy-virtual'
198         - 'apex-upload-artifact'
199         - 'apex-workspace-cleanup'
200
201 - job-template:
202     name: 'apex-deploy-virtual-{scenario}-{stream}'
203
204     # Job template for virtual deployment
205     #
206     # Required Variables:
207     #     stream:    branch with - in place of / (eg. stable)
208     #     branch:    branch (eg. stable)
209     node: opnfv-jump-1
210
211     disabled: false
212
213     scm:
214         - git-scm:
215             credentials-id: '{ssh-credentials}'
216             refspec: ''
217             branch: '{branch}'
218
219     parameters:
220         - project-parameter:
221             project: '{project}'
222         - apex-parameter:
223             gs-pathname: '{gs-pathname}'
224         - string:
225             name: DEPLOY_SCENARIO
226             default: '{scenario}'
227             description: "Scenario to deploy with."
228
229     properties:
230         - build-blocker:
231             use-build-blocker: true
232             blocking-jobs:
233                 - "apex-deploy.*"
234                 - "apex-build.*"
235
236     builders:
237         - 'apex-deploy-virtual'
238         - 'apex-workspace-cleanup'
239
240 - job-template:
241     name: 'apex-deploy-baremetal-{scenario}-{stream}'
242
243     # Job template for baremetal deployment
244     #
245     # Required Variables:
246     #     stream:    branch with - in place of / (eg. stable)
247     #     branch:    branch (eg. stable)
248     node: opnfv-jump-1
249
250     disabled: false
251
252     scm:
253         - git-scm:
254             credentials-id: '{ssh-credentials}'
255             refspec: ''
256             branch: '{branch}'
257
258     parameters:
259         - project-parameter:
260             project: '{project}'
261         - apex-parameter:
262             gs-pathname: '{gs-pathname}'
263         - string:
264             name: DEPLOY_SCENARIO
265             default: '{scenario}'
266             description: "Scenario to deploy with."
267
268     properties:
269         - build-blocker:
270             use-build-blocker: true
271             blocking-jobs:
272                 - "apex-verify.*"
273                 - "apex-deploy.*"
274                 - "apex-build.*"
275
276
277     builders:
278         - 'apex-deploy-baremetal'
279         - 'apex-workspace-cleanup'
280
281 - job-template:
282     name: 'apex-daily-{stream}'
283
284     # Job template for daily build
285     #
286     # Required Variables:
287     #     stream:    branch with - in place of / (eg. stable)
288     #     branch:    branch (eg. stable)
289     node: opnfv-jump-1
290
291     disabled: false
292
293     scm:
294         - git-scm:
295             credentials-id: '{ssh-credentials}'
296             refspec: ''
297             branch: '{branch}'
298
299     parameters:
300         - project-parameter:
301             project: '{project}'
302         - apex-parameter:
303             gs-pathname: '{gs-pathname}'
304
305     properties:
306         - build-blocker:
307             use-build-blocker: true
308             blocking-jobs:
309                 - "apex-verify.*"
310                 - "apex-deploy.*"
311                 - "apex-build.*"
312
313     triggers:
314         - 'apex-master'
315
316     builders:
317         - trigger-builds:
318           - project: 'apex-build-{stream}'
319             git-revision: true
320             current-parameters: true
321             block: true
322         - trigger-builds:
323           - project: 'apex-deploy-baremetal-os-odl_l2-nofeature-ha-{stream}'
324             predefined-parameters:
325               BUILD_DIRECTORY=apex-build-master/build_output
326             git-revision: true
327             block: true
328         - trigger-builds:
329           - project: 'functest-apex-opnfv-jump-1-daily-{stream}'
330             block: true
331             block-thresholds:
332                 build-step-failure-threshold: 'never'
333                 failure-threshold: 'never'
334                 unstable-threshold: 'FAILURE'
335         - trigger-builds:
336           - project: 'yardstick-apex-opnfv-jump-1-daily-{stream}'
337             block: true
338             block-thresholds:
339                 build-step-failure-threshold: 'never'
340                 failure-threshold: 'never'
341                 unstable-threshold: 'FAILURE'
342         - trigger-builds:
343           - project: 'apex-deploy-baremetal-os-onos-nofeature-ha-{stream}'
344             predefined-parameters:
345               BUILD_DIRECTORY=apex-build-master/build_output
346             git-revision: true
347             block: true
348         - trigger-builds:
349           - project: 'functest-apex-opnfv-jump-1-daily-{stream}'
350             block: true
351             block-thresholds:
352                 build-step-failure-threshold: 'never'
353                 failure-threshold: 'never'
354                 unstable-threshold: 'FAILURE'
355         - trigger-builds:
356           - project: 'yardstick-apex-opnfv-jump-1-daily-{stream}'
357             block: true
358             block-thresholds:
359                 build-step-failure-threshold: 'never'
360                 failure-threshold: 'never'
361                 unstable-threshold: 'FAILURE'
362
363 ########################
364 # parameter macros
365 ########################
366 - parameter:
367     name: apex-parameter
368     parameters:
369         - string:
370             name: ARTIFACT_NAME
371             default: 'latest'
372             description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact"
373         - string:
374             name: ARTIFACT_VERSION
375             default: 'daily'
376             description: "Artifact version type"
377         - string:
378             name: BUILD_DIRECTORY
379             default: $WORKSPACE/build_output
380             description: "Directory where the build artifact will be located upon the completion of the build."
381         - string:
382             name: CACHE_DIRECTORY
383             default: $HOME/opnfv/cache{gs-pathname}
384             description: "Directory where the cache to be used during the build is located."
385         - string:
386             name: GIT_BASE
387             default: https://gerrit.opnfv.org/gerrit/$PROJECT
388             description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
389         - string:
390             name: GS_URL
391             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
392             description: "URL to Google Storage."
393
394 ########################
395 # builder macros
396 ########################
397 - builder:
398     name: 'apex-build'
399     builders:
400         - shell: |
401             #!/bin/bash
402             set -o errexit
403             set -o nounset
404             set -o pipefail
405             # log info to console
406             echo "Starting the build of Apex using OpenStack Master packages. This will take some time..."
407             echo "---------------------------------------------------------------------------------------"
408             echo
409             # create the cache directory if it doesn't exist
410             [[ -d $CACHE_DIRECTORY ]] || mkdir -p $CACHE_DIRECTORY
411             # set OPNFV_ARTIFACT_VERSION
412             if echo $GERRIT_BRANCH | grep "brahmaputra" 1> /dev/null; then
413               export OPNFV_ARTIFACT_VERSION="bramaputra.1.rc0"
414             else
415               if echo $BUILD_TAG | grep "apex-verify" 1> /dev/null; then
416                 export OPNFV_ARTIFACT_VERSION=dev${BUILD_NUMBER}
417               elif [ "$ARTIFACT_VERSION" == "daily" ]; then
418                 export OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d")
419               else
420                 export OPNFV_ARTIFACT_VERSION=${ARTIFACT_VERSION}
421               fi
422             fi
423             # start the build
424             cd $WORKSPACE/ci
425             ./build.sh -v $OPNFV_ARTIFACT_VERSION -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY
426             RPM_VERSION=$(grep Version $BUILD_DIRECTORY/../build/opnfv-apex.spec | awk '{ print $2 }')-$(echo $OPNFV_ARTIFACT_VERSION | tr -d '_-')
427             # list the contents of BUILD_OUTPUT directory
428             ls -al $BUILD_DIRECTORY
429             # save information regarding artifact into file
430             (
431                 echo "OPNFV_ARTIFACT_VERSION=$OPNFV_ARTIFACT_VERSION"
432                 echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)"
433                 echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)"
434                 echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso"
435                 echo "OPNFV_ARTIFACT_MD5SUM=$(md5sum $BUILD_DIRECTORY/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso | cut -d' ' -f1)"
436                 echo "OPNFV_SRPM_URL=$GS_URL/opnfv-apex-$RPM_VERSION.src.rpm"
437                 echo "OPNFV_RPM_URL=$GS_URL/opnfv-apex-$RPM_VERSION.noarch.rpm"
438                 echo "OPNFV_RPM_MD5SUM=$(md5sum $BUILD_DIRECTORY/opnfv-apex-$RPM_VERSION.noarch.rpm | cut -d' ' -f1)"
439                 echo "OPNFV_BUILD_URL=$BUILD_URL"
440             ) > $WORKSPACE/opnfv.properties
441             echo
442             echo "--------------------------------------------------------"
443
444 - builder:
445     name: 'apex-workspace-cleanup'
446     builders:
447         - shell: |
448             #!/bin/bash
449             set -o errexit
450             set -o nounset
451             set -o pipefail
452
453             # delete everything that is in $WORKSPACE
454             /bin/rm -rf $WORKSPACE
455
456 - builder:
457     name: 'apex-upload-artifact'
458     builders:
459         - shell: |
460             #!/bin/bash
461             set -o errexit
462             set -o nounset
463             set -o pipefail
464
465             # log info to console
466             echo "Uploading the Apex artifact. This could take some time..."
467             echo "--------------------------------------------------------"
468             echo
469
470             # source the opnfv.properties to get ARTIFACT_VERSION
471             source $WORKSPACE/opnfv.properties
472
473             # upload artifact and additional files to google storage
474             gsutil cp $BUILD_DIRECTORY/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso > gsutil.iso.log 2>&1
475             RPM_INSTALL_PATH=$BUILD_DIRECTORY/$(basename $OPNFV_RPM_URL)
476             RPM_LIST=$RPM_INSTALL_PATH
477             for pkg in common undercloud; do
478                 RPM_LIST+=" ${RPM_INSTALL_PATH/opnfv-apex/opnfv-apex-${pkg}}"
479             done
480             SRPM_INSTALL_PATH=$BUILD_DIRECTORY/$(basename $OPNFV_SRPM_URL)
481             SRPM_LIST=$SRPM_INSTALL_PATH
482             for pkg in common undercloud; do
483                 SRPM_LIST+=" ${SRPM_INSTALL_PATH/opnfv-apex/opnfv-apex-${pkg}}"
484             done
485             for artifact in $RPM_LIST $SRPM_LIST; do
486               gsutil cp $artifact gs://$GS_URL/$(basename $artifact) > gsutil.iso.log 2>&1
487             done
488             gsutil cp $WORKSPACE/opnfv.properties gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.properties > gsutil.properties.log 2>&1
489             gsutil cp $WORKSPACE/opnfv.properties gs://$GS_URL/latest.properties > gsutil.latest.log 2>&1
490
491             echo
492             echo "--------------------------------------------------------"
493             echo "Done!"
494             echo "ISO Artifact is available as http://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso"
495             echo "RPM Artifact is available as http://$GS_URL/$(basename $OPNFV_RPM_URL)"
496
497 - builder:
498     name: 'apex-deploy-virtual'
499     builders:
500         - shell: |
501             #!/bin/bash
502             set -o errexit
503             set -o nounset
504             set -o pipefail
505
506             # log info to console
507             echo "Starting the Apex virtual deployment."
508             echo "--------------------------------------------------------"
509             echo
510
511             if [[ ! "$ARTIFACT_NAME" == "latest" ]]; then
512                 # if artifact name is passed the pull a
513                 # specific artifact from artifacts.opnfv.org
514                 RPM_INSTALL_PATH=$GS_URL/$ARTIFACT_NAME
515             else
516                 if [[ $BUILD_DIRECTORY == *verify* ]]; then
517                   BUILD_DIRECTORY=$WORKSPACE/../$BUILD_DIRECTORY
518                   echo "BUILD DIRECTORY modified to $BUILD_DIRECTORY"
519                 fi
520
521                 if [[ -f ${BUILD_DIRECTORY}/../opnfv.properties ]]; then
522                     # if opnfv.properties exists then use the
523                     # local build. Source the file so we get local OPNFV vars
524                     source ${BUILD_DIRECTORY}/../opnfv.properties
525                     RPM_INSTALL_PATH=${BUILD_DIRECTORY}/$(basename $OPNFV_RPM_URL)
526                 else
527                     if [[ $BUILD_DIRECTORY == *verify* ]]; then
528                       echo "BUILD_DIRECTORY is from a verify job, so will not use latest from URL"
529                       echo "Check that the slave has opnfv.properties in $BUILD_DIRECTORY"
530                       exit 1
531                     fi
532                     # no opnfv.properties means use the latest from artifacts.opnfv.org
533                     # get the latest.properties to get the link to the latest artifact
534                     curl -s -o $WORKSPACE/opnfv.properties http://$GS_URL/latest.properties
535                     [[ -f opnfv.properties ]] || exit 1
536                     # source the file so we get OPNFV vars
537                     source opnfv.properties
538                     RPM_INSTALL_PATH=$OPNFV_RPM_URL
539                 fi
540             fi
541
542             RPM_LIST=$RPM_INSTALL_PATH
543             for pkg in common undercloud; do
544                 RPM_LIST+=" ${RPM_INSTALL_PATH/opnfv-apex/opnfv-apex-${pkg}}"
545             done
546
547             # update / install the new rpm
548             if rpm -q opnfv-apex > /dev/null; then
549                if [ $(basename $OPNFV_RPM_URL) == $(rpm -q opnfv-apex).rpm ]; then
550                  echo "RPM is already installed"
551                elif sudo yum update -y $RPM_LIST | grep "does not update installed package"; then
552                    if ! sudo yum downgrade -y $RPM_LIST; then
553                      sudo yum remove -y opnfv-undercloud opnfv-common
554                      sudo yum downgrade -y $RPM_INSTALL_PATH
555                    fi
556                fi
557             else
558                sudo yum install -y $RPM_LIST;
559             fi
560
561             # cleanup virtual machines before we start
562             sudo opnfv-clean
563             # initiate virtual deployment
564             if [ -e /etc/opnfv-apex/network_settings.yaml ]; then
565               if [ -n "$DEPLOY_SCENARIO" ]; then
566                 echo "Deploy Scenario set to ${DEPLOY_SCENARIO}"
567                 if [ -e /etc/opnfv-apex/${DEPLOY_SCENARIO}.yaml ]; then
568                   sudo opnfv-deploy -v -d /etc/opnfv-apex/${DEPLOY_SCENARIO}.yaml -n /etc/opnfv-apex/network_settings.yaml
569                 else
570                   echo "File does not exist /etc/opnfv-apex/${DEPLOY_SCENARIO}.yaml"
571                   exit 1
572                 fi
573               else
574                 echo "Deploy scenario not set!"
575                 exit 1
576               fi
577             else
578               sudo opnfv-deploy -v
579             fi
580             echo
581             echo "--------------------------------------------------------"
582             echo "Done!"
583
584 - builder:
585     name: 'apex-deploy-baremetal'
586     builders:
587         - shell: |
588             #!/bin/bash
589             set -o errexit
590             set -o nounset
591             set -o pipefail
592
593             # log info to console
594             echo "Starting the Apex baremetal deployment."
595             echo "--------------------------------------------------------"
596             echo
597
598             if [[ ! "$ARTIFACT_NAME" == "latest" ]]; then
599                 # if artifact name is passed the pull a
600                 # specific artifact from artifacts.opnfv.org
601                 RPM_INSTALL_PATH=$GS_URL/$ARTIFACT_NAME
602             else
603                 if [[ $BUILD_DIRECTORY == *apex-build* ]]; then
604                   BUILD_DIRECTORY=$WORKSPACE/../$BUILD_DIRECTORY
605                   echo "BUILD DIRECTORY modified to $BUILD_DIRECTORY"
606                 fi
607                 if [[ -f ${BUILD_DIRECTORY}/../opnfv.properties ]]; then
608                     # if opnfv.properties exists then use the
609                     # local build. Source the file so we get local OPNFV vars
610                     source ${BUILD_DIRECTORY}/../opnfv.properties
611                     RPM_INSTALL_PATH=${BUILD_DIRECTORY}/$(basename $OPNFV_RPM_URL)
612                 else
613                     # no opnfv.properties means use the latest from artifacts.opnfv.org
614                     # get the latest.properties to get the link to the latest artifact
615                     curl -s -o $WORKSPACE/opnfv.properties http://$GS_URL/latest.properties
616                     [[ -f opnfv.properties ]] || exit 1
617                     # source the file so we get OPNFV vars
618                     source opnfv.properties
619                     RPM_INSTALL_PATH=$OPNFV_RPM_URL
620                 fi
621             fi
622
623             if [ ! -e "$RPM_INSTALL_PATH" ]; then
624                RPM_INSTALL_PATH=http://${OPNFV_RPM_URL}
625             fi
626
627             RPM_LIST=$RPM_INSTALL_PATH
628             for pkg in common undercloud; do
629                 RPM_LIST+=" ${RPM_INSTALL_PATH/opnfv-apex/opnfv-apex-${pkg}}"
630             done
631
632             # update / install the new rpm
633             if rpm -q opnfv-apex > /dev/null; then
634                if [ $(basename $OPNFV_RPM_URL) == $(rpm -q opnfv-apex).rpm ]; then
635                  echo "RPM is already installed"
636                elif sudo yum update -y $RPM_LIST | grep "does not update installed package"; then
637                    if ! sudo yum downgrade -y $RPM_LIST; then
638                      sudo yum remove -y opnfv-undercloud opnfv-common
639                      sudo yum downgrade -y $RPM_INSTALL_PATH
640                    fi
641                fi
642             else
643                sudo yum install -y $RPM_LIST;
644             fi
645
646             # cleanup environment before we start
647             sudo opnfv-clean
648             # initiate baremetal deployment
649             if [ -e /etc/opnfv-apex/network_settings.yaml ]; then
650               if [ -n "$DEPLOY_SCENARIO" ]; then
651                 echo "Deploy Scenario set to ${DEPLOY_SCENARIO}"
652                 if [ -e /etc/opnfv-apex/${DEPLOY_SCENARIO}.yaml ]; then
653                   sudo opnfv-deploy -i  /root/inventory/pod_settings.yaml \
654                   -d /etc/opnfv-apex/${DEPLOY_SCENARIO}.yaml \
655                   -n /root/network_settings.yaml
656                 else
657                   echo "File does not exist /etc/opnfv-apex/${DEPLOY_SCENARIO}.yaml"
658                   exit 1
659                 fi
660               else
661                 echo "Deploy scenario not set!"
662                 exit 1
663               fi
664             else
665               echo "File /etc/opnfv-apex/network_settings.yaml does not exist!"
666               exit 1
667             fi
668
669             echo
670             echo "--------------------------------------------------------"
671             echo "Done!"
672
673 #######################
674 # trigger macros
675 ########################
676 - trigger:
677     name: 'apex-master'
678     triggers:
679         - timed: '0 3 * * *'