Skip to content

Commit

Permalink
Use the index v4 to query for active ROS and ROS 2
Browse files Browse the repository at this point in the history
  • Loading branch information
andre-rosa committed Apr 10, 2019
1 parent 1f41f6f commit 20fae5a
Show file tree
Hide file tree
Showing 6 changed files with 26 additions and 17 deletions.
5 changes: 2 additions & 3 deletions superflore/generators/bitbake/run.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,15 @@
from superflore.parser import get_parser
from superflore.repo_instance import RepoInstance
from superflore.TempfileManager import TempfileManager
from superflore.utils import active_distros
from superflore.utils import clean_up
from superflore.utils import err
from superflore.utils import file_pr
from superflore.utils import gen_delta_msg
from superflore.utils import gen_missing_deps_msg
from superflore.utils import get_distros_by_status
from superflore.utils import info
from superflore.utils import load_pr
from superflore.utils import ok
from superflore.utils import ros2_distros
from superflore.utils import save_pr
from superflore.utils import url_to_repo_org
from superflore.utils import warn
Expand Down Expand Up @@ -73,7 +72,7 @@ def main():
selected_targets = [args.ros_distro]
preserve_existing = False
if not selected_targets:
selected_targets = active_distros + ros2_distros
selected_targets = get_distros_by_status('active')
repo_org = 'allenh1'
repo_name = 'meta-ros'
if args.upstream_repo:
Expand Down
4 changes: 2 additions & 2 deletions superflore/generators/ebuild/gen_packages.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@
from superflore.generators.ebuild.metadata_xml import metadata_xml
from superflore.PackageMetadata import PackageMetadata
from superflore.utils import err
from superflore.utils import get_distros
from superflore.utils import get_pkg_version
from superflore.utils import make_dir
from superflore.utils import ok
from superflore.utils import ros2_distros
from superflore.utils import warn

# TODO(allenh1): This is a blacklist of things that
Expand All @@ -49,7 +49,7 @@ def regenerate_pkg(overlay, pkg, distro, preserve_existing=False):
ebuild_name = overlay.repo.repo_dir + ebuild_name
patch_path = '/ros-{}/{}/files'.format(distro.name, pkg)
patch_path = overlay.repo.repo_dir + patch_path
is_ros2 = distro.name in ros2_distros
is_ros2 = get_distros()[distro.name].distribution_type == 'ros2'
has_patches = os.path.exists(patch_path)
pkg_names = get_package_names(distro)[0]
patches = None
Expand Down
5 changes: 2 additions & 3 deletions superflore/generators/ebuild/run.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,16 +22,15 @@
from superflore.parser import get_parser
from superflore.repo_instance import RepoInstance
from superflore.TempfileManager import TempfileManager
from superflore.utils import active_distros
from superflore.utils import clean_up
from superflore.utils import err
from superflore.utils import file_pr
from superflore.utils import gen_delta_msg
from superflore.utils import gen_missing_deps_msg
from superflore.utils import get_distros_by_status
from superflore.utils import info
from superflore.utils import load_pr
from superflore.utils import ok
from superflore.utils import ros2_distros
from superflore.utils import save_pr
from superflore.utils import url_to_repo_org
from superflore.utils import warn
Expand Down Expand Up @@ -67,7 +66,7 @@ def main():
selected_targets = [args.ros_distro]
preserve_existing = False
if not selected_targets:
selected_targets = active_distros + ros2_distros
selected_targets = get_distros_by_status('active')
repo_org = 'ros'
repo_name = 'ros-overlay'
if args.upstream_repo:
Expand Down
5 changes: 5 additions & 0 deletions superflore/rosdep_support.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,17 @@
from rosdep2 import create_default_installer_context
from rosdep2.catkin_support import get_catkin_view
from rosdep2.lookup import ResolutionError
from rosdep2.rosdistrohelper import get_index
from superflore.exceptions import UnresolvedDependency

DEFAULT_ROS_DISTRO = 'indigo'
view_cache = {}


def get_cached_index():
return get_index()


def get_view(os_name, os_version, ros_distro):
global view_cache
key = os_name + os_version + ros_distro
Expand Down
4 changes: 2 additions & 2 deletions superflore/test_integration/gentoo/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
import sys

from superflore.test_integration.gentoo.build_base import GentooBuilder
from superflore.utils import active_distros
from superflore.utils import get_distros_by_status
import yaml


Expand All @@ -30,7 +30,7 @@ def main():
help='distro(s) to check',
type=str,
nargs="+",
default=active_distros,
default=get_distros_by_status('active'),
)
parser.add_argument(
'--pkgs',
Expand Down
20 changes: 13 additions & 7 deletions superflore/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,9 @@

from superflore.exceptions import UnknownLicense
from superflore.exceptions import UnknownPlatform
from superflore.rosdep_support import resolve_rosdep_key
from superflore.rosdep_support import get_cached_index, resolve_rosdep_key
from termcolor import colored

# Modify if a new distro is added
# TODO(nuclearsandwich) use the index v4 to query for active ROS and ROS 2
# distributions.
active_distros = ['indigo', 'kinetic', 'lunar', 'melodic']
ros2_distros = ['ardent', 'bouncy', 'crystal', 'dashing']


def warn(string): # pragma: no cover
print(colored('>>>> {0}'.format(string), 'yellow'))
Expand Down Expand Up @@ -219,6 +213,18 @@ def resolve_dep(pkg, os):
raise UnknownPlatform(msg)


def get_distros():
index = get_cached_index()
return index.distributions


def get_distros_by_status(status='active'):
distros = get_distros()
distros_by_status = [d for d in distros.keys(
) if distros[d].get('distribution_status') == status]
return distros_by_status


def _resolve_dep_open_embedded(pkg):
"""
TODO(allenh1): integrate rosdep
Expand Down

0 comments on commit 20fae5a

Please sign in to comment.