229 *
230 * @param input External data to use for generating the configuration
231 * @returns Common values
232 */
233 var getJibProfilesCommon = function (input, data) {
234 var common = {};
235
236 common.organization = "jpg.infra.builddeps";
237 common.build_id = getBuildId(input);
238 common.build_number = input.build_number != null ? input.build_number : "0";
239
240 // List of the main profile names used for iteration
241 common.main_profile_names = [
242 "linux-x64", "linux-x86", "macosx-x64", "solaris-x64",
243 "solaris-sparcv9", "windows-x64", "windows-x86",
244 "linux-aarch64", "linux-arm32", "linux-ppc64le", "linux-s390x"
245 ];
246
247 // These are the base setttings for all the main build profiles.
248 common.main_profile_base = {
249 dependencies: ["boot_jdk", "gnumake", "jtreg", "jib", "autoconf", "jmh", "jcov"],
250 default_make_targets: ["product-bundles", "test-bundles", "static-libs-bundles"],
251 configure_args: concat(["--enable-jtreg-failure-handler"],
252 "--with-exclude-translations=de,es,fr,it,ko,pt_BR,sv,ca,tr,cs,sk,ja_JP_A,ja_JP_HA,ja_JP_HI,ja_JP_I,zh_TW,zh_HK",
253 "--disable-manpages",
254 "--disable-jvm-feature-shenandoahgc",
255 versionArgs(input, common))
256 };
257 // Extra settings for debug profiles
258 common.debug_suffix = "-debug";
259 common.debug_profile_base = {
260 configure_args: ["--enable-debug"],
261 labels: "debug"
262 };
263 // Extra settings for slowdebug profiles
264 common.slowdebug_suffix = "-slowdebug";
265 common.slowdebug_profile_base = {
266 configure_args: ["--with-debug-level=slowdebug"],
267 labels: "slowdebug"
268 };
269 // Extra settings for openjdk only profiles
823 "bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-gcov-tests.tar.gz",
824 ],
825 exploded: "images/test"
826 },
827 jdk_symbols: {
828 local: "bundles/\\(jdk.*bin-symbols.tar.gz\\)",
829 remote: [
830 "bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-gcov-symbols.tar.gz",
831 ],
832 subdir: jdk_subdir,
833 exploded: "images/jdk"
834 },
835 };
836 });
837
838 // Profiles used to run tests.
839 var testOnlyProfiles = {
840 "run-test": {
841 target_os: input.build_os,
842 target_cpu: input.build_cpu,
843 dependencies: [ "jtreg", "gnumake", "boot_jdk", "devkit", "jib" ],
844 labels: "test",
845 environment: {
846 "JT_JAVA": common.boot_jdk_home
847 }
848 }
849 };
850 profiles = concatObjects(profiles, testOnlyProfiles);
851
852 // Profiles used to run tests using Jib for internal dependencies.
853 var testedProfile = input.testedProfile;
854 if (testedProfile == null) {
855 testedProfile = input.build_os + "-" + input.build_cpu;
856 }
857 var testedProfileJdk = testedProfile + ".jdk";
858 // Make it possible to use the test image from a different profile
859 var testImageProfile;
860 if (input.testImageProfile != null) {
861 testImageProfile = input.testImageProfile;
862 } else if (testedProfile.endsWith("-jcov")) {
863 testImageProfile = testedProfile.substring(0, testedProfile.length - "-jcov".length);
864 } else {
865 testImageProfile = testedProfile;
866 }
867 var testedProfileTest = testImageProfile + ".test"
868 var testOnlyMake = [ "test-prebuilt", "LOG_CMDLINES=true", "JTREG_VERBOSE=fail,error,time" ];
869 if (testedProfile.endsWith("-gcov")) {
870 testOnlyMake = concat(testOnlyMake, "GCOV_ENABLED=true")
871 }
872 var testOnlyProfilesPrebuilt = {
873 "run-test-prebuilt": {
874 target_os: input.build_os,
875 target_cpu: input.build_cpu,
876 dependencies: [
877 "jtreg", "gnumake", "boot_jdk", "devkit", "jib", "jcov", testedProfileJdk,
878 testedProfileTest
879 ],
880 src: "src.conf",
881 make_args: testOnlyMake,
882 environment: {
883 "BOOT_JDK": common.boot_jdk_home,
884 "JDK_IMAGE_DIR": input.get(testedProfileJdk, "home_path"),
885 "TEST_IMAGE_DIR": input.get(testedProfileTest, "home_path")
886 },
887 labels: "test"
888 }
889 };
890
891 // If actually running the run-test-prebuilt profile, verify that the input
892 // variable is valid and if so, add the appropriate target_* values from
893 // the tested profile. Use testImageProfile value as backup.
894 if (input.profile == "run-test-prebuilt") {
895 if (profiles[testedProfile] == null && profiles[testImageProfile] == null) {
896 error("testedProfile is not defined: " + testedProfile + " " + testImageProfile);
897 }
1045 revision: devkit_platform_revisions[input.build_platform]
1046 },
1047
1048 cups: {
1049 organization: common.organization,
1050 ext: "tar.gz",
1051 revision: "1.0118+1.0"
1052 },
1053
1054 jtreg: {
1055 server: "jpg",
1056 product: "jtreg",
1057 version: "5.0",
1058 build_number: "b01",
1059 checksum_file: "MD5_VALUES",
1060 file: "bundles/jtreg_bin-5.0.zip",
1061 environment_name: "JT_HOME",
1062 environment_path: input.get("jtreg", "install_path") + "/jtreg/bin"
1063 },
1064
1065 jmh: {
1066 organization: common.organization,
1067 ext: "tar.gz",
1068 revision: "1.21+1.0"
1069 },
1070
1071 jcov: {
1072 // Until an official build of JCov is available, use custom
1073 // build to support classfile version 57.
1074 // See CODETOOLS-7902358 for more info.
1075 // server: "jpg",
1076 // product: "jcov",
1077 // version: "3.0",
1078 // build_number: "b07",
1079 // file: "bundles/jcov-3_0.zip",
1080 organization: common.organization,
1081 revision: "3.0-59-support+1.0",
1082 ext: "zip",
1083 environment_name: "JCOV_HOME",
1084 },
|
229 *
230 * @param input External data to use for generating the configuration
231 * @returns Common values
232 */
233 var getJibProfilesCommon = function (input, data) {
234 var common = {};
235
236 common.organization = "jpg.infra.builddeps";
237 common.build_id = getBuildId(input);
238 common.build_number = input.build_number != null ? input.build_number : "0";
239
240 // List of the main profile names used for iteration
241 common.main_profile_names = [
242 "linux-x64", "linux-x86", "macosx-x64", "solaris-x64",
243 "solaris-sparcv9", "windows-x64", "windows-x86",
244 "linux-aarch64", "linux-arm32", "linux-ppc64le", "linux-s390x"
245 ];
246
247 // These are the base setttings for all the main build profiles.
248 common.main_profile_base = {
249 dependencies: ["boot_jdk", "gnumake", "jtreg", "jtregMW", "jib", "autoconf", "jmh", "jcov"],
250 default_make_targets: ["product-bundles", "test-bundles", "static-libs-bundles"],
251 configure_args: concat(["--enable-jtreg-failure-handler"],
252 "--with-exclude-translations=de,es,fr,it,ko,pt_BR,sv,ca,tr,cs,sk,ja_JP_A,ja_JP_HA,ja_JP_HI,ja_JP_I,zh_TW,zh_HK",
253 "--disable-manpages",
254 "--disable-jvm-feature-shenandoahgc",
255 versionArgs(input, common))
256 };
257 // Extra settings for debug profiles
258 common.debug_suffix = "-debug";
259 common.debug_profile_base = {
260 configure_args: ["--enable-debug"],
261 labels: "debug"
262 };
263 // Extra settings for slowdebug profiles
264 common.slowdebug_suffix = "-slowdebug";
265 common.slowdebug_profile_base = {
266 configure_args: ["--with-debug-level=slowdebug"],
267 labels: "slowdebug"
268 };
269 // Extra settings for openjdk only profiles
823 "bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-gcov-tests.tar.gz",
824 ],
825 exploded: "images/test"
826 },
827 jdk_symbols: {
828 local: "bundles/\\(jdk.*bin-symbols.tar.gz\\)",
829 remote: [
830 "bundles/" + pf + "/jdk-" + data.version + "_" + pf + "_bin-gcov-symbols.tar.gz",
831 ],
832 subdir: jdk_subdir,
833 exploded: "images/jdk"
834 },
835 };
836 });
837
838 // Profiles used to run tests.
839 var testOnlyProfiles = {
840 "run-test": {
841 target_os: input.build_os,
842 target_cpu: input.build_cpu,
843 dependencies: [ "jtreg", "jtregMW", "gnumake", "boot_jdk", "devkit", "jib" ],
844 labels: "test",
845 environment: {
846 "JT_JAVA": common.boot_jdk_home
847 }
848 }
849 };
850 profiles = concatObjects(profiles, testOnlyProfiles);
851
852 // Profiles used to run tests using Jib for internal dependencies.
853 var testedProfile = input.testedProfile;
854 if (testedProfile == null) {
855 testedProfile = input.build_os + "-" + input.build_cpu;
856 }
857 var testedProfileJdk = testedProfile + ".jdk";
858 // Make it possible to use the test image from a different profile
859 var testImageProfile;
860 if (input.testImageProfile != null) {
861 testImageProfile = input.testImageProfile;
862 } else if (testedProfile.endsWith("-jcov")) {
863 testImageProfile = testedProfile.substring(0, testedProfile.length - "-jcov".length);
864 } else {
865 testImageProfile = testedProfile;
866 }
867 var testedProfileTest = testImageProfile + ".test"
868 var testOnlyMake = [ "test-prebuilt", "LOG_CMDLINES=true", "JTREG_VERBOSE=fail,error,time" ];
869 if (testedProfile.endsWith("-gcov")) {
870 testOnlyMake = concat(testOnlyMake, "GCOV_ENABLED=true")
871 }
872 var testOnlyProfilesPrebuilt = {
873 "run-test-prebuilt": {
874 target_os: input.build_os,
875 target_cpu: input.build_cpu,
876 dependencies: [
877 "jtreg", "jtregMW", "gnumake", "boot_jdk", "devkit", "jib", "jcov", testedProfileJdk,
878 testedProfileTest
879 ],
880 src: "src.conf",
881 make_args: testOnlyMake,
882 environment: {
883 "BOOT_JDK": common.boot_jdk_home,
884 "JDK_IMAGE_DIR": input.get(testedProfileJdk, "home_path"),
885 "TEST_IMAGE_DIR": input.get(testedProfileTest, "home_path")
886 },
887 labels: "test"
888 }
889 };
890
891 // If actually running the run-test-prebuilt profile, verify that the input
892 // variable is valid and if so, add the appropriate target_* values from
893 // the tested profile. Use testImageProfile value as backup.
894 if (input.profile == "run-test-prebuilt") {
895 if (profiles[testedProfile] == null && profiles[testImageProfile] == null) {
896 error("testedProfile is not defined: " + testedProfile + " " + testImageProfile);
897 }
1045 revision: devkit_platform_revisions[input.build_platform]
1046 },
1047
1048 cups: {
1049 organization: common.organization,
1050 ext: "tar.gz",
1051 revision: "1.0118+1.0"
1052 },
1053
1054 jtreg: {
1055 server: "jpg",
1056 product: "jtreg",
1057 version: "5.0",
1058 build_number: "b01",
1059 checksum_file: "MD5_VALUES",
1060 file: "bundles/jtreg_bin-5.0.zip",
1061 environment_name: "JT_HOME",
1062 environment_path: input.get("jtreg", "install_path") + "/jtreg/bin"
1063 },
1064
1065 jtregMW: {
1066 organization: common.organization,
1067 ext: "zip",
1068 revision: "5.0-virtual-1.1",
1069 environment_name: "JT_HOME_MW",
1070 environment_path: input.get("jtreg", "install_path") + "/jtreg/bin"
1071 },
1072
1073 jmh: {
1074 organization: common.organization,
1075 ext: "tar.gz",
1076 revision: "1.21+1.0"
1077 },
1078
1079 jcov: {
1080 // Until an official build of JCov is available, use custom
1081 // build to support classfile version 57.
1082 // See CODETOOLS-7902358 for more info.
1083 // server: "jpg",
1084 // product: "jcov",
1085 // version: "3.0",
1086 // build_number: "b07",
1087 // file: "bundles/jcov-3_0.zip",
1088 organization: common.organization,
1089 revision: "3.0-59-support+1.0",
1090 ext: "zip",
1091 environment_name: "JCOV_HOME",
1092 },
|