Skip to content

Commit c6c57ea

Browse files
authored
Move -install-pkg- jobs to be generated using gz-collections.yaml (#1093)
* Generate -install-pkg jobs on gazebo_libs * Remove install-pkg jobs from ignition.dsl * Automated change: update logs [skip ci] --------- Signed-off-by: Jose Luis Rivero <jrivero@osrfoundation.org> Co-authored-by: j-rivero <j-rivero@users.noreply.github.com>
1 parent bf7fb65 commit c6c57ea

File tree

4 files changed

+129
-106
lines changed

4 files changed

+129
-106
lines changed

jenkins-scripts/dsl/gazebo_libs.dsl

Lines changed: 43 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ GITHUB_SUPPORT_ALL_BRANCHES = []
1212
ENABLE_GITHUB_PR_INTEGRATION = true
1313

1414
def WRITE_JOB_LOG = System.getenv('WRITE_JOB_LOG') ?: false
15-
logging_list = [:]
15+
logging_list = [:].withDefault {[]}
1616
logging_list['branch_ci'] = []
1717
logging_list['asan_ci'] = []
1818

@@ -179,7 +179,6 @@ void add_brew_shell_build_step(gz_brew_ci_job, lib_name, ws_checkout_dir)
179179

180180
void generate_brew_ci_job(gz_brew_ci_job, lib_name, branch, ci_config)
181181
{
182-
def script_name_prefix = cleanup_library_name(lib_name)
183182
def ws_checkout_dir = lib_name
184183
OSRFBrewCompilation.create(gz_brew_ci_job,
185184
is_testing_enabled(lib_name, ci_config),
@@ -218,6 +217,36 @@ void generate_win_ci_job(gz_win_ci_job, lib_name, branch, ci_config)
218217
add_win_devel_bat_call(gz_win_ci_job, lib_name, ws_checkout_dir)
219218
}
220219

220+
String generate_linux_install(src_name, lib_name, platform, arch)
221+
{
222+
def script_name_prefix = cleanup_library_name(src_name)
223+
def job_name = "${script_name_prefix}-install-pkg-${platform}-${arch}"
224+
def install_default_job = job(job_name)
225+
OSRFLinuxInstall.create(install_default_job)
226+
install_default_job.with
227+
{
228+
triggers {
229+
cron(Globals.CRON_EVERY_THREE_DAYS)
230+
}
231+
232+
def dev_package = "lib${src_name}-dev"
233+
234+
steps {
235+
shell("""\
236+
#!/bin/bash -xe
237+
238+
${GLOBAL_SHELL_CMD}
239+
export DISTRO=${platform}
240+
export ARCH=${arch}
241+
export INSTALL_JOB_PKG=${dev_package}
242+
export GZDEV_PROJECT_NAME="${src_name}"
243+
/bin/bash -x ./scripts/jenkins-scripts/docker/generic-install-test-job.bash
244+
""".stripIndent())
245+
}
246+
}
247+
return job_name
248+
}
249+
221250
def ciconf_per_lib_index = [:].withDefault { [:] }
222251
def pkgconf_per_src_index = [:].withDefault { [:] }
223252
generate_ciconfigs_by_lib(gz_collections_yaml, ciconf_per_lib_index, pkgconf_per_src_index)
@@ -378,17 +407,27 @@ pkgconf_per_src_index.each { pkg_src, pkg_src_configs ->
378407
def pkg_config = gz_collections_yaml.packaging_configs.find{ it.name == config_name }
379408
// lib_names are the same in all the entries
380409
def canonical_lib_name = pkg_src_config.getValue()[0].lib_name
381-
382410
if (pkg_config.exclude?.contains(canonical_lib_name))
383411
return
384-
412+
def pkg_system = pkg_config.system
413+
// --------------------------------------------------------------
385414
def gz_source_job = job("${pkg_src}-source")
386415
OSRFSourceCreation.create(gz_source_job, [
387416
PACKAGE: pkg_src,
388417
SOURCE_REPO_URI: "https://github.com/gazebosim/${canonical_lib_name}.git"])
389418
OSRFSourceCreation.call_uploader_and_releasepy(gz_source_job,
390419
'repository_uploader_packages',
391420
'_releasepy')
421+
// --------------------------------------------------------------
422+
pkg_system.arch.each { arch ->
423+
def job_name = generate_linux_install(
424+
pkg_src, canonical_lib_name, pkg_system.version, arch)
425+
pkg_src_config.getValue().each { index_entry ->
426+
logging_list['install_ci'].add(
427+
[collection: index_entry.collection,
428+
job_name: job_name])
429+
}
430+
}
392431
}
393432
}
394433

jenkins-scripts/dsl/gz-collections.yaml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -440,8 +440,6 @@ collections:
440440
packaging:
441441
configs:
442442
- jammy
443-
exclude:
444-
- __upcoming__
445443
ci_configs:
446444
- name: focal
447445
system:
@@ -569,13 +567,12 @@ packaging_configs:
569567
version: focal
570568
arch:
571569
- amd64
572-
- arm64
573570
- name: jammy
574571
system:
575572
so: linux
576573
distribution: ubuntu
577574
version: jammy
578575
arch:
579576
- amd64
580-
- arm64
581-
- armhf
577+
exclude:
578+
- __upcoming__

jenkins-scripts/dsl/ignition.dsl

Lines changed: 0 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -354,37 +354,6 @@ boolean is_a_colcon_package(String gz_software_name)
354354
return false
355355
}
356356

357-
void generate_install_job(prefix, gz_sw, major_version, distro, arch)
358-
{
359-
def install_default_job = job("${prefix}_${gz_sw}${major_version}-install-pkg-${distro}-${arch}")
360-
OSRFLinuxInstall.create(install_default_job)
361-
include_gpu_label_if_needed(install_default_job, gz_sw)
362-
363-
install_default_job.with
364-
{
365-
triggers {
366-
cron(Globals.CRON_EVERY_THREE_DAYS)
367-
}
368-
369-
def dev_package = "lib${prefix}-${gz_sw}${major_version}-dev"
370-
def gzdev_project = "${prefix}-${gz_sw}${major_version}"
371-
372-
steps {
373-
shell("""\
374-
#!/bin/bash -xe
375-
376-
${GLOBAL_SHELL_CMD}
377-
378-
export DISTRO=${distro}
379-
export ARCH=${arch}
380-
export INSTALL_JOB_PKG=${dev_package}
381-
export GZDEV_PROJECT_NAME="${gzdev_project}"
382-
/bin/bash -x ./scripts/jenkins-scripts/docker/generic-install-test-job.bash
383-
""".stripIndent())
384-
}
385-
}
386-
}
387-
388357
// Need to be before the ci-pr_any so the abi job name is defined
389358
gz_software.each { gz_sw ->
390359
supported_arches.each { arch ->
@@ -422,72 +391,6 @@ gz_software.each { gz_sw ->
422391
} // end of arch
423392
} // end of gz_software
424393

425-
426-
// INSTALL PACKAGE ALL PLATFORMS / DAILY
427-
gz_software.each { gz_sw ->
428-
// Exclusion list
429-
if (gz_sw in gz_no_pkg_yet)
430-
return
431-
432-
supported_arches.each { arch ->
433-
supported_install_pkg_branches(gz_sw).each { major_version, supported_distros ->
434-
supported_distros.each { distro ->
435-
extra_repos_str=""
436-
if ((gz_sw in gz_prerelease_pkgs) &&
437-
(major_version in gz_prerelease_pkgs[gz_sw]) &&
438-
(distro in gz_prerelease_pkgs[gz_sw][major_version]))
439-
extra_repos_str="prerelease"
440-
441-
// No 1-dev or 0-dev packages (except special cases see
442-
// gz_debbuild variable), unversioned
443-
major_version_in_pkgname = major_version
444-
if ("${major_version}" == "0" || "${major_version}" == "1")
445-
major_version_in_pkgname = ""
446-
447-
// 1. gz_ prefix packages. All but not gazebo (replaced by sim)
448-
generate_install_job("gz", gz_sw.replace('gazebo', 'sim'), major_version, distro, arch)
449-
450-
// 2. ignition_ prefix packages. gz software does not have ignition packages
451-
if (major_version in supported_ign_branches(gz_sw))
452-
generate_install_job("ignition", gz_sw, major_version_in_pkgname, distro, arch)
453-
}
454-
}
455-
}
456-
}
457-
458-
void generate_ci_job(gz_ci_job, gz_sw, branch, distro, arch,
459-
extra_cmake = '', extra_test = '', extra_cmd = [])
460-
{
461-
OSRFLinuxCompilation.create(gz_ci_job, enable_testing(software_name))
462-
OSRFGitHub.create(gz_ci_job,
463-
"gazebosim/ign-${software_name}",
464-
"${branch}", "ign-${software_name}")
465-
466-
include_gpu_label_if_needed(gz_ci_job, gz_sw)
467-
gz_ci_job.with
468-
{
469-
if (gz_sw == 'physics') {
470-
label Globals.nontest_label("large-memory")
471-
extra_cmd += "export MAKE_JOBS=1"
472-
}
473-
if (gz_sw == 'gazebo')
474-
gz_sw = 'sim'
475-
476-
steps {
477-
shell("""#!/bin/bash -xe
478-
479-
${GLOBAL_SHELL_CMD}
480-
${extra_cmd.join('\n')}
481-
export BUILDING_EXTRA_CMAKE_PARAMS="${extra_cmake}"
482-
export BUILDING_EXTRA_MAKETEST_PARAMS="${extra_test}"
483-
export DISTRO=${distro}
484-
export ARCH=${arch}
485-
/bin/bash -xe ./scripts/jenkins-scripts/docker/gz_${gz_sw.replaceAll('-','_')}-compilation.bash
486-
""".stripIndent())
487-
}
488-
}
489-
}
490-
491394
// --------------------------------------------------------------
492395
// DEBBUILD: linux package builder
493396
all_debbuilders().each { debbuilder_name ->

jenkins-scripts/dsl/logs/generated_jobs.txt

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,90 @@ branch_ci ionic gz_utils-main-win
318318
branch_ci ionic sdformat-ci-main-homebrew-amd64
319319
branch_ci ionic sdformat-ci-main-jammy-amd64
320320
branch_ci ionic sdformat-main-win
321+
install_ci __upcoming__ gz_tools3-install-pkg-jammy-amd64
322+
install_ci citadel gz_citadel-install-pkg-focal-amd64
323+
install_ci citadel gz_cmake2-install-pkg-focal-amd64
324+
install_ci citadel gz_common3-install-pkg-focal-amd64
325+
install_ci citadel gz_fuel_tools4-install-pkg-focal-amd64
326+
install_ci citadel gz_gui3-install-pkg-focal-amd64
327+
install_ci citadel gz_launch2-install-pkg-focal-amd64
328+
install_ci citadel gz_math6-install-pkg-focal-amd64
329+
install_ci citadel gz_msgs5-install-pkg-focal-amd64
330+
install_ci citadel gz_physics2-install-pkg-focal-amd64
331+
install_ci citadel gz_plugin1-install-pkg-focal-amd64
332+
install_ci citadel gz_rendering3-install-pkg-focal-amd64
333+
install_ci citadel gz_sensors3-install-pkg-focal-amd64
334+
install_ci citadel gz_sim3-install-pkg-focal-amd64
335+
install_ci citadel gz_tools1-install-pkg-focal-amd64
336+
install_ci citadel gz_transport8-install-pkg-focal-amd64
337+
install_ci citadel sdformat9-install-pkg-focal-amd64
338+
install_ci fortress gz_cmake2-install-pkg-focal-amd64
339+
install_ci fortress gz_common4-install-pkg-focal-amd64
340+
install_ci fortress gz_fortress-install-pkg-focal-amd64
341+
install_ci fortress gz_fuel_tools7-install-pkg-focal-amd64
342+
install_ci fortress gz_gui6-install-pkg-focal-amd64
343+
install_ci fortress gz_launch5-install-pkg-focal-amd64
344+
install_ci fortress gz_math6-install-pkg-focal-amd64
345+
install_ci fortress gz_msgs8-install-pkg-focal-amd64
346+
install_ci fortress gz_physics5-install-pkg-focal-amd64
347+
install_ci fortress gz_plugin1-install-pkg-focal-amd64
348+
install_ci fortress gz_rendering6-install-pkg-focal-amd64
349+
install_ci fortress gz_sensors6-install-pkg-focal-amd64
350+
install_ci fortress gz_sim6-install-pkg-focal-amd64
351+
install_ci fortress gz_tools1-install-pkg-focal-amd64
352+
install_ci fortress gz_transport11-install-pkg-focal-amd64
353+
install_ci fortress gz_utils1-install-pkg-focal-amd64
354+
install_ci fortress sdformat12-install-pkg-focal-amd64
355+
install_ci garden gz_cmake3-install-pkg-focal-amd64
356+
install_ci garden gz_common5-install-pkg-focal-amd64
357+
install_ci garden gz_fuel_tools8-install-pkg-focal-amd64
358+
install_ci garden gz_garden-install-pkg-focal-amd64
359+
install_ci garden gz_gui7-install-pkg-focal-amd64
360+
install_ci garden gz_launch6-install-pkg-focal-amd64
361+
install_ci garden gz_math7-install-pkg-focal-amd64
362+
install_ci garden gz_msgs9-install-pkg-focal-amd64
363+
install_ci garden gz_physics6-install-pkg-focal-amd64
364+
install_ci garden gz_plugin2-install-pkg-focal-amd64
365+
install_ci garden gz_rendering7-install-pkg-focal-amd64
366+
install_ci garden gz_sensors7-install-pkg-focal-amd64
367+
install_ci garden gz_sim7-install-pkg-focal-amd64
368+
install_ci garden gz_tools2-install-pkg-focal-amd64
369+
install_ci garden gz_transport12-install-pkg-focal-amd64
370+
install_ci garden gz_utils2-install-pkg-focal-amd64
371+
install_ci garden sdformat13-install-pkg-focal-amd64
372+
install_ci harmonic gz_cmake3-install-pkg-jammy-amd64
373+
install_ci harmonic gz_common5-install-pkg-jammy-amd64
374+
install_ci harmonic gz_fuel_tools9-install-pkg-jammy-amd64
375+
install_ci harmonic gz_gui8-install-pkg-jammy-amd64
376+
install_ci harmonic gz_harmonic-install-pkg-jammy-amd64
377+
install_ci harmonic gz_launch7-install-pkg-jammy-amd64
378+
install_ci harmonic gz_math7-install-pkg-jammy-amd64
379+
install_ci harmonic gz_msgs10-install-pkg-jammy-amd64
380+
install_ci harmonic gz_physics7-install-pkg-jammy-amd64
381+
install_ci harmonic gz_plugin2-install-pkg-jammy-amd64
382+
install_ci harmonic gz_rendering8-install-pkg-jammy-amd64
383+
install_ci harmonic gz_sensors8-install-pkg-jammy-amd64
384+
install_ci harmonic gz_sim8-install-pkg-jammy-amd64
385+
install_ci harmonic gz_tools2-install-pkg-jammy-amd64
386+
install_ci harmonic gz_transport13-install-pkg-jammy-amd64
387+
install_ci harmonic gz_utils2-install-pkg-jammy-amd64
388+
install_ci harmonic sdformat14-install-pkg-jammy-amd64
389+
install_ci ionic gz_cmake4-install-pkg-jammy-amd64
390+
install_ci ionic gz_common6-install-pkg-jammy-amd64
391+
install_ci ionic gz_fuel_tools10-install-pkg-jammy-amd64
392+
install_ci ionic gz_gui9-install-pkg-jammy-amd64
393+
install_ci ionic gz_launch8-install-pkg-jammy-amd64
394+
install_ci ionic gz_math8-install-pkg-jammy-amd64
395+
install_ci ionic gz_msgs11-install-pkg-jammy-amd64
396+
install_ci ionic gz_physics8-install-pkg-jammy-amd64
397+
install_ci ionic gz_plugin3-install-pkg-jammy-amd64
398+
install_ci ionic gz_rendering9-install-pkg-jammy-amd64
399+
install_ci ionic gz_sensors9-install-pkg-jammy-amd64
400+
install_ci ionic gz_sim9-install-pkg-jammy-amd64
401+
install_ci ionic gz_tools2-install-pkg-jammy-amd64
402+
install_ci ionic gz_transport14-install-pkg-jammy-amd64
403+
install_ci ionic gz_utils3-install-pkg-jammy-amd64
404+
install_ci ionic sdformat15-install-pkg-jammy-amd64
321405
unofficial_wrappers_install_pkg_ci garden ros_gzgarden_bridge-install-pkg_humble-ci-jammy-amd64
322406
unofficial_wrappers_install_pkg_ci garden ros_gzgarden_bridge-install-pkg_iron-ci-jammy-amd64
323407
unofficial_wrappers_install_pkg_ci harmonic ros_gzharmonic_bridge-install-pkg_iron-ci-jammy-amd64

0 commit comments

Comments
 (0)