Add devstack rocky packer job
[releng/builder.git] / jjb / opflex / opflex-macros.yaml
1 ---
2 # OpFlex macros
3
4 - builder:
5     name: opflex-build
6     builders:
7       - maven-target:
8           maven-version: 'mvn33'
9           pom: genie/pom.xml
10           goals: compile
11       - shell: !include-raw-escape: scripts/opflex-build.sh
12
13 - builder:
14     name: 'opflex-build-libuv'
15     builders:
16       - shell: !include-raw-escape: scripts/libuv-build.sh
17
18 - builder:
19     name: 'opflex-build-openvswitch'
20     builders:
21       - shell: !include-raw: scripts/openvswitch-build.sh
22
23 - builder:
24     name: 'opflex-build-rapidjson'
25     builders:
26       - shell: !include-raw-escape: scripts/rapidjson-build.sh
27
28 - builder:
29     name: opflex-deploy-maven-file
30     # Todo: Remove this builder when the generic version of the builder is
31     # available in global-jjb. Change no: 5753
32     # Deploy artifacts to a repository.
33     #
34     # The builder requires passing the following parameters
35     # REPO_ID:           Repository ID
36     # GROUP_ID:          Group ID of the repository
37     # UPLOAD_FILES_PATH: Path to directory containing one or more files
38     builders:
39       - lf-maven-install:
40           mvn-version: '{mvn-version}'
41       - lf-provide-maven-settings:
42           global-settings-file: '{global-settings-file}'
43           settings-file: '{settings-file}'
44       - inject:
45           properties-content: |
46               MAVEN_REPO_URL=file://$WORKSPACE/m2repo
47               REPO_ID={repo-id}
48               GROUP_ID={group-id}
49               UPLOAD_FILES_PATH={upload-files-dir}
50       - shell: !include-raw-escape:
51           - ../global-jjb/shell/common-variables.sh
52           - scripts/deploy-opflex.sh
53
54 - builder:
55     name: opflex-maven-stage
56     # Todo: Migrate to the generic version of the builders available in
57     # global-jjb. Change no: 5753
58     # Stage files to Nexus repository.
59     #
60     # The builder requires passing the following parameters
61     # REPO_ID             : Repository ID
62     # GROUP_ID            : Group ID of the repository
63     # UPLOAD_FILES_PATH   : Path to directory containing one or more files
64     # STAGING_PROFILE_ID  : Staging profile id created on Nexus
65     builders:
66       - lf-provide-maven-settings:
67           global-settings-file: '{global-settings-file}'
68           settings-file: '{settings-file}'
69       - lf-infra-create-netrc:
70           server-id: opendaylight-staging
71       - inject:
72           properties-content: |
73               STAGING_PROFILE_ID={staging-profile-id}
74       - shell: !include-raw-escape:
75           - ../global-jjb/shell/maven-stage.sh
76
77 - scm:
78     name: 'git-opflex-libuv'
79     scm:
80       - git:
81           url: https://github.com/libuv/libuv.git
82           branches:
83             - 'refs/tags/v$LIBUV_VERSION'
84           wipe-workspace: true
85
86 - scm:
87     name: 'git-opflex-ovs-v2'
88     scm:
89       - git:
90           url: https://github.com/openvswitch/ovs.git
91           branches:
92             - 'refs/tags/v$OPENVSWITCH_VERSION'
93           wipe-workspace: true
94
95 - scm:
96     name: 'git-opflex-rapidjson'
97     scm:
98       - git:
99           url: https://github.com/miloyip/rapidjson.git
100           branches:
101             - 'refs/tags/v$RAPIDJSON_VERSION'
102           wipe-workspace: true