Change the docker push to be generic
[ci-management.git] / jjb / global-templates-java.yaml
1 ---
2 - job-template:
3     # Job template for Java verify jobs
4     #
5     # The purpose of this job template is to run "maven clean install" for
6     # projects using this template.
7     #
8     # Required Variables:
9     #     branch:    git branch (eg. stable/lithium or master)
10
11     name: '{project-name}-{stream}-verify-java-skip-tests'
12
13     project-type: freestyle
14     concurrent: true
15     node: '{build-node}'
16
17     properties:
18       - ecomp-infra-properties:
19           build-days-to-keep: '{build-days-to-keep}'
20
21     parameters:
22       - ecomp-infra-parameters:
23           project: '{project}'
24           branch: '{branch}'
25           refspec: 'refs/heads/{branch}'
26           artifacts: '{archive-artifacts}'
27
28     scm:
29       - gerrit-trigger-scm:
30           refspec: '$GERRIT_REFSPEC'
31           choosing-strategy: 'gerrit'
32
33     wrappers:
34       - ecomp-infra-wrappers:
35           build-timeout: '{build-timeout}'
36
37     triggers:
38       - gerrit-trigger-patch-submitted:
39           server: '{server-name}'
40           project: '{project}'
41           branch: '{branch}'
42           files: '**'
43
44     builders:
45       - provide-maven-settings:
46           global-settings-file: 'global-settings'
47           settings-file: '{mvn-settings}'
48       - maven-target:
49           maven-version: 'mvn33'
50           goals: 'clean install -DskipTests=true'
51           settings: '{mvn-settings}'
52           settings-type: cfp
53           global-settings: 'global-settings'
54           global-settings-type: cfp
55           maven-opts:
56             - maven.test.skip=true
57
58 #     publishers:
59 #       - ecomp-infra-shiplogs:
60 #           maven-version: 'mvn33'
61
62
63 - job-template:
64     # Job template for Java verify jobs
65     #
66     # The purpose of this job template is to run "maven clean install" for
67     # projects using this template.
68     #
69     # Required Variables:
70     #     branch:    git branch (eg. stable/lithium or master)
71
72     name: '{project-name}-{stream}-verify-java'
73
74     project-type: freestyle
75     concurrent: true
76     node: '{build-node}'
77
78     properties:
79       - ecomp-infra-properties:
80           build-days-to-keep: '{build-days-to-keep}'
81
82     parameters:
83       - ecomp-infra-parameters:
84           project: '{project}'
85           branch: '{branch}'
86           refspec: 'refs/heads/{branch}'
87           artifacts: '{archive-artifacts}'
88
89     scm:
90       - gerrit-trigger-scm:
91           refspec: '$GERRIT_REFSPEC'
92           choosing-strategy: 'gerrit'
93
94     wrappers:
95       - ecomp-infra-wrappers:
96           build-timeout: '{build-timeout}'
97
98     triggers:
99       - gerrit-trigger-patch-submitted:
100           server: '{server-name}'
101           project: '{project}'
102           branch: '{branch}'
103           files: '**'
104
105     builders:
106       - provide-maven-settings:
107           global-settings-file: 'global-settings'
108           settings-file: '{mvn-settings}'
109       - maven-target:
110           maven-version: 'mvn33'
111           goals: 'clean install'
112           settings: '{mvn-settings}'
113           settings-type: cfp
114           global-settings: 'global-settings'
115           global-settings-type: cfp
116
117 #     publishers:
118 #       - ecomp-infra-shiplogs:
119 #           maven-version: 'mvn33'
120
121 - job-template:
122     # Job template for Java verify jobs with POM not at the root
123     #
124     # The purpose of this job template is to run "maven clean install" for
125     # projects using this template.
126     #
127     # Required Variables:
128     #     branch:    git branch (eg. stable/lithium or master)
129     #     pom:       name/location of the pom.xml file relative to the workspace
130     #     pattern:   ant file-path pattern relative to the workspace used to
131     #                trigger the job
132
133     name: '{project-name}-{stream}-{subproject}-verify-java'
134
135     project-type: freestyle
136     concurrent: true
137     node: '{build-node}'
138
139     properties:
140       - ecomp-infra-properties:
141           build-days-to-keep: '{build-days-to-keep}'
142
143     parameters:
144       - ecomp-infra-parameters:
145           project: '{project}'
146           branch: '{branch}'
147           refspec: 'refs/heads/{branch}'
148           artifacts: '{archive-artifacts}'
149
150     scm:
151       - gerrit-trigger-scm:
152           refspec: '$GERRIT_REFSPEC'
153           choosing-strategy: 'gerrit'
154
155     wrappers:
156       - ecomp-infra-wrappers:
157           build-timeout: '{build-timeout}'
158
159     triggers:
160       - gerrit-trigger-patch-submitted:
161           server: '{server-name}'
162           project: '{project}'
163           branch: '{branch}'
164           files: '{pattern}'
165
166     builders:
167       - provide-maven-settings:
168           global-settings-file: 'global-settings'
169           settings-file: '{mvn-settings}'
170       - maven-target:
171           maven-version: 'mvn33'
172           pom: '{pom}'
173           goals: 'clean install'
174           settings: '{mvn-settings}'
175           settings-type: cfp
176           global-settings: 'global-settings'
177           global-settings-type: cfp
178
179 #     publishers:
180 #       - ecomp-infra-shiplogs:
181 #           maven-version: 'mvn33'
182
183 - job-template:
184     # Job template for Java daily release jobs
185     #
186     # The purpose of this job template is to run "maven version && maven clean
187     # deploy" for projects using this template.
188     #
189     # Required Variables:
190     #     branch:    git branch (eg. stable/lithium or master)
191     name: '{project-name}-{stream}-release-java-daily'
192
193     project-type: freestyle
194     node: '{build-node}'
195     maven-deploy-properties:
196     properties:
197       - ecomp-infra-properties:
198           build-days-to-keep: '{build-days-to-keep}'
199
200     parameters:
201       - ecomp-infra-parameters:
202           project: '{project}'
203           branch: '{branch}'
204           refspec: 'refs/heads/{branch}'
205           artifacts: '{archive-artifacts}'
206
207     scm:
208       - gerrit-trigger-scm:
209           refspec: ''
210           choosing-strategy: 'default'
211
212     wrappers:
213       - ecomp-infra-wrappers:
214           build-timeout: '{build-timeout}'
215
216     triggers:
217       # 11 AM UTC
218       - timed: 'H 11 * * *'
219       - gerrit-trigger-release-manually:
220           server: '{server-name}'
221           project: '{project}'
222           branch: '{branch}'
223
224     builders:
225       - provide-maven-settings:
226           global-settings-file: 'global-settings'
227           settings-file: '{mvn-settings}'
228
229       - maven-target:
230           maven-version: 'mvn33'
231           goals: 'clean deploy sonar:sonar -Dsonar.host.url=https://sonar.openecomp.org'
232           properties:
233             - '{maven-deploy-properties}'
234           settings: '{mvn-settings}'
235           settings-type: cfp
236           global-settings: 'global-settings'
237           global-settings-type: cfp
238
239 - job-template:
240     # Job template for Java daily release jobs
241     #
242     # The purpose of this job template is to run "maven version && maven clean
243     # deploy" for projects using this template.
244     #
245     # Required Variables:
246     #     branch:    git branch (eg. stable/lithium or master)
247     name: '{project-name}-{stream}-release-version-java-daily'
248
249     project-type: freestyle
250     node: '{build-node}'
251     maven-deploy-properties:
252     properties:
253       - ecomp-infra-properties:
254           build-days-to-keep: '{build-days-to-keep}'
255
256     parameters:
257       - ecomp-infra-parameters:
258           project: '{project}'
259           branch: '{branch}'
260           refspec: 'refs/heads/{branch}'
261           artifacts: '{archive-artifacts}'
262
263     scm:
264       - gerrit-trigger-scm:
265           refspec: ''
266           choosing-strategy: 'default'
267
268     wrappers:
269       - ecomp-infra-wrappers:
270           build-timeout: '{build-timeout}'
271
272     triggers:
273       # 11 AM UTC
274       - timed: 'H 11 * * *'
275       - gerrit-trigger-release-manually:
276           server: '{server-name}'
277           project: '{project}'
278           branch: '{branch}'
279
280     builders:
281       - provide-maven-settings:
282           global-settings-file: 'global-settings'
283           settings-file: '{mvn-settings}'
284
285       - inject:
286           properties-file: version.properties
287       - maven-target:
288           maven-version: 'mvn33'
289           goals: 'versions:set versions:update-child-modules versions:commit'
290           properties:
291             - 'newVersion=${{release_version}}'
292           settings: '{mvn-settings}'
293           settings-type: cfp
294           global-settings: 'global-settings'
295           global-settings-type: cfp
296
297       - maven-target:
298           maven-version: 'mvn33'
299           goals: 'clean deploy sonar:sonar -Dsonar.host.url=https://sonar.openecomp.org'
300           properties:
301             - '{maven-deploy-properties}'
302           settings: '{mvn-settings}'
303           settings-type: cfp
304           global-settings: 'global-settings'
305           global-settings-type: cfp
306
307 - job-template:
308     # Job template for Java daily release jobs with POM not at the root
309     #
310     # The purpose of this job template is to run "maven version && maven clean
311     # deploy" for projects using this template.
312     #
313     # Required Variables:
314     #     branch:    git branch (eg. stable/lithium or master)
315     #     pom:       name/location of the pom.xml file relative to the workspace
316
317
318     name: '{project-name}-{stream}-{subproject}-release-java-daily'
319
320     project-type: freestyle
321     node: '{build-node}'
322     maven-deploy-properties:
323     properties:
324       - ecomp-infra-properties:
325           build-days-to-keep: '{build-days-to-keep}'
326
327     parameters:
328       - ecomp-infra-parameters:
329           project: '{project}'
330           branch: '{branch}'
331           refspec: 'refs/heads/{branch}'
332           artifacts: '{archive-artifacts}'
333
334     scm:
335       - gerrit-trigger-scm:
336           refspec: ''
337           choosing-strategy: 'default'
338
339     wrappers:
340       - ecomp-infra-wrappers:
341           build-timeout: '{build-timeout}'
342
343     triggers:
344       # 11 AM UTC
345       - timed: 'H 11 * * *'
346       - gerrit-trigger-release-manually:
347           server: '{server-name}'
348           project: '{project}'
349           branch: '{branch}'
350
351     builders:
352       - provide-maven-settings:
353           global-settings-file: 'global-settings'
354           settings-file: '{mvn-settings}'
355
356       - maven-target:
357           maven-version: 'mvn33'
358           pom: '{pom}'
359           goals: 'clean deploy sonar:sonar -Dsonar.host.url=https://sonar.openecomp.org'
360           properties:
361             - '{maven-deploy-properties}'
362           settings: '{mvn-settings}'
363           settings-type: cfp
364           global-settings: 'global-settings'
365           global-settings-type: cfp
366
367 - job-template:
368     # Job template for Java merge jobs
369     #
370     # The purpose of this job template is to run "maven clean deploy" for
371     # projects using this template.
372     #
373     # Required Variables:
374     #     branch:    git branch (eg. stable/lithium or master)
375     name: '{project-name}-{stream}-merge-java'
376
377     project-type: freestyle
378     node: '{build-node}'
379
380     properties:
381       - ecomp-infra-properties:
382           build-days-to-keep: '{build-days-to-keep}'
383
384     parameters:
385       - ecomp-infra-parameters:
386           project: '{project}'
387           branch: '{branch}'
388           refspec: 'refs/heads/{branch}'
389           artifacts: '{archive-artifacts}'
390
391     scm:
392       - gerrit-trigger-scm:
393           refspec: ''
394           choosing-strategy: 'default'
395
396     wrappers:
397       - ecomp-infra-wrappers:
398           build-timeout: '{build-timeout}'
399
400     triggers:
401       - gerrit-trigger-patch-merged:
402           server: '{server-name}'
403           project: '{project}'
404           branch: '{branch}'
405           files: '**'
406
407     builders:
408       - provide-maven-settings:
409           global-settings-file: 'global-settings'
410           settings-file: '{mvn-settings}'
411       - maven-target:
412           maven-version: 'mvn33'
413           # yamllint disable rule:line-length
414           goals: 'clean deploy'
415           # yamllint enable
416           settings: '{mvn-settings}'
417           settings-type: cfp
418           global-settings: 'global-settings'
419           global-settings-type: cfp
420
421 #     publishers:
422 #       - ecomp-infra-shiplogs:
423 #           maven-version: 'mvn33'
424
425 - job-template:
426     # Job template for Java merge jobs that should also be triggered by upstream
427     # merges
428     #
429     # Required Variables:
430     #   stream:         release stream
431     #   branch:         git branch
432     #   dependencies:   fully qualified upstream job name to trigger on
433     #                   this may be ''
434     name: '{project-name}-{stream}-downstream-merge-java'
435
436     project-type: freestyle
437     node: '{build-node}'
438
439     properties:
440       - ecomp-infra-properties:
441           build-days-to-keep: '{build-days-to-keep}'
442
443     parameters:
444       - ecomp-infra-parameters:
445           project: '{project}'
446           branch: '{branch}'
447           refspec: 'refs/heads/{branch}'
448           artifacts: '{archive-artifacts}'
449
450     scm:
451       - gerrit-trigger-scm:
452           refspec: ''
453           choosing-strategy: 'default'
454
455     wrappers:
456       - ecomp-infra-wrappers:
457           build-timeout: '{build-timeout}'
458
459     triggers:
460       - reverse:
461           jobs: '{dependencies}'
462           result: 'success'
463       - gerrit-trigger-patch-merged:
464           server: '{server-name}'
465           project: '{project}'
466           branch: '{branch}'
467           files: '**'
468
469     builders:
470       - provide-maven-settings:
471           global-settings-file: 'global-settings'
472           settings-file: '{mvn-settings}'
473       - maven-target:
474           maven-version: 'mvn33'
475           # yamllint disable rule:line-length
476           goals: 'clean deploy'
477           # yamllint enable
478           settings: '{mvn-settings}'
479           settings-type: cfp
480           global-settings: 'global-settings'
481           global-settings-type: cfp
482
483 #     publishers:
484 #       - ecomp-infra-shiplogs:
485 #           maven-version: 'mvn33'
486
487 - job-template:
488     # Job template for Java merge jobs with POM not at the root
489     #
490     # The purpose of this job template is to run "maven clean deploy" for
491     # projects using this template.
492     #
493     # Required Variables:
494     #     branch:    git branch (eg. stable/lithium or master)
495     #     pom:       name/location of the pom.xml file relative to the workspace
496     #     pattern:   ant file-path pattern relative to the workspace used to
497     #                trigger the job
498
499     name: '{project-name}-{stream}-{subproject}-merge-java'
500
501     project-type: freestyle
502     node: '{build-node}'
503
504     properties:
505       - ecomp-infra-properties:
506           build-days-to-keep: '{build-days-to-keep}'
507
508     parameters:
509       - ecomp-infra-parameters:
510           project: '{project}'
511           branch: '{branch}'
512           refspec: 'refs/heads/{branch}'
513           artifacts: '{archive-artifacts}'
514
515     scm:
516       - gerrit-trigger-scm:
517           refspec: ''
518           choosing-strategy: 'default'
519
520     wrappers:
521       - ecomp-infra-wrappers:
522           build-timeout: '{build-timeout}'
523
524     triggers:
525       - gerrit-trigger-patch-merged:
526           server: '{server-name}'
527           project: '{project}'
528           branch: '{branch}'
529           files: '{pattern}'
530
531     builders:
532       - provide-maven-settings:
533           global-settings-file: 'global-settings'
534           settings-file: '{mvn-settings}'
535       - maven-target:
536           maven-version: 'mvn33'
537           pom: '{pom}'
538           # yamllint disable rule:line-length
539           goals: 'clean deploy'
540           # yamllint enable
541           settings: '{mvn-settings}'
542           settings-type: cfp
543           global-settings: 'global-settings'
544           global-settings-type: cfp
545
546 #     publishers:
547 #       - ecomp-infra-shiplogs:
548 #           maven-version: 'mvn33'
549
550 - job-template:
551     name: '{project-name}-{stream}-docker-java-daily'
552     project-type: freestyle
553     node: 'ubuntu1604-docker-8c-8g'
554
555     properties:
556       - ecomp-infra-properties:
557           build-days-to-keep: '{build-days-to-keep}'
558
559     parameters:
560       - ecomp-infra-parameters:
561           project: '{project}'
562           branch: '{branch}'
563           refspec: 'refs/heads/{branch}'
564           artifacts: '{archive-artifacts}'
565
566     scm:
567       - gerrit-trigger-scm:
568           refspec: ''
569           choosing-strategy: 'default'
570
571     wrappers:
572       - ecomp-infra-wrappers:
573           build-timeout: '{build-timeout}'
574
575     triggers:
576       # 12 AM UTC
577       - timed: 'H 12 * * *'
578       - gerrit-trigger-release-manually:
579           server: '{server-name}'
580           project: '{project}'
581           branch: '{branch}'
582
583     builders:
584
585       - provide-maven-settings:
586           global-settings-file: 'global-settings'
587           settings-file: '{mvn-settings}'
588
589       - docker-login
590
591       - maven-docker-push-daily:
592           mvn-settings: '{mvn-settings}'
593           pom: '{docker-pom}'
594           # use default as mvn-profile if profile is not needed
595           mvn-profile: '{mvn-profile}'
596
597 - job-template:
598     name: '{project-name}-{stream}-docker-java-shell-daily'
599     project-type: freestyle
600     node: 'ubuntu1604-docker-8c-8g'
601
602     properties:
603       - ecomp-infra-properties:
604           build-days-to-keep: '{build-days-to-keep}'
605
606     parameters:
607       - ecomp-infra-parameters:
608           project: '{project}'
609           branch: '{branch}'
610           refspec: 'refs/heads/{branch}'
611           artifacts: '{archive-artifacts}'
612
613     scm:
614       - gerrit-trigger-scm:
615           refspec: ''
616           choosing-strategy: 'default'
617
618     wrappers:
619       - ecomp-infra-wrappers:
620           build-timeout: '{build-timeout}'
621
622     triggers:
623       # 12 AM UTC
624       - timed: 'H 12 * * *'
625       - gerrit-trigger-release-manually:
626           server: '{server-name}'
627           project: '{project}'
628           branch: '{branch}'
629
630     builders:
631
632       - provide-maven-settings:
633           global-settings-file: 'global-settings'
634           settings-file: '{mvn-settings}'
635
636       - docker-login
637
638       - maven-target:
639           maven-version: 'mvn33'
640           goals: '{mvn-goals}'
641           settings: '{mvn-settings}'
642           settings-type: cfp
643           global-settings: 'global-settings'
644           global-settings-type: cfp
645
646       - shell: '{script}'
647
648 - job-template:
649     name: '{project-name}-{stream}-aai-docker-java-daily'
650     project-type: freestyle
651     node: 'ubuntu1604-docker-8c-8g'
652
653     properties:
654       - ecomp-infra-properties:
655           build-days-to-keep: '{build-days-to-keep}'
656
657     parameters:
658       - ecomp-infra-parameters:
659           project: '{project}'
660           branch: '{branch}'
661           refspec: 'refs/heads/{branch}'
662           artifacts: '{archive-artifacts}'
663
664     scm:
665       - gerrit-trigger-scm:
666           refspec: ''
667           choosing-strategy: 'default'
668
669     wrappers:
670       - ecomp-infra-wrappers:
671           build-timeout: '{build-timeout}'
672
673     triggers:
674       # 12 AM UTC
675       - timed: 'H 12 * * *'
676       - gerrit-trigger-release-manually:
677           server: '{server-name}'
678           project: '{project}'
679           branch: '{branch}'
680
681     builders:
682
683       - provide-maven-settings:
684           global-settings-file: 'global-settings'
685           settings-file: '{mvn-settings}'
686
687       - docker-login
688
689       - maven-target:
690           maven-version: 'mvn33'
691           pom: 'pom.xml'
692           goals: 'clean install -DskipTests'
693           settings: '{mvn-settings}'
694           settings-type: cfp
695           global-settings: 'global-settings'
696           global-settings-type: cfp
697
698       - maven-target:
699           maven-version: 'mvn33'
700           pom: '{pom}'
701           goals: '{mvn-goals}'
702           settings: '{mvn-settings}'
703           settings-type: cfp
704           global-settings: 'global-settings'
705           global-settings-type: cfp
706           properties:
707             - maven.test.skip=true
708             - docker.pull.registry=nexus3.openecomp.org:10001
709             - docker.push.registry=nexus3.openecomp.org:10003
710
711       - shell: !include-raw-escape: include-docker-push.sh
712
713 - job-template:
714     # Job template for Java daily release jobs
715     #
716     # The purpose of this job template is to run
717     #   - change version in all POM files to the release version specified
718     #     in version.properties. This is done using a script instread of
719     #     the mvn version plugin that assumes some specific parent structure.
720     #   - runs maven clean deploy sonar
721     #
722     # The POM files are required to use the Maven staging plugin so the deploy
723     # does not deploy directly to the release repo.
724     #
725     # Required Variables:
726     #     branch:    git branch (eg. stable/lithium or master)
727     name: '{project-name}-{stream}-release-version2-java-daily'
728
729     project-type: freestyle
730     node: '{build-node}'
731     maven-deploy-properties:
732     properties:
733       - ecomp-infra-properties:
734           build-days-to-keep: '{build-days-to-keep}'
735
736     parameters:
737       - ecomp-infra-parameters:
738           project: '{project}'
739           branch: '{branch}'
740           refspec: 'refs/heads/{branch}'
741           artifacts: '{archive-artifacts}'
742
743     scm:
744       - gerrit-trigger-scm:
745           refspec: ''
746           choosing-strategy: 'default'
747
748     wrappers:
749       - ecomp-infra-wrappers:
750           build-timeout: '{build-timeout}'
751
752     triggers:
753       # 11 AM UTC
754       - timed: 'H 11 * * *'
755       - gerrit-trigger-release-manually:
756           server: '{server-name}'
757           project: '{project}'
758           branch: '{branch}'
759
760     builders:
761       - provide-maven-settings:
762           global-settings-file: 'global-settings'
763           settings-file: '{mvn-settings}'
764
765       - inject:
766           properties-file: version.properties
767
768       - shell: !include-raw-escape: include-update-pom-versions.sh
769
770       - maven-target:
771           maven-version: 'mvn33'
772           goals: 'clean deploy sonar:sonar -Dsonar.host.url=https://sonar.openecomp.org'
773           properties:
774             - '{maven-deploy-properties}'
775           settings: '{mvn-settings}'
776           settings-type: cfp
777           global-settings: 'global-settings'
778           global-settings-type: cfp
779
780 - job-template:
781     # Job template for Java daily release jobs
782     #
783     # The purpose of this job template is to run
784     #   - change version in all POM files to the release version specified
785     #     in version.properties. This is done using a script instread of
786     #     the mvn version plugin that assumes some specific parent structure.
787     #   - runs maven clean deploy sonar
788     #
789     # The POM files are required to use the Maven staging plugin so the deploy
790     # does not deploy directly to the release repo.
791     #
792     # Required Variables:
793     #     branch:    git branch (eg. stable/lithium or master)
794     #     pom:       name/location of the pom.xml file relative to the workspace
795     #     pattern:   ant file-path pattern relative to the workspace used to
796     #                trigger the job
797
798     name: '{project-name}-{stream}-{subproject}-release-version2-java-daily'
799
800     project-type: freestyle
801     node: '{build-node}'
802     maven-deploy-properties:
803     properties:
804       - ecomp-infra-properties:
805           build-days-to-keep: '{build-days-to-keep}'
806
807     parameters:
808       - ecomp-infra-parameters:
809           project: '{project}'
810           branch: '{branch}'
811           refspec: 'refs/heads/{branch}'
812           artifacts: '{archive-artifacts}'
813
814     scm:
815       - gerrit-trigger-scm:
816           refspec: ''
817           choosing-strategy: 'default'
818
819     wrappers:
820       - ecomp-infra-wrappers:
821           build-timeout: '{build-timeout}'
822
823     triggers:
824       # 11 AM UTC
825       - timed: 'H 11 * * *'
826       - gerrit-trigger-release-manually:
827           server: '{server-name}'
828           project: '{project}'
829           branch: '{branch}'
830           files: '{pattern}'
831
832     builders:
833       - provide-maven-settings:
834           global-settings-file: 'global-settings'
835           settings-file: '{mvn-settings}'
836
837       - inject:
838           properties-file: version.properties
839
840       - shell: !include-raw-escape: include-update-pom-versions.sh
841
842       - maven-target:
843           maven-version: 'mvn33'
844           pom: '{pom}'
845           goals: 'clean deploy sonar:sonar -Dsonar.host.url=https://sonar.openecomp.org'
846           properties:
847             - '{maven-deploy-properties}'
848           settings: '{mvn-settings}'
849           settings-type: cfp
850           global-settings: 'global-settings'
851           global-settings-type: cfp