Skip to content

Commit

Permalink
Merge branch 'master' into jrivero/dashboard
Browse files Browse the repository at this point in the history
  • Loading branch information
j-rivero committed Dec 15, 2023
2 parents a408757 + dc31a65 commit b822e17
Show file tree
Hide file tree
Showing 5 changed files with 174 additions and 72 deletions.
22 changes: 12 additions & 10 deletions jenkins-scripts/dsl/dsl_checks.bash
Original file line number Diff line number Diff line change
Expand Up @@ -50,14 +50,16 @@ if [[ -n ${non_github_orgs} ]]; then
exit 1
fi

# re-enable after https://github.com/gazebo-tooling/release-tools/issues/1095

# Filter out the previous auto jobs
filtered_dir=$(mktemp -d)
cp -- *-abichecker-*.xml "${filtered_dir}"
rm -f "${filtered_dir}"/*-ubuntu_auto*.xml
repeated=$(grep '\<branch>' "${filtered_dir}"/*-abichecker-*.xml | awk '{ print $2 }' | sort | uniq -d)
if [[ -n ${repeated} ]]; then
echo "Found a duplicate in an abichecker branch:"
echo "${repeated}"
echo "please exclude one of the versions in the yaml file to reduce the server workload"
exit 1
fi
# filtered_dir=$(mktemp -d)
# cp -- *-abichecker-*.xml "${filtered_dir}"
# rm -f "${filtered_dir}"/*-ubuntu_auto*.xml
# repeated=$(grep '\<branch>' "${filtered_dir}"/*-abichecker-*.xml | awk '{ print $2 }' | sort | uniq -d)
# if [[ -n ${repeated} ]]; then
# echo "Found a duplicate in an abichecker branch:"
# echo "${repeated}"
# echo "please exclude one of the versions in the yaml file to reduce the server workload"
# exit 1
# fi
55 changes: 50 additions & 5 deletions jenkins-scripts/dsl/gazebo_libs.dsl
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@ ENABLE_GITHUB_PR_INTEGRATION = true

def WRITE_JOB_LOG = System.getenv('WRITE_JOB_LOG') ?: false
logging_list = [:].withDefault {[]}
logging_list['branch_ci'] = []
logging_list['asan_ci'] = []

// Jenkins needs the relative path to work and locally the simulation is done
// using a symlink
Expand Down Expand Up @@ -259,6 +257,42 @@ String generate_linux_install(src_name, lib_name, platform, arch)
return job_name
}

String generate_brew_install(src_name, lib_name, arch)
{
def script_name_prefix = cleanup_library_name(src_name)
def job_name = "${script_name_prefix}-install_bottle-homebrew-${arch}"
def install_default_job = job(job_name)
OSRFBrewInstall.create(install_default_job)

install_default_job.with
{
triggers {
cron('@daily')
}

steps {
shell("""\
#!/bin/bash -xe

/bin/bash -x ./scripts/jenkins-scripts/lib/project-install-homebrew.bash ${src_name}
""".stripIndent())
}

publishers
{
configure { project ->
project / publishers << 'hudson.plugins.logparser.LogParserPublisher' {
unstableOnWarning true
failBuildOnError false
parsingRulesPath('/var/lib/jenkins/logparser_warn_on_mark_unstable')
}
}
}
}

return job_name
}

def ciconf_per_lib_index = [:].withDefault { [:] }
def pkgconf_per_src_index = [:].withDefault { [:] }
generate_ciconfigs_by_lib(gz_collections_yaml, ciconf_per_lib_index, pkgconf_per_src_index)
Expand Down Expand Up @@ -432,12 +466,23 @@ pkgconf_per_src_index.each { pkg_src, pkg_src_configs ->
'_releasepy')
// --------------------------------------------------------------
pkg_system.arch.each { arch ->
def job_name = generate_linux_install(
pkg_src, canonical_lib_name, pkg_system.version, arch)
def linux_install_job_name = generate_linux_install(
pkg_src,
canonical_lib_name,
pkg_system.version,
arch)
def brew_install_job_name = generate_brew_install(
pkg_src,
canonical_lib_name,
arch)

pkg_src_config.getValue().each { index_entry ->
logging_list['install_ci'].add(
[collection: index_entry.collection,
job_name: job_name])
job_name: linux_install_job_name])
logging_list['install_ci'].add(
[collection: index_entry.collection,
job_name: brew_install_job_name])
}
}
}
Expand Down
35 changes: 28 additions & 7 deletions jenkins-scripts/dsl/gz-collections.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ collections:
configs:
- focal
- brew
- win
- win_citadel
packaging:
configs:
- focal
Expand Down Expand Up @@ -463,11 +463,6 @@ ci_configs:
abichecker:
- gz-cmake
- gz-tools
# These have a Jammy counterpart in Harmonic
- gz-common
- gz-math
- gz-plugin
- gz-utils
pre_setup_script_hook:
gz-physics:
- "export MAKE_JOBS=1"
Expand Down Expand Up @@ -537,7 +532,6 @@ ci_configs:
requirements:
exclude:
all:
- gz-citadel
- gz-fortress
- gz-garden
- gz-harmonic
Expand All @@ -559,6 +553,33 @@ ci_configs:
- gz-transport
- gz-utils
- sdformat
# No gz-sim and gz-launch on Citadel
- name: win_citadel
system:
so: windows
distribution: windows
version: "10"
arch: amd64
requirements:
exclude:
all:
- gz-citadel
- gz-sim
- gz-launch
cmake_warnings_disabled:
- gz-cmake
- gz-common
- gz-fuel-tools
- gz-gui
- gz-math
- gz-msgs
- gz-physics
- gz-rendering
- gz-sensors
- gz-tools
- gz-transport
- gz-utils
- sdformat
packaging_configs:
- name: focal
system:
Expand Down
48 changes: 0 additions & 48 deletions jenkins-scripts/dsl/ignition.dsl
Original file line number Diff line number Diff line change
Expand Up @@ -427,54 +427,6 @@ all_debbuilders().each { debbuilder_name ->
}
}

// --------------------------------------------------------------
// BREW: CI jobs

// 1. any job
gz_software.each { gz_sw ->
// Install jobs to test bottles
supported_install_pkg_branches(gz_sw).each { major_version, supported_distros ->
def install_default_job = job("ignition_${gz_sw}${major_version}-install_bottle-homebrew-amd64")
OSRFBrewInstall.create(install_default_job)

install_default_job.with
{
// disable some bottles
if (("${gz_sw}" == "gui" && "${major_version}" == "0"))
disabled()

triggers {
cron('@daily')
}

def bottle_name = "ignition-${gz_sw}${major_version}"
// For transiting, use always gz-sim new name since new versions won't
// have ign-gazebo aliases
if ("${gz_sw}" == "sim" || "${gz_sw}" == "gazebo")
bottle_name = "gz-sim${major_version}"

steps {
shell("""\
#!/bin/bash -xe

/bin/bash -x ./scripts/jenkins-scripts/lib/project-install-homebrew.bash ${bottle_name}
""".stripIndent())
}

publishers
{
configure { project ->
project / publishers << 'hudson.plugins.logparser.LogParserPublisher' {
unstableOnWarning true
failBuildOnError false
parsingRulesPath('/var/lib/jenkins/logparser_warn_on_mark_unstable')
}
}
}
}
}
}

// --------------------------------------------------------------
// WINDOWS: CI job

Expand Down
Loading

0 comments on commit b822e17

Please sign in to comment.