diff --git a/acropolis/index.yaml b/acropolis/index.yaml index 7d1066f890..5a4b83ec6a 100644 --- a/acropolis/index.yaml +++ b/acropolis/index.yaml @@ -4,26 +4,117 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: install - title: Install - file: install.md - description: Citadel installation instructions - - name: ros_integration - title: ROS Integration - file: ros_integration.md - description: This tutorial details how to interface with ROS, enabling the ability to use tools such as Rviz for robot or sensor visualization. - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Gazebo. +- name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. +- name: install + title: Install + file: install.md + description: Citadel installation instructions +- name: ros_integration + title: ROS Integration + file: ros_integration.md + description: This tutorial details how to interface with ROS, enabling the ability + to use tools such as Rviz for robot or sensor visualization. +- name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Gazebo. +- name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages +- name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo +- name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo +- name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. +- name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. +- name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. +- name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA +- name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. +- name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. +- name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md +- name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo diff --git a/blueprint/index.yaml b/blueprint/index.yaml index 4eecb6432f..44c97dfe7f 100644 --- a/blueprint/index.yaml +++ b/blueprint/index.yaml @@ -4,42 +4,136 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: install - title: Install - file: install.md - description: Blueprint installation instructions - - name: ros_integration - title: ROS Integration - file: ros_integration.md - description: This tutorial details how to interface with ROS, enabling the ability to use tools such as Rviz for robot or sensor visualization. - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Ignition. - - name: gui - title: Understanding the GUI - file: GUI_tutorial.md - description: This guide is an introduction to the Ignition Graphical User Interface (GUI). - - name: manipulating_models - title: Manipulating Models - file: Manipulating_models.md - description: This tutorial will walk you through using various plugins to assist model and scene manipulation in the Ignition GUI. - - name: fuel_insert - title: Model Insertion from Fuel - file: Model_insertion_fuel.md - description: Ignition Fuel hosts hundreds of models that can easily be added to a world running in the Ignition GUI. - - name: hotkeys - title: Keyboard Shortcuts - file: hotkeys.md - description: Ignition keyboard shortcuts +- name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. +- name: install + title: Install + file: install.md + description: Blueprint installation instructions +- name: ros_integration + title: ROS Integration + file: ros_integration.md + description: This tutorial details how to interface with ROS, enabling the ability + to use tools such as Rviz for robot or sensor visualization. +- name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Ignition. +- name: gui + title: Understanding the GUI + file: GUI_tutorial.md + description: This guide is an introduction to the Ignition Graphical User Interface + (GUI). +- name: manipulating_models + title: Manipulating Models + file: Manipulating_models.md + description: This tutorial will walk you through using various plugins to assist + model and scene manipulation in the Ignition GUI. +- name: fuel_insert + title: Model Insertion from Fuel + file: Model_insertion_fuel.md + description: Ignition Fuel hosts hundreds of models that can easily be added to + a world running in the Ignition GUI. +- name: hotkeys + title: Keyboard Shortcuts + file: hotkeys.md + description: Ignition keyboard shortcuts +- name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages +- name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo +- name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo +- name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. +- name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. +- name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. +- name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA +- name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. +- name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. +- name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md +- name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo diff --git a/build_multiversion.py b/build_multiversion.py index 294160086a..b46fb82095 100644 --- a/build_multiversion.py +++ b/build_multiversion.py @@ -16,24 +16,17 @@ from pathlib import Path from string import Template import argparse -import copy import json import os import requests import shutil +import textwrap import sys import subprocess import yaml -additional_shared_directories = ["images", "releasing"] -def _combine_nav(common_nav, release_nav): - combined = copy.deepcopy(common_nav) - # Release are added after 'get_started' - for i, item in enumerate(release_nav): - combined.insert(i + 1, item) - return combined def _build_sphinx(src_dir, output_dir, variables, extra_args, strict_mode=True): """Build arguments for running sphinx-build @@ -61,15 +54,7 @@ def _build_sphinx(src_dir, output_dir, variables, extra_args, strict_mode=True): subprocess.run(sphinx_args, check=True) -def copy_pages(pages, root_src_dir, dst): - for page in pages: - full_dst = Path(dst) / page["file"] - if full_dst.parent != dst: - full_dst.parent.mkdir(parents=True, exist_ok=True) - shutil.copy2(root_src_dir / page["file"], full_dst) - if "children" in page: - copy_pages(page["children"], root_src_dir, dst) def generate_sources(gz_nav_yaml, root_src_dir, tmp_dir, gz_release): @@ -94,17 +79,40 @@ def generate_sources(gz_nav_yaml, root_src_dir, tmp_dir, gz_release): tmp_dir.mkdir(exist_ok=True) version_tmp_dir = tmp_dir / gz_release + # Start with a clean slate + if version_tmp_dir.exists(): + shutil.rmtree(version_tmp_dir) + + # 1. Copy all common files + shutil.copytree(root_src_dir / 'common', version_tmp_dir, dirs_exist_ok=True) + + # 2. Copy release-specific files over the common ones shutil.copytree(version_src_dir, version_tmp_dir, dirs_exist_ok=True) + + # 3. Copy sphinx infrastructure files for dir in ["_static", "_templates"]: shutil.copytree(root_src_dir / dir, version_tmp_dir / dir, dirs_exist_ok=True) - shutil.copy2(root_src_dir / "base_conf.py", version_tmp_dir) shutil.copy2(root_src_dir / "conf.py", version_tmp_dir) - for dir in additional_shared_directories: - shutil.copytree(root_src_dir / dir, version_tmp_dir / dir, dirs_exist_ok=True) - - copy_pages(gz_nav_yaml["pages"], root_src_dir, version_tmp_dir) + # 4. Generate the source manifest for "Edit on GitHub" links + manifest = {} + # First, add all common files. + common_dir = root_src_dir / 'common' + for path in common_dir.glob('**/*'): + if path.is_file(): + rel_path = path.relative_to(common_dir) + manifest[str(rel_path)] = f"common/{rel_path}" + + # Then, add/overwrite with release-specific files. + for path in Path(version_src_dir).glob('**/*'): + if path.is_file(): + rel_path = path.relative_to(version_src_dir) + manifest[str(rel_path)] = f"{gz_release}/{rel_path}" + + manifest_path = version_tmp_dir / 'source_manifest.json' + with open(manifest_path, 'w') as f: + json.dump(manifest, f, indent=2) deploy_url = os.environ.get("GZ_DEPLOY_URL", "") # Write switcher.json file @@ -130,79 +138,112 @@ def generate_sources(gz_nav_yaml, root_src_dir, tmp_dir, gz_release): static_dir = version_tmp_dir / "_static" static_dir.mkdir(exist_ok=True) json.dump(switcher, open(static_dir / "switcher.json", "w")) + # 5. Load navigation + with open(version_tmp_dir / "index.yaml") as f: + version_nav_yaml = yaml.safe_load(f) def handle_file_url_rename(file_path, file_url): computed_url, ext = os.path.splitext(file_path) - # print("renames:", file_path, file_url) if file_url != computed_url: new_path = file_url + ext - # If the file url is inside a directory, we want the new path to end up in the same directory - # print("Moving", version_tmp_dir / file_path, version_tmp_dir / new_path) shutil.move(version_tmp_dir / file_path, version_tmp_dir / new_path) return new_path return file_path - toc_directives = ["{toctree}", ":hidden:", ":maxdepth: 1", ":titlesonly:"] - - with open(version_tmp_dir / "index.yaml") as f: - version_nav_yaml = yaml.safe_load(f) - combined_nav = _combine_nav(gz_nav_yaml["pages"], version_nav_yaml["pages"]) + def create_toctrees(pages): nav_md = [] - # TODO(azeey) Make this recursive so multiple levels of - # 'children' can be supported. - for page in combined_nav: + for page in pages: + maybe_hidden = ":hidden:" file_url = page["name"] - file_path = page["file"] + # TODO(azeey) Document + if "file" in page: + file_path = page["file"].replace("common:", "") + new_file_path = handle_file_url_rename(file_path, file_url) + else: + new_file_path = f"{file_url}.md" + maybe_hidden = "" + print(f"Page {page['name']}: {page['title']} not hidden") + with open(version_tmp_dir / new_file_path, "w") as ind_f: + ind_f.write(textwrap.dedent(f"""\ + --- + html_theme.sidebar_secondary.remove: true + --- + + # {page['title']} + """)) + + nav_md.append(f"{page['title']} <{file_url}>") children = page.get("children") - nav_md.append(f"{page['title']} <{page['name']}>") - new_file_path = handle_file_url_rename(file_path, file_url) - if children: - child_md = [] - for child in children: - file_url = child["name"] - file_path = child["file"] - handle_file_url_rename(file_path, file_url) - child_md.append(f"{child['title']} <{file_url}>") - + child_md = create_toctrees(children) with open(version_tmp_dir / new_file_path, "a") as ind_f: # Include {toctree} for children below the .md text - ind_f.write("\n```") - ind_f.write("\n".join(toc_directives) + "\n") - ind_f.writelines("\n".join(child_md) + "\n") - ind_f.write("```\n") - - library_reference_nav = "library_reference_nav" - libraries = release_info["libraries"] - if libraries: - nav_md.append(library_reference_nav) - # Add Library Reference - with open(version_tmp_dir / f"{library_reference_nav}.md", "w") as ind_f: - ind_f.write("# Library Reference\n\n") - ind_f.write("```") - ind_f.write("{toctree}\n") - for library in libraries: - ind_f.write( - f"{library['name']} \n" - ) - ind_f.write("```\n\n") + ind_f.write(textwrap.dedent(f""" + ```{{toctree}} + :maxdepth: 1 + :titlesonly: + {maybe_hidden} + """)) + ind_f.write("\n".join(child_md)) + ind_f.write("\n```\n") + return nav_md + + index_toc ="# Index\n\n" + for page in version_nav_yaml["pages"]: + if "section" not in page: + print( + "The top level item in the pages entry of index.yaml should be a 'section'.\n" + f"Found {page}" + ) + sys.exit(1) + index_toc += textwrap.dedent(f"""\ + ```{{toctree}} + :hidden: + :maxdepth: 1 + :titlesonly: + :caption: {page["section"]} + """) + + nav_md = create_toctrees(page["children"]) + index_toc += "\n".join(nav_md) + "\n" + index_toc += "```\n\n" + + library_reference_nav = "library_reference_nav" + libraries = release_info["libraries"] + if libraries: + index_toc += textwrap.dedent(f"""\ + ```{{toctree}} + :hidden: + :maxdepth: 1 + :titlesonly: + :caption: API Reference + {library_reference_nav} + ``` + """) + # Add Library Reference + with open(version_tmp_dir / f"{library_reference_nav}.md", "w") as ind_f: + ind_f.write("---\nhtml_theme.sidebar_secondary.remove: true\n---\n\n") + ind_f.write("# Library Reference\n\n") + ind_f.write("```") + ind_f.write("{toctree}\n") + for library in libraries: + ind_f.write( + f"{library['name']} \n" + ) + ind_f.write("```\n") - with open(version_tmp_dir / "index.md", "w") as ind_f: - ind_f.write( - """--- + with open(version_tmp_dir / "index.md", "w") as ind_f: + ind_f.write( + """--- myst: html_meta: "http-equiv=refresh": "0; url=getstarted" --- """ - ) - ind_f.write("# Index\n\n") - ind_f.write("```") - ind_f.write("\n".join(toc_directives) + "\n") - ind_f.writelines("\n".join(nav_md) + "\n") - ind_f.write("```\n\n") + ) + ind_f.write(index_toc) def get_preferred_release(releases: dict): diff --git a/citadel/index.yaml b/citadel/index.yaml index f293b7a473..de39ca42a7 100644 --- a/citadel/index.yaml +++ b/citadel/index.yaml @@ -4,89 +4,180 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: install - title: Install - file: install.md - description: Citadel installation instructions - children: - - name: install_ubuntu - title: Binary Ubuntu Install - file: install_ubuntu.md - - name: install_osx - title: Binary macOS Install - file: install_osx.md - - name: install_windows - title: Binary Windows Install - file: install_windows.md - - name: install_ubuntu_src - title: Ubuntu Source Install - file: install_ubuntu_src.md - - name: install_osx_src - title: macOS Source Install - file: install_osx_src.md - - name: install_windows_src - title: Windows Source Install - file: install_windows_src.md - - name: troubleshooting - title: Troubleshooting - file: troubleshooting.md - - name: ign_docker_env - title: Dockerized Dev Env - file: ign_docker_env.md - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Ignition. - - name: tutorials - title: Tutorials - file: tutorials.md - children: - - name: ros_integration - title: ROS Integration - file: ros_integration.md - description: This tutorial details how to interface with ROS, enabling the ability to use tools such as Rviz for robot or sensor visualization. - - name: ros2_integration - title: ROS 2 Integration - file: ros2_integration.md - - name: spawn_urdf - title: Spawn URDF - file: spawn_urdf.md - - name: gui - title: Understanding the GUI - file: GUI_tutorial.md - - name: manipulating_models - title: Manipulating Models - file: Manipulating_models.md - - name: fuel_insert - title: Model Insertion from Fuel - file: Model_insertion_fuel.md - - name: hotkeys - title: Keyboard Shortcuts - file: hotkeys.md - description: Ignition keyboard shortcuts - - name: building_robot - title: Building your own robot - file: building_robot.md - - name: moving_robot - title: Moving the robot - file: moving_robot.md - - name: sdf_worlds - title: SDF worlds - file: sdf_worlds.md - - name: sensors - title: Sensors - file: sensors.md - - name: actors - title: Actors - file: actors.md +- name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. +- name: install + title: Install + file: install.md + description: Citadel installation instructions + children: + - name: install_ubuntu + title: Binary Ubuntu Install + file: install_ubuntu.md + - name: install_osx + title: Binary macOS Install + file: install_osx.md + - name: install_windows + title: Binary Windows Install + file: install_windows.md + - name: install_ubuntu_src + title: Ubuntu Source Install + file: install_ubuntu_src.md + - name: install_osx_src + title: macOS Source Install + file: install_osx_src.md + - name: install_windows_src + title: Windows Source Install + file: install_windows_src.md + - name: troubleshooting + title: Troubleshooting + file: troubleshooting.md + - name: ign_docker_env + title: Dockerized Dev Env + file: ign_docker_env.md +- name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Ignition. +- name: tutorials + title: Tutorials + file: tutorials.md + children: + - name: ros_integration + title: ROS Integration + file: ros_integration.md + description: This tutorial details how to interface with ROS, enabling the ability + to use tools such as Rviz for robot or sensor visualization. + - name: ros2_integration + title: ROS 2 Integration + file: ros2_integration.md + - name: spawn_urdf + title: Spawn URDF + file: spawn_urdf.md + - name: gui + title: Understanding the GUI + file: GUI_tutorial.md + - name: manipulating_models + title: Manipulating Models + file: Manipulating_models.md + - name: fuel_insert + title: Model Insertion from Fuel + file: Model_insertion_fuel.md + - name: hotkeys + title: Keyboard Shortcuts + file: hotkeys.md + description: Ignition keyboard shortcuts + - name: building_robot + title: Building your own robot + file: building_robot.md + - name: moving_robot + title: Moving the robot + file: moving_robot.md + - name: sdf_worlds + title: SDF worlds + file: sdf_worlds.md + - name: sensors + title: Sensors + file: sensors.md + - name: actors + title: Actors + file: actors.md +- name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages +- name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo +- name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo +- name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. +- name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. +- name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. +- name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA +- name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. +- name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. +- name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md +- name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo diff --git a/architecture.md b/common/architecture.md similarity index 100% rename from architecture.md rename to common/architecture.md diff --git a/ci.md b/common/ci.md similarity index 100% rename from ci.md rename to common/ci.md diff --git a/contributing.md b/common/contributing.md similarity index 100% rename from contributing.md rename to common/contributing.md diff --git a/development.md b/common/development.md similarity index 100% rename from development.md rename to common/development.md diff --git a/fuel/about.md b/common/fuel/about.md similarity index 100% rename from fuel/about.md rename to common/fuel/about.md diff --git a/fuel/content_deletion_policy.md b/common/fuel/content_deletion_policy.md similarity index 100% rename from fuel/content_deletion_policy.md rename to common/fuel/content_deletion_policy.md diff --git a/fuel/contributing_model.md b/common/fuel/contributing_model.md similarity index 100% rename from fuel/contributing_model.md rename to common/fuel/contributing_model.md diff --git a/fuel/contributing_world.md b/common/fuel/contributing_world.md similarity index 100% rename from fuel/contributing_world.md rename to common/fuel/contributing_world.md diff --git a/fuel/copyright.md b/common/fuel/copyright.md similarity index 100% rename from fuel/copyright.md rename to common/fuel/copyright.md diff --git a/fuel/data_privacy_policy.md b/common/fuel/data_privacy_policy.md similarity index 100% rename from fuel/data_privacy_policy.md rename to common/fuel/data_privacy_policy.md diff --git a/fuel/fair_use.md b/common/fuel/fair_use.md similarity index 100% rename from fuel/fair_use.md rename to common/fuel/fair_use.md diff --git a/gazebo_classic_migration.md b/common/gazebo_classic_migration.md similarity index 100% rename from gazebo_classic_migration.md rename to common/gazebo_classic_migration.md diff --git a/get_started.md b/common/get_started.md similarity index 100% rename from get_started.md rename to common/get_started.md diff --git a/governance.md b/common/governance.md similarity index 100% rename from governance.md rename to common/governance.md diff --git a/images/GazeboSimArchitecture.svg b/common/images/GazeboSimArchitecture.svg similarity index 100% rename from images/GazeboSimArchitecture.svg rename to common/images/GazeboSimArchitecture.svg diff --git a/images/PR_checks.png b/common/images/PR_checks.png similarity index 100% rename from images/PR_checks.png rename to common/images/PR_checks.png diff --git a/images/composition_options.png b/common/images/composition_options.png similarity index 100% rename from images/composition_options.png rename to common/images/composition_options.png diff --git a/images/gz_ros2_migration/gazebo_classic_turtlebot3.png b/common/images/gz_ros2_migration/gazebo_classic_turtlebot3.png similarity index 100% rename from images/gz_ros2_migration/gazebo_classic_turtlebot3.png rename to common/images/gz_ros2_migration/gazebo_classic_turtlebot3.png diff --git a/images/gz_ros2_migration/gazebo_turtlebot3.png b/common/images/gz_ros2_migration/gazebo_turtlebot3.png similarity index 100% rename from images/gz_ros2_migration/gazebo_turtlebot3.png rename to common/images/gz_ros2_migration/gazebo_turtlebot3.png diff --git a/images/model_snippet.png b/common/images/model_snippet.png similarity index 100% rename from images/model_snippet.png rename to common/images/model_snippet.png diff --git a/install_gz11_side_by_side.md b/common/install_gz11_side_by_side.md similarity index 100% rename from install_gz11_side_by_side.md rename to common/install_gz11_side_by_side.md diff --git a/migrating_gazebo_classic_ros2_packages.md b/common/migrating_gazebo_classic_ros2_packages.md similarity index 100% rename from migrating_gazebo_classic_ros2_packages.md rename to common/migrating_gazebo_classic_ros2_packages.md diff --git a/projects_using_gazebo.md b/common/projects_using_gazebo.md similarity index 100% rename from projects_using_gazebo.md rename to common/projects_using_gazebo.md diff --git a/release.md b/common/release.md similarity index 100% rename from release.md rename to common/release.md diff --git a/release_features.md b/common/release_features.md similarity index 100% rename from release_features.md rename to common/release_features.md diff --git a/release_instructions.md b/common/release_instructions.md similarity index 100% rename from release_instructions.md rename to common/release_instructions.md diff --git a/releases.md b/common/releases.md similarity index 100% rename from releases.md rename to common/releases.md diff --git a/releasing/bump_major.md b/common/releasing/bump_major.md similarity index 100% rename from releasing/bump_major.md rename to common/releasing/bump_major.md diff --git a/releasing/images/general_context.svg b/common/releasing/images/general_context.svg similarity index 100% rename from releasing/images/general_context.svg rename to common/releasing/images/general_context.svg diff --git a/releasing/images/releasepy_execution.png b/common/releasing/images/releasepy_execution.png similarity index 100% rename from releasing/images/releasepy_execution.png rename to common/releasing/images/releasepy_execution.png diff --git a/releasing/images/releasepy_execution.svg b/common/releasing/images/releasepy_execution.svg similarity index 100% rename from releasing/images/releasepy_execution.svg rename to common/releasing/images/releasepy_execution.svg diff --git a/releasing/release_repositories.md b/common/releasing/release_repositories.md similarity index 100% rename from releasing/release_repositories.md rename to common/releasing/release_repositories.md diff --git a/releasing/versioning_pre_nightly.md b/common/releasing/versioning_pre_nightly.md similarity index 100% rename from releasing/versioning_pre_nightly.md rename to common/releasing/versioning_pre_nightly.md diff --git a/roadmap.md b/common/roadmap.md similarity index 100% rename from roadmap.md rename to common/roadmap.md diff --git a/ros2_gz_vendor_pkgs.md b/common/ros2_gz_vendor_pkgs.md similarity index 100% rename from ros2_gz_vendor_pkgs.md rename to common/ros2_gz_vendor_pkgs.md diff --git a/ros_installation.md b/common/ros_installation.md similarity index 100% rename from ros_installation.md rename to common/ros_installation.md diff --git a/setup_gazebo_in_ci.md b/common/setup_gazebo_in_ci.md similarity index 100% rename from setup_gazebo_in_ci.md rename to common/setup_gazebo_in_ci.md diff --git a/conf.py b/conf.py index 0a25c1f057..091a4ae3af 100644 --- a/conf.py +++ b/conf.py @@ -20,6 +20,7 @@ # -- Project information ----------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information +import json import sys from pathlib import Path import yaml @@ -47,10 +48,13 @@ def setup_file_map(app: Sphinx, pagename: str, templatename: str, context, doctree): def get_file_from_map(file_name: str): + source_manifest = context["source_manifest"] result = context["file_name_map"].get(Path(file_name).stem) + if result: - return result - return file_name + return source_manifest[result] + # Fallback for non-markdown files or files not in the manifest + return source_manifest.get(file_name, file_name) context["get_file_from_map"] = get_file_from_map @@ -68,17 +72,16 @@ def get_preferred_release(releases: dict): return preferred[0] -def create_file_rename_map(nav_yaml_pages, release): +def create_file_rename_map(nav_yaml_pages): file_name_map = {} - prefix = f"{release}/" if release is not None else "" - for page in nav_yaml_pages: - file_name_map[page["name"]] = f"{prefix}{page['file']}" + if "file" in page: + file_name_map[page["name"]] = page['file'].replace("common:", "") children = page.get("children") if children: - file_name_map.update(create_file_rename_map(children, release)) + file_name_map.update(create_file_rename_map(children)) return file_name_map @@ -89,17 +92,20 @@ def config_init(app: Sphinx, config: Config): config.release = config.gz_release # type: ignore config.version = config.gz_release # type: ignore + # Load the file map generated by the build script. + # This map is used to power the "Edit on GitHub" links. file_name_map = {} - - with open(app.config.gz_root_index_file) as f: - file_name_map.update(create_file_rename_map(yaml.safe_load(f)["pages"], None)) + map_path = Path(app.srcdir) / 'source_manifest.json' + with open(map_path) as f: + source_manifest = json.load(f) with open(Path(app.srcdir) / "index.yaml") as f: file_name_map.update( - create_file_rename_map(yaml.safe_load(f)["pages"], config.release) + create_file_rename_map(yaml.safe_load(f)["pages"]) ) config.html_context["file_name_map"] = file_name_map + config.html_context["source_manifest"] = source_manifest # We've disabled "check_switcher" since it doesn't play well with our directory structure. # So we check for the existence of switcher.json here diff --git a/dome/index.yaml b/dome/index.yaml index 114ce4e113..3e7d9682cf 100644 --- a/dome/index.yaml +++ b/dome/index.yaml @@ -4,89 +4,180 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: install - title: Install - file: install.md - description: Dome installation instructions - children: - - name: install_ubuntu - title: Binary Ubuntu Install - file: install_ubuntu.md - - name: install_osx - title: Binary macOS Install - file: install_osx.md - - name: install_windows - title: Binary Windows Install - file: install_windows.md - - name: install_ubuntu_src - title: Ubuntu Source Install - file: install_ubuntu_src.md - - name: install_osx_src - title: macOS Source Install - file: install_osx_src.md - - name: install_windows_src - title: Windows Source Install - file: install_windows_src.md - - name: troubleshooting - title: Troubleshooting - file: troubleshooting.md - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Ignition. - - name: tutorials - title: Tutorials - file: tutorials.md - children: - - name: ros_integration - title: ROS Integration - file: ros_integration.md - description: This tutorial details how to interface with ROS, enabling the ability to use tools such as Rviz for robot or sensor visualization. - - name: ros2_integration - title: ROS 2 Integration - file: ros2_integration.md - - name: spawn_urdf - title: Spawn URDF - file: spawn_urdf.md - - name: gui - title: Understanding the GUI - file: GUI_tutorial.md - - name: manipulating_models - title: Manipulating Models - file: Manipulating_models.md - - name: fuel_insert - title: Model Insertion from Fuel - file: Model_insertion_fuel.md - - name: hotkeys - title: Keyboard Shortcuts - file: hotkeys.md - description: Ignition keyboard shortcuts - - name: building_robot - title: Building your own robot - file: building_robot.md - - name: moving_robot - title: Moving the robot - file: moving_robot.md - - name: sdf_worlds - title: SDF worlds - file: sdf_worlds.md - - name: sensors - title: Sensors - file: sensors.md - - name: actors - title: Actors - file: actors.md - - name: web_visualization - title: Web Visualization - file: web_visualization.md +- name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. +- name: install + title: Install + file: install.md + description: Dome installation instructions + children: + - name: install_ubuntu + title: Binary Ubuntu Install + file: install_ubuntu.md + - name: install_osx + title: Binary macOS Install + file: install_osx.md + - name: install_windows + title: Binary Windows Install + file: install_windows.md + - name: install_ubuntu_src + title: Ubuntu Source Install + file: install_ubuntu_src.md + - name: install_osx_src + title: macOS Source Install + file: install_osx_src.md + - name: install_windows_src + title: Windows Source Install + file: install_windows_src.md + - name: troubleshooting + title: Troubleshooting + file: troubleshooting.md +- name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Ignition. +- name: tutorials + title: Tutorials + file: tutorials.md + children: + - name: ros_integration + title: ROS Integration + file: ros_integration.md + description: This tutorial details how to interface with ROS, enabling the ability + to use tools such as Rviz for robot or sensor visualization. + - name: ros2_integration + title: ROS 2 Integration + file: ros2_integration.md + - name: spawn_urdf + title: Spawn URDF + file: spawn_urdf.md + - name: gui + title: Understanding the GUI + file: GUI_tutorial.md + - name: manipulating_models + title: Manipulating Models + file: Manipulating_models.md + - name: fuel_insert + title: Model Insertion from Fuel + file: Model_insertion_fuel.md + - name: hotkeys + title: Keyboard Shortcuts + file: hotkeys.md + description: Ignition keyboard shortcuts + - name: building_robot + title: Building your own robot + file: building_robot.md + - name: moving_robot + title: Moving the robot + file: moving_robot.md + - name: sdf_worlds + title: SDF worlds + file: sdf_worlds.md + - name: sensors + title: Sensors + file: sensors.md + - name: actors + title: Actors + file: actors.md + - name: web_visualization + title: Web Visualization + file: web_visualization.md +- name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages +- name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo +- name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo +- name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. +- name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. +- name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. +- name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA +- name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. +- name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. +- name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md +- name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo diff --git a/edifice/index.yaml b/edifice/index.yaml index cf5f18c200..6e002c5fed 100644 --- a/edifice/index.yaml +++ b/edifice/index.yaml @@ -4,86 +4,177 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: install - title: Install - file: install.md - description: Edifice installation instructions - children: - - name: install_ubuntu - title: Binary Ubuntu Install - file: install_ubuntu.md - - name: install_osx - title: Binary macOS Install - file: install_osx.md - - name: install_windows - title: Binary Windows Install - file: install_windows.md - - name: install_ubuntu_src - title: Ubuntu Source Install - file: install_ubuntu_src.md - - name: install_osx_src - title: macOS Source Install - file: install_osx_src.md - - name: install_windows_src - title: Windows Source Install - file: install_windows_src.md - - name: troubleshooting - title: Troubleshooting - file: troubleshooting.md - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Ignition. - - name: tutorials - title: Tutorials - file: tutorials.md - children: - - name: ros_integration - title: ROS Integration - file: ros_integration.md - description: This tutorial details how to interface with ROS, enabling the ability to use tools such as Rviz for robot or sensor visualization. - - name: ros2_integration - title: ROS 2 Integration - file: ros2_integration.md - - name: spawn_urdf - title: Spawn URDF - file: spawn_urdf.md - - name: gui - title: Understanding the GUI - file: GUI_tutorial.md - - name: manipulating_models - title: Manipulating Models - file: Manipulating_models.md - - name: fuel_insert - title: Model Insertion from Fuel - file: Model_insertion_fuel.md - - name: hotkeys - title: Keyboard Shortcuts - file: hotkeys.md - description: Ignition keyboard shortcuts - - name: building_robot - title: Building your own robot - file: building_robot.md - - name: moving_robot - title: Moving the robot - file: moving_robot.md - - name: sdf_worlds - title: SDF worlds - file: sdf_worlds.md - - name: sensors - title: Sensors - file: sensors.md - - name: actors - title: Actors - file: actors.md +- name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. +- name: install + title: Install + file: install.md + description: Edifice installation instructions + children: + - name: install_ubuntu + title: Binary Ubuntu Install + file: install_ubuntu.md + - name: install_osx + title: Binary macOS Install + file: install_osx.md + - name: install_windows + title: Binary Windows Install + file: install_windows.md + - name: install_ubuntu_src + title: Ubuntu Source Install + file: install_ubuntu_src.md + - name: install_osx_src + title: macOS Source Install + file: install_osx_src.md + - name: install_windows_src + title: Windows Source Install + file: install_windows_src.md + - name: troubleshooting + title: Troubleshooting + file: troubleshooting.md +- name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Ignition. +- name: tutorials + title: Tutorials + file: tutorials.md + children: + - name: ros_integration + title: ROS Integration + file: ros_integration.md + description: This tutorial details how to interface with ROS, enabling the ability + to use tools such as Rviz for robot or sensor visualization. + - name: ros2_integration + title: ROS 2 Integration + file: ros2_integration.md + - name: spawn_urdf + title: Spawn URDF + file: spawn_urdf.md + - name: gui + title: Understanding the GUI + file: GUI_tutorial.md + - name: manipulating_models + title: Manipulating Models + file: Manipulating_models.md + - name: fuel_insert + title: Model Insertion from Fuel + file: Model_insertion_fuel.md + - name: hotkeys + title: Keyboard Shortcuts + file: hotkeys.md + description: Ignition keyboard shortcuts + - name: building_robot + title: Building your own robot + file: building_robot.md + - name: moving_robot + title: Moving the robot + file: moving_robot.md + - name: sdf_worlds + title: SDF worlds + file: sdf_worlds.md + - name: sensors + title: Sensors + file: sensors.md + - name: actors + title: Actors + file: actors.md +- name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages +- name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo +- name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo +- name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. +- name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. +- name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. +- name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA +- name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. +- name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. +- name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md +- name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo diff --git a/fortress/index.yaml b/fortress/index.yaml index 28c445c85e..b9b0ed178c 100644 --- a/fortress/index.yaml +++ b/fortress/index.yaml @@ -4,98 +4,189 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: install - title: Install - file: install.md - description: Fortress installation instructions - children: - - name: install_ubuntu - title: Binary Ubuntu Install - file: install_ubuntu.md - - name: install_osx - title: Binary macOS Install - file: install_osx.md - - name: install_windows - title: Binary Windows Install - file: install_windows.md - - name: install_ubuntu_src - title: Ubuntu Source Install - file: install_ubuntu_src.md - - name: install_osx_src - title: macOS Source Install - file: install_osx_src.md - - name: install_windows_src - title: Windows Source Install - file: install_windows_src.md - - name: troubleshooting - title: Troubleshooting - file: troubleshooting.md - - name: ign_docker_env - title: Dockerized Dev Env - file: ign_docker_env.md - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Ignition. - - name: tutorials - title: Tutorials - file: tutorials.md - children: - - name: building_robot - title: Building your own robot - file: building_robot.md - - name: moving_robot - title: Moving the robot - file: moving_robot.md - - name: sdf_worlds - title: SDF worlds - file: sdf_worlds.md - - name: sensors - title: Sensors - file: sensors.md - - name: actors - title: Actors - file: actors.md - - name: gui - title: Understanding the GUI - file: GUI_tutorial.md - - name: manipulating_models - title: Manipulating Models - file: Manipulating_models.md - - name: fuel_insert - title: Model Insertion from Fuel - file: Model_insertion_fuel.md - - name: hotkeys - title: Keyboard Shortcuts - file: hotkeys.md - description: Ignition keyboard shortcuts - - name: spawn_urdf - title: Spawn URDF - file: spawn_urdf.md - - name: ros_integration - title: ROS Integration - file: ros_integration.md - description: This tutorial details how to interface with ROS, enabling the ability to use tools such as Rviz for robot or sensor visualization. - - name: ros2_integration - title: ROS 2 integration via bridge - file: ros2_integration.md - - name: ros2_interop - title: ROS 2 interoperability - file: ros2_interop.md - - name: ros_gz_project_template_guide - title: ROS 2 integration template - file: ros_gz_project_template_guide.md - - name: web_visualization - title: Web Visualization - file: web_visualization.md +- name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. +- name: install + title: Install + file: install.md + description: Fortress installation instructions + children: + - name: install_ubuntu + title: Binary Ubuntu Install + file: install_ubuntu.md + - name: install_osx + title: Binary macOS Install + file: install_osx.md + - name: install_windows + title: Binary Windows Install + file: install_windows.md + - name: install_ubuntu_src + title: Ubuntu Source Install + file: install_ubuntu_src.md + - name: install_osx_src + title: macOS Source Install + file: install_osx_src.md + - name: install_windows_src + title: Windows Source Install + file: install_windows_src.md + - name: troubleshooting + title: Troubleshooting + file: troubleshooting.md + - name: ign_docker_env + title: Dockerized Dev Env + file: ign_docker_env.md +- name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Ignition. +- name: tutorials + title: Tutorials + file: tutorials.md + children: + - name: building_robot + title: Building your own robot + file: building_robot.md + - name: moving_robot + title: Moving the robot + file: moving_robot.md + - name: sdf_worlds + title: SDF worlds + file: sdf_worlds.md + - name: sensors + title: Sensors + file: sensors.md + - name: actors + title: Actors + file: actors.md + - name: gui + title: Understanding the GUI + file: GUI_tutorial.md + - name: manipulating_models + title: Manipulating Models + file: Manipulating_models.md + - name: fuel_insert + title: Model Insertion from Fuel + file: Model_insertion_fuel.md + - name: hotkeys + title: Keyboard Shortcuts + file: hotkeys.md + description: Ignition keyboard shortcuts + - name: spawn_urdf + title: Spawn URDF + file: spawn_urdf.md + - name: ros_integration + title: ROS Integration + file: ros_integration.md + description: This tutorial details how to interface with ROS, enabling the ability + to use tools such as Rviz for robot or sensor visualization. + - name: ros2_integration + title: ROS 2 integration via bridge + file: ros2_integration.md + - name: ros2_interop + title: ROS 2 interoperability + file: ros2_interop.md + - name: ros_gz_project_template_guide + title: ROS 2 integration template + file: ros_gz_project_template_guide.md + - name: web_visualization + title: Web Visualization + file: web_visualization.md +- name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages +- name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo +- name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo +- name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. +- name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. +- name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. +- name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA +- name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. +- name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. +- name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md +- name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo diff --git a/garden/index.yaml b/garden/index.yaml index e0301c980f..72dec372d5 100644 --- a/garden/index.yaml +++ b/garden/index.yaml @@ -4,96 +4,185 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: install - title: Install - file: install.md - description: Garden installation instructions - children: - - name: install_ubuntu - title: Binary Ubuntu Install - file: install_ubuntu.md - - name: install_osx - title: Binary macOS Install - file: install_osx.md - - name: install_windows - title: Binary Windows Install - file: install_windows.md - - name: install_ubuntu_src - title: Ubuntu Source Install - file: install_ubuntu_src.md - - name: install_osx_src - title: macOS Source Install - file: install_osx_src.md - - name: install_windows_src - title: Windows Source Install - file: install_windows_src.md - - name: troubleshooting - title: Troubleshooting - file: troubleshooting.md - - name: migration_from_ignition - title: Migration from Ignition - file: migration_from_ignition.md - description: Migration from the Ignition name - - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Gazebo. - - name: tutorials - title: Tutorials - file: tutorials.md - children: - - name: building_robot - title: Building your own robot - file: building_robot.md - - name: moving_robot - title: Moving the robot - file: moving_robot.md - - name: sdf_worlds - title: SDF worlds - file: sdf_worlds.md - - name: sensors - title: Sensors - file: sensors.md - - name: actors - title: Actors - file: actors.md - - name: gui - title: Understanding the GUI - file: GUI_tutorial.md - - name: manipulating_models - title: Manipulating Models - file: Manipulating_models.md - - name: fuel_insert - title: Model Insertion from Fuel - file: Model_insertion_fuel.md - - name: hotkeys - title: Keyboard Shortcuts - file: hotkeys.md - description: Gazebo keyboard shortcuts - - name: spawn_urdf - title: Spawn URDF - file: spawn_urdf.md - - name: ros2_integration - title: ROS 2 integration via bridge - file: ros2_integration.md - - name: ros2_interop - title: ROS 2 interoperability - file: ros2_interop.md - - name: ros_gz_project_template_guide - title: ROS 2 integration template - file: ros_gz_project_template_guide.md - - name: web_visualization - title: Web Visualization - file: web_visualization.md +- name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. +- name: install + title: Install + file: install.md + description: Garden installation instructions + children: + - name: install_ubuntu + title: Binary Ubuntu Install + file: install_ubuntu.md + - name: install_osx + title: Binary macOS Install + file: install_osx.md + - name: install_windows + title: Binary Windows Install + file: install_windows.md + - name: install_ubuntu_src + title: Ubuntu Source Install + file: install_ubuntu_src.md + - name: install_osx_src + title: macOS Source Install + file: install_osx_src.md + - name: install_windows_src + title: Windows Source Install + file: install_windows_src.md + - name: troubleshooting + title: Troubleshooting + file: troubleshooting.md +- name: migration_from_ignition + title: Migration from Ignition + file: migration_from_ignition.md + description: Migration from the Ignition name +- name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Gazebo. +- name: tutorials + title: Tutorials + file: tutorials.md + children: + - name: building_robot + title: Building your own robot + file: building_robot.md + - name: moving_robot + title: Moving the robot + file: moving_robot.md + - name: sdf_worlds + title: SDF worlds + file: sdf_worlds.md + - name: sensors + title: Sensors + file: sensors.md + - name: actors + title: Actors + file: actors.md + - name: gui + title: Understanding the GUI + file: GUI_tutorial.md + - name: manipulating_models + title: Manipulating Models + file: Manipulating_models.md + - name: fuel_insert + title: Model Insertion from Fuel + file: Model_insertion_fuel.md + - name: hotkeys + title: Keyboard Shortcuts + file: hotkeys.md + description: Gazebo keyboard shortcuts + - name: spawn_urdf + title: Spawn URDF + file: spawn_urdf.md + - name: ros2_integration + title: ROS 2 integration via bridge + file: ros2_integration.md + - name: ros2_interop + title: ROS 2 interoperability + file: ros2_interop.md + - name: ros_gz_project_template_guide + title: ROS 2 integration template + file: ros_gz_project_template_guide.md + - name: web_visualization + title: Web Visualization + file: web_visualization.md +- name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages +- name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo +- name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo +- name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. +- name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. +- name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. +- name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA +- name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. +- name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. +- name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md +- name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo diff --git a/harmonic/index.yaml b/harmonic/index.yaml index 604c59f1e1..9f358a9bef 100644 --- a/harmonic/index.yaml +++ b/harmonic/index.yaml @@ -4,108 +4,197 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: install - title: Install - file: install.md - description: Harmonic installation instructions - children: - - name: install_ubuntu - title: Binary Ubuntu Install - file: install_ubuntu.md - - name: install_osx - title: Binary macOS Install - file: install_osx.md - - name: install_windows - title: Binary Windows Install - file: install_windows.md - - name: install_ubuntu_src - title: Ubuntu Source Install - file: install_ubuntu_src.md - - name: install_osx_src - title: macOS Source Install - file: install_osx_src.md - - name: install_windows_src - title: Windows Source Install - file: install_windows_src.md - - name: troubleshooting - title: Troubleshooting - file: troubleshooting.md - - name: migration_from_ignition - title: Migration from Ignition - file: migration_from_ignition.md - description: Migration from the Ignition name - - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Gazebo. - - name: tutorials - title: Tutorials - file: tutorials.md - children: - - name: building_robot - title: Building your own robot - file: building_robot.md - - name: moving_robot - title: Moving the robot - file: moving_robot.md - - name: sdf_worlds - title: SDF worlds - file: sdf_worlds.md - - name: sensors - title: Sensors - file: sensors.md - - name: actors - title: Actors - file: actors.md - - name: gui - title: Understanding the GUI - file: GUI_tutorial.md - - name: manipulating_models - title: Manipulating Models - file: Manipulating_models.md - - name: fuel_insert - title: Model Insertion from Fuel - file: Model_insertion_fuel.md - - name: hotkeys - title: Keyboard Shortcuts - file: hotkeys.md - description: Gazebo keyboard shortcuts - - name: spawn_urdf - title: Spawn URDF - file: spawn_urdf.md - - name: ros2_overview - title: ROS 2 integration overview - file: ros2_overview.md - - name: ros2_launch_gazebo - title: Launch Gazebo from ROS 2 - file: ros2_launch_gazebo.md - - name: ros2_integration - title: Use ROS 2 to interact with Gazebo - file: ros2_integration.md - - name: ros2_sim_interfaces - title: Use ROS 2 Simulation Interfaces to Interact with Gazebo - file: ros2_sim_interfaces.md - - name: ros2_spawn_model - title: Use ROS 2 to spawn a Gazebo model - file: ros2_spawn_model.md - - name: ros2_interop - title: ROS 2 interoperability - file: ros2_interop.md - - name: ros_gz_project_template_guide - title: ROS 2 integration template - file: ros_gz_project_template_guide.md - - name: web_visualization - title: Web Visualization - file: web_visualization.md +- name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. +- name: install + title: Install + file: install.md + description: Harmonic installation instructions + children: + - name: install_ubuntu + title: Binary Ubuntu Install + file: install_ubuntu.md + - name: install_osx + title: Binary macOS Install + file: install_osx.md + - name: install_windows + title: Binary Windows Install + file: install_windows.md + - name: install_ubuntu_src + title: Ubuntu Source Install + file: install_ubuntu_src.md + - name: install_osx_src + title: macOS Source Install + file: install_osx_src.md + - name: install_windows_src + title: Windows Source Install + file: install_windows_src.md + - name: troubleshooting + title: Troubleshooting + file: troubleshooting.md +- name: migration_from_ignition + title: Migration from Ignition + file: migration_from_ignition.md + description: Migration from the Ignition name +- name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Gazebo. +- name: tutorials + title: Tutorials + file: tutorials.md + children: + - name: building_robot + title: Building your own robot + file: building_robot.md + - name: moving_robot + title: Moving the robot + file: moving_robot.md + - name: sdf_worlds + title: SDF worlds + file: sdf_worlds.md + - name: sensors + title: Sensors + file: sensors.md + - name: actors + title: Actors + file: actors.md + - name: gui + title: Understanding the GUI + file: GUI_tutorial.md + - name: manipulating_models + title: Manipulating Models + file: Manipulating_models.md + - name: fuel_insert + title: Model Insertion from Fuel + file: Model_insertion_fuel.md + - name: hotkeys + title: Keyboard Shortcuts + file: hotkeys.md + description: Gazebo keyboard shortcuts + - name: spawn_urdf + title: Spawn URDF + file: spawn_urdf.md + - name: ros2_overview + title: ROS 2 integration overview + file: ros2_overview.md + - name: ros2_launch_gazebo + title: Launch Gazebo from ROS 2 + file: ros2_launch_gazebo.md + - name: ros2_integration + title: Use ROS 2 to interact with Gazebo + file: ros2_integration.md + - name: ros2_sim_interfaces + title: Use ROS 2 Simulation Interfaces to Interact with Gazebo + file: ros2_sim_interfaces.md + - name: ros2_spawn_model + title: Use ROS 2 to spawn a Gazebo model + file: ros2_spawn_model.md + - name: ros2_interop + title: ROS 2 interoperability + file: ros2_interop.md + - name: ros_gz_project_template_guide + title: ROS 2 integration template + file: ros_gz_project_template_guide.md + - name: web_visualization + title: Web Visualization + file: web_visualization.md +- name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages +- name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo +- name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo +- name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. +- name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. +- name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. +- name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA +- name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. +- name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. +- name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md +- name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo diff --git a/index.yaml b/index.yaml index f3c64ba468..691d2d8abd 100644 --- a/index.yaml +++ b/index.yaml @@ -4,7 +4,7 @@ # # Components of the index: # -# 1. "pages:" The master list of pages + # # 2. Each page has a # a. "name:" This should be a short url-friendly and unique name. It will @@ -14,108 +14,7 @@ # be displayed on the website's left side bar. # # c. "file:" The markdown file that contains the page's content. -pages: - - name: getstarted - title: Get Started - file: get_started.md - description: Getting started with Gazebo. - - # --> This is where menu items from index.yaml specific to the selected release is inserted - - name: ros_installation - title: ROS/Gazebo Installation - file: ros_installation.md - description: Ros and Gazebo options and combinations - children: - - name: ros2_gz_vendor_pkgs - title: ROS 2 Gazebo Vendor Packages - file: ros2_gz_vendor_pkgs.md - description: Using ROS 2 Gazebo Vendor packages - - name: setup_gazebo_in_ci - title: Continuous Integration For Gazebo Packages - file: setup_gazebo_in_ci.md - description: Instruction on using setup-gazebo - - name: gazebo_classic_migration - title: Gazebo Classic Migration - file: gazebo_classic_migration.md - description: Guides for migrating from Gazebo Classic to the new Gazebo - children: - - name: install_gz11_side_by_side - title: Installing Gazebo11 side by side with new Gazebo - file: install_gz11_side_by_side.md - description: How to install gazebo11 and new Gazebo together - - name: migrating_gazebo_classic_ros2_packages - title: Migration from ROS 2 Gazebo Classic - file: migrating_gazebo_classic_ros2_packages.md - description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic to the new Gazebo - - name: roadmap - title: Roadmap - file: roadmap.md - description: Our development plans. - - name: release-features - title: Release Features - file: release_features.md - description: Features available in each Gazebo release. - - name: releases - title: Releases - file: releases.md - description: Past, current, and future release information. - - name: governance - title: Governance - file: governance.md - description: Governance of the Gazebo project under the OSRA - - name: development - title: Development - file: development.md - description: Gazebo development information - children: - - name: contributing - title: Contributing - file: contributing.md - description: How to contribute to Gazebo. - - name: ci - title: Continuous Integration - file: ci.md - description: Continuous Integration overview. - - name: release - title: Release process - file: release.md - description: Release process overview. - - name: releases-instructions - title: Release Instructions - file: release_instructions.md - description: How Gazebo releases are generated. - - name: architecture - title: Sim Architecture - file: architecture.md - description: Gazebo Sim's architecture overview. - - name: fuel - title: Fuel - file: fuel/about.md - description: Fuel information - children: - - name: fuel_content_deletion_policy - title: Content Deletion Policy - file: fuel/content_deletion_policy.md - - name: fuel_contributing_model - title: Contributing New Model - file: fuel/contributing_model.md - - name: fuel_contributing_world - title: Contributing New World - file: fuel/contributing_world.md - - name: fuel_copyright - title: Copyright - file: fuel/copyright.md - - name: fuel_data_policy - title: Data and Privacy Policy - file: fuel/data_privacy_policy.md - - name: fuel_fair_use - title: What is Fair Use - file: fuel/fair_use.md - - name: projects_using_gazebo - title: Projects using Gazebo - file: projects_using_gazebo.md - description: List of projects using Gazebo releases: - name: jetty lts: true diff --git a/ionic/index.yaml b/ionic/index.yaml index b79b17f82f..59e749af5b 100644 --- a/ionic/index.yaml +++ b/ionic/index.yaml @@ -4,108 +4,197 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: install - title: Install - file: install.md - description: Ionic installation instructions - children: - - name: install_ubuntu - title: Binary Ubuntu Install - file: install_ubuntu.md - - name: install_osx - title: Binary macOS Install - file: install_osx.md - - name: install_windows - title: Binary Windows Install - file: install_windows.md - - name: install_ubuntu_src - title: Ubuntu Source Install - file: install_ubuntu_src.md - - name: install_osx_src - title: macOS Source Install - file: install_osx_src.md - - name: install_windows_src - title: Windows Source Install - file: install_windows_src.md - - name: troubleshooting - title: Troubleshooting - file: troubleshooting.md - - name: migration_from_ignition - title: Migration from Ignition - file: migration_from_ignition.md - description: Migration from the Ignition name - - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Gazebo. - - name: tutorials - title: Tutorials - file: tutorials.md - children: - - name: building_robot - title: Building your own robot - file: building_robot.md - - name: moving_robot - title: Moving the robot - file: moving_robot.md - - name: sdf_worlds - title: SDF worlds - file: sdf_worlds.md - - name: sensors - title: Sensors - file: sensors.md - - name: actors - title: Actors - file: actors.md - - name: gui - title: Understanding the GUI - file: GUI_tutorial.md - - name: manipulating_models - title: Manipulating Models - file: Manipulating_models.md - - name: fuel_insert - title: Model Insertion from Fuel - file: Model_insertion_fuel.md - - name: hotkeys - title: Keyboard Shortcuts - file: hotkeys.md - description: Gazebo keyboard shortcuts - - name: spawn_urdf - title: Spawn URDF - file: spawn_urdf.md - - name: ros2_overview - title: ROS 2 integration overview - file: ros2_overview.md - - name: ros2_launch_gazebo - title: Launch Gazebo from ROS 2 - file: ros2_launch_gazebo.md - - name: ros2_integration - title: Use ROS 2 to interact with Gazebo - file: ros2_integration.md - - name: ros2_sim_interfaces - title: Use ROS 2 Simulation Interfaces to Interact with Gazebo - file: ros2_sim_interfaces.md - - name: ros2_spawn_model - title: Use ROS 2 to spawn a Gazebo model - file: ros2_spawn_model.md - - name: ros2_interop - title: ROS 2 interoperability - file: ros2_interop.md - - name: ros_gz_project_template_guide - title: ROS 2 integration template - file: ros_gz_project_template_guide.md - - name: web_visualization - title: Web Visualization - file: web_visualization.md +- name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. +- name: install + title: Install + file: install.md + description: Ionic installation instructions + children: + - name: install_ubuntu + title: Binary Ubuntu Install + file: install_ubuntu.md + - name: install_osx + title: Binary macOS Install + file: install_osx.md + - name: install_windows + title: Binary Windows Install + file: install_windows.md + - name: install_ubuntu_src + title: Ubuntu Source Install + file: install_ubuntu_src.md + - name: install_osx_src + title: macOS Source Install + file: install_osx_src.md + - name: install_windows_src + title: Windows Source Install + file: install_windows_src.md + - name: troubleshooting + title: Troubleshooting + file: troubleshooting.md +- name: migration_from_ignition + title: Migration from Ignition + file: migration_from_ignition.md + description: Migration from the Ignition name +- name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Gazebo. +- name: tutorials + title: Tutorials + file: tutorials.md + children: + - name: building_robot + title: Building your own robot + file: building_robot.md + - name: moving_robot + title: Moving the robot + file: moving_robot.md + - name: sdf_worlds + title: SDF worlds + file: sdf_worlds.md + - name: sensors + title: Sensors + file: sensors.md + - name: actors + title: Actors + file: actors.md + - name: gui + title: Understanding the GUI + file: GUI_tutorial.md + - name: manipulating_models + title: Manipulating Models + file: Manipulating_models.md + - name: fuel_insert + title: Model Insertion from Fuel + file: Model_insertion_fuel.md + - name: hotkeys + title: Keyboard Shortcuts + file: hotkeys.md + description: Gazebo keyboard shortcuts + - name: spawn_urdf + title: Spawn URDF + file: spawn_urdf.md + - name: ros2_overview + title: ROS 2 integration overview + file: ros2_overview.md + - name: ros2_launch_gazebo + title: Launch Gazebo from ROS 2 + file: ros2_launch_gazebo.md + - name: ros2_integration + title: Use ROS 2 to interact with Gazebo + file: ros2_integration.md + - name: ros2_sim_interfaces + title: Use ROS 2 Simulation Interfaces to Interact with Gazebo + file: ros2_sim_interfaces.md + - name: ros2_spawn_model + title: Use ROS 2 to spawn a Gazebo model + file: ros2_spawn_model.md + - name: ros2_interop + title: ROS 2 interoperability + file: ros2_interop.md + - name: ros_gz_project_template_guide + title: ROS 2 integration template + file: ros_gz_project_template_guide.md + - name: web_visualization + title: Web Visualization + file: web_visualization.md +- name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages +- name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo +- name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo +- name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. +- name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. +- name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. +- name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA +- name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. +- name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. +- name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md +- name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo diff --git a/jetty/index.yaml b/jetty/index.yaml index f7ff342e13..c90bbdd64f 100644 --- a/jetty/index.yaml +++ b/jetty/index.yaml @@ -4,111 +4,222 @@ # # Components of the index: # -# 1. "pages:" The master list of pages -# -# 2. Each page has a -# a. "name:" This should be a short url-friendly and unique name. It will -# be used in the website url. -# -# b. "title:" This is a human-friendly title for the page. This title will -# be displayed on the website's left side bar. -# -# c. "file:" The markdown file that contains the page's content. pages: - - name: release_notes - title: Release Notes - file: release_notes.md - - name: install - title: Install - file: install.md - description: Jetty installation instructions + - section: Get Started + children: + - name: getstarted + title: Get Started + file: common:get_started.md + description: Getting started with Gazebo. + - name: release_notes + title: Release Notes + file: release_notes.md + - name: install + title: Install + file: install.md + description: Jetty installation instructions + children: + - name: install_ubuntu + title: Binary Ubuntu Install + file: install_ubuntu.md + - name: install_osx + title: Binary macOS Install + file: install_osx.md + - name: install_windows + title: Binary Windows Install + file: install_windows.md + - name: install_ubuntu_src + title: Ubuntu Source Install + file: install_ubuntu_src.md + - name: install_osx_src + title: macOS Source Install + file: install_osx_src.md + - name: install_windows_src + title: Windows Source Install + file: install_windows_src.md + - name: troubleshooting + title: Troubleshooting + file: troubleshooting.md + - name: ros_installation + title: ROS/Gazebo Installation + file: common:ros_installation.md + description: Ros and Gazebo options and combinations + children: + - name: ros2_gz_vendor_pkgs + title: ROS 2 Gazebo Vendor Packages + file: common:ros2_gz_vendor_pkgs.md + description: Using ROS 2 Gazebo Vendor packages + + - section: For Users + children: + - name: tutorials + title: Simulation Tutorials + children: + - name: building_robot + title: Building your own robot + file: building_robot.md + - name: moving_robot + title: Moving the robot + file: moving_robot.md + - name: sdf_worlds + title: SDF worlds + file: sdf_worlds.md + - name: sensors + title: Sensors + file: sensors.md + - name: actors + title: Actors + file: actors.md + - name: gui + title: Understanding the GUI + file: GUI_tutorial.md + - name: manipulating_models + title: Manipulating Models + file: Manipulating_models.md + - name: fuel_insert + title: Model Insertion from Fuel + file: Model_insertion_fuel.md + - name: hotkeys + title: Keyboard Shortcuts + file: hotkeys.md + description: Gazebo keyboard shortcuts + - name: spawn_urdf + title: Spawn URDF + file: spawn_urdf.md + - name: how_to_guides + title: How-to Guides + children: + - name: ros2_overview + title: ROS 2 integration overview + file: ros2_overview.md + - name: ros2_launch_gazebo + title: Launch Gazebo from ROS 2 + file: ros2_launch_gazebo.md + - name: ros2_integration + title: Use ROS 2 to interact with Gazebo + file: ros2_integration.md + - name: ros2_sim_interfaces + title: Use ROS 2 Simulation Interfaces to Interact with Gazebo + file: ros2_sim_interfaces.md + - name: ros2_spawn_model + title: Use ROS 2 to spawn a Gazebo model + file: ros2_spawn_model.md + - name: ros2_interop + title: ROS 2 interoperability + file: ros2_interop.md + - name: ros_gz_project_template_guide + title: ROS 2 integration template + file: ros_gz_project_template_guide.md + - name: web_visualization + title: Web Visualization + file: web_visualization.md + + - section: For Developers + children: + - name: architecture + title: Sim Architecture + file: common:architecture.md + description: Gazebo Sim's architecture overview. + - name: library_howtos + title: Library How-to Guides + file: library_howtos.md + - name: developer_how_to_guides + title: How-to Guides + children: + - name: setup_gazebo_in_ci + title: Continuous Integration For Gazebo Packages + file: common:setup_gazebo_in_ci.md + description: Instruction on using setup-gazebo + - name: roadmap + title: Roadmap + file: common:roadmap.md + description: Our development plans. + - name: development + title: Development + file: common:development.md + description: Gazebo development information + children: + - name: contributing + title: Contributing + file: common:contributing.md + description: How to contribute to Gazebo. + - name: ci + title: Continuous Integration + file: common:ci.md + description: Continuous Integration overview. + - name: release + title: Release process + file: common:release.md + description: Release process overview. + - name: releases-instructions + title: Release Instructions + file: common:release_instructions.md + description: How Gazebo releases are generated. + + - section: Reference children: - - name: install_ubuntu - title: Binary Ubuntu Install - file: install_ubuntu.md - - name: install_osx - title: Binary macOS Install - file: install_osx.md - - name: install_windows - title: Binary Windows Install - file: install_windows.md - - name: install_ubuntu_src - title: Ubuntu Source Install - file: install_ubuntu_src.md - - name: install_osx_src - title: macOS Source Install - file: install_osx_src.md - - name: install_windows_src - title: Windows Source Install - file: install_windows_src.md - - name: troubleshooting - title: Troubleshooting - file: troubleshooting.md - - name: migration_from_ignition - title: Migration from Ignition - file: migration_from_ignition.md - description: Migration from the Ignition name + - name: release-features + title: Release Features + file: common:release_features.md + description: Features available in each Gazebo release. + - name: releases + title: Releases + file: common:releases.md + description: Past, current, and future release information. + - name: governance + title: Governance + file: common:governance.md + description: Governance of the Gazebo project under the OSRA + - name: fuel + title: Fuel + file: common:fuel/about.md + description: Fuel information + children: + - name: fuel_content_deletion_policy + title: Content Deletion Policy + file: common:fuel/content_deletion_policy.md + - name: fuel_contributing_model + title: Contributing New Model + file: common:fuel/contributing_model.md + - name: fuel_contributing_world + title: Contributing New World + file: common:fuel/contributing_world.md + - name: fuel_copyright + title: Copyright + file: common:fuel/copyright.md + - name: fuel_data_policy + title: Data and Privacy Policy + file: common:fuel/data_privacy_policy.md + - name: fuel_fair_use + title: What is Fair Use + file: common:fuel/fair_use.md + - name: projects_using_gazebo + title: Projects using Gazebo + file: common:projects_using_gazebo.md + description: List of projects using Gazebo - - name: comparison - title: Feature Comparison - file: comparison.md - description: A list of features present in Gazebo-classic and the status of their migration to Gazebo. - - name: tutorials - title: Tutorials - file: tutorials.md + - section: Migration Guides children: - - name: building_robot - title: Building your own robot - file: building_robot.md - - name: moving_robot - title: Moving the robot - file: moving_robot.md - - name: sdf_worlds - title: SDF worlds - file: sdf_worlds.md - - name: sensors - title: Sensors - file: sensors.md - - name: actors - title: Actors - file: actors.md - - name: gui - title: Understanding the GUI - file: GUI_tutorial.md - - name: manipulating_models - title: Manipulating Models - file: Manipulating_models.md - - name: fuel_insert - title: Model Insertion from Fuel - file: Model_insertion_fuel.md - - name: hotkeys - title: Keyboard Shortcuts - file: hotkeys.md - description: Gazebo keyboard shortcuts - - name: spawn_urdf - title: Spawn URDF - file: spawn_urdf.md - - name: ros2_overview - title: ROS 2 integration overview - file: ros2_overview.md - - name: ros2_launch_gazebo - title: Launch Gazebo from ROS 2 - file: ros2_launch_gazebo.md - - name: ros2_integration - title: Use ROS 2 to interact with Gazebo - file: ros2_integration.md - - name: ros2_sim_interfaces - title: Use ROS 2 Simulation Interfaces to Interact with Gazebo - file: ros2_sim_interfaces.md - - name: ros2_spawn_model - title: Use ROS 2 to spawn a Gazebo model - file: ros2_spawn_model.md - - name: ros2_interop - title: ROS 2 interoperability - file: ros2_interop.md - - name: ros_gz_project_template_guide - title: ROS 2 integration template - file: ros_gz_project_template_guide.md - - name: web_visualization - title: Web Visualization - file: web_visualization.md + - name: migration_from_ignition + title: Migration from Ignition + file: migration_from_ignition.md + description: Migration from the Ignition name + - name: comparison + title: Feature Comparison + file: comparison.md + description: A list of features present in Gazebo-classic and the status of their + migration to Gazebo. + - name: gazebo_classic_migration + title: Gazebo Classic Migration + file: common:gazebo_classic_migration.md + description: Guides for migrating from Gazebo Classic to the new Gazebo + children: + - name: install_gz11_side_by_side + title: Installing Gazebo11 side by side with new Gazebo + file: common:install_gz11_side_by_side.md + description: How to install gazebo11 and new Gazebo together + - name: migrating_gazebo_classic_ros2_packages + title: Migration from ROS 2 Gazebo Classic + file: common:migrating_gazebo_classic_ros2_packages.md + description: A tutorial on how to migrate a ROS 2 package that uses Gazebo Classic + to the new Gazebo diff --git a/jetty/tutorials.md b/jetty/library_howtos.md similarity index 60% rename from jetty/tutorials.md rename to jetty/library_howtos.md index 6b5d9913bd..a66b8f7664 100644 --- a/jetty/tutorials.md +++ b/jetty/library_howtos.md @@ -1,30 +1,4 @@ -# Gazebo Tutorials - -These tutorials cover general concepts to help get you started with Gazebo. - -## Basics tutorials - -* [Building Your Own Robot](building_robot) -* [Moving the Robot](moving_robot) -* [SDF Worlds](sdf_worlds) -* [Sensors](sensors) -* [Actors](actors) - -## GUI tutorials - -* [Understanding the GUI](gui) -* [Manipulating Models](manipulating_models) -* [Model Insertion from Fuel](fuel_insert) -* [Keyboard Shortcuts](hotkeys) - -## ROS integration - -* [Spawn URDF](spawn_urdf) -* [ROS 2 Integration via Bridge](ros2_integration) -* [ROS 2 Interoperability](ros2_interop) -* [ROS 2 Integration Template](ros_gz_project_template_guide) - -## Per-library tutorials +# Gazebo Library How-To Guides See the *API & Tutorials* sections on the [Libraries page](/libs){.external} page for more specific content correlating to each Gazebo library.