Skip to content

feat(ansible): add demo_artifacts role for sample maps and rosbag#7067

Open
xmfcx wants to merge 3 commits intomainfrom
feat/ansible-demo-artifacts-role
Open

feat(ansible): add demo_artifacts role for sample maps and rosbag#7067
xmfcx wants to merge 3 commits intomainfrom
feat/ansible-demo-artifacts-role

Conversation

@xmfcx
Copy link
Copy Markdown
Contributor

@xmfcx xmfcx commented Apr 27, 2026

  • Adds a new autoware.dev_env.demo_artifacts role that downloads and extracts the sample maps and rosbag used by the planning-sim and rosbag-replay-simulation demos.
  • Artifacts are pulled from autoware-files S3 (replacing the manual gdown from Google Drive in the docs) and verified with sha256 checksums.
  • Wired into install_dev_env.yaml under tags [never, demo_artifacts] so it only runs when --tags demo_artifacts is requested explicitly.

Why

The demos currently require users to manually run gdown against Google Drive links and unzip into ~/autoware_map/, which is fragile (rate limits, expiring links) and inconsistent with how every other artifact set is provisioned. Moving the demo assets behind the same ansible/S3 pipeline as the ML models gives users a one-command setup and a reproducible path forward.

The role lays the artifacts out under the consolidated autoware_data/ structure proposed in the design discussion - maps under maps/demos/, rosbags under recordings/bags/demos/ - so this PR also seeds the new layout for an asset type that is currently misfiled under ~/autoware_map/.


Test plan

image
  • Install the collection and run the role end to end:
    cd ~/projects/autoware/ansible
    ansible-galaxy collection install -f .
    ansible-playbook autoware.dev_env.install_dev_env --tags demo_artifacts --ask-become-pass
  • Verify the resulting layout matches the README:
    tree -L 4 ~/autoware_data/maps/demos ~/autoware_data/recordings/bags/demos
    • ~/autoware_data/maps/demos/sample-map-planning/{lanelet2_map.osm,pointcloud_map.pcd,map_config.yaml,map_projector_info.yaml} exist
    • ~/autoware_data/maps/demos/sample-map-rosbag/{lanelet2_map.osm,pointcloud_map.pcd,map_projector_info.yaml} exist
    • ~/autoware_data/recordings/bags/demos/sample-rosbag/{metadata.yaml,sample-rosbag_0.db3} exist
  • Re-run the playbook and confirm all tasks report ok (idempotent - no re-downloads, no re-extracts changing state).
  • Confirm the role is opt-in: run ansible-playbook autoware.dev_env.install_dev_env --tags universe --check and verify demo_artifacts tasks are skipped.
  • Verify checksums match the values in tasks/main.yaml:
    for f in ~/autoware_data/maps/demos/sample-map-planning.zip \
             ~/autoware_data/maps/demos/sample-map-rosbag.zip \
             ~/autoware_data/recordings/bags/demos/sample-rosbag.zip; do
      sha256sum "$f"
    done
  • Run the planning-sim demo against ~/autoware_data/maps/demos/sample-map-planning/ and confirm RViz loads the map.
  • Run the rosbag-replay demo against ~/autoware_data/maps/demos/sample-map-rosbag/ and ~/autoware_data/recordings/bags/demos/sample-rosbag/ and confirm playback.

Adds a new autoware.dev_env.demo_artifacts role that downloads the
sample-map-planning, sample-map-rosbag, and sample-rosbag artifacts used
by the planning-sim and rosbag-replay-simulation demos from the
autoware-files S3 bucket (replacing the gdown-from-Google-Drive flow in
the docs).

Wired into install_dev_env.yaml under tags [never, demo_artifacts] so it
only runs when --tags demo_artifacts is requested explicitly.

Layout follows the consolidated autoware_data structure proposed in
discussion #7064: maps/demos/ for the maps and recordings/bags/demos/
for the rosbag.

Signed-off-by: Mete Fatih Cırıt <mfc@autoware.org>
@xmfcx xmfcx added the run:health-check Run health-check label Apr 27, 2026
@xmfcx xmfcx self-assigned this Apr 27, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 27, 2026

Thank you for contributing to the Autoware project!

🚧 If your pull request is in progress, switch it to draft mode.

Please ensure:

pre-commit-ci Bot and others added 2 commits April 27, 2026 14:13
Without cache_valid_time, the unzip install task forces an apt update
on every playbook run, which is slow on otherwise-idempotent re-runs.

Signed-off-by: Mete Fatih Cırıt <mfc@autoware.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

run:health-check Run health-check

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant