Skip to content
Latchkey

rsync --progress and --info in CI Logs

rsync --progress prints a live progress indicator for each file; --info=progress2 shows one overall percentage instead.

Progress output is handy locally but can spam a CI log with carriage returns. --info=progress2 is the log-friendly choice.

What it does

--progress shows bytes, percentage, speed, and ETA for each file as it transfers. --info=progress2 instead shows a single running total across the whole transfer, which is far cleaner in CI. Both rely on the same machinery; -P is a shortcut for --partial --progress.

Common usage

Terminal
# Per-file progress (noisy in CI)
rsync -av --progress big-artifacts/ user@host:/srv/

# One overall progress line (CI friendly)
rsync -a --info=progress2 big-artifacts/ user@host:/srv/

Progress options

FlagWhat it does
--progressPer-file progress (bytes, %, speed, ETA)
--info=progress2Single overall progress for the whole run
-PShortcut for --partial --progress
--info=FLAGSFine-grained info (stats2, name0, etc.)

In CI

CI log viewers do not interpret the carriage returns rsync uses to redraw progress, so --progress can leave a wall of fragmented lines. Use --info=progress2 for a single clean total, or drop progress entirely and rely on --stats for a final summary.

Common errors in CI

No error is unique to --progress, but combining it with -q (quiet) is contradictory and progress wins. If you see garbled progress text in the log, switch from --progress to --info=progress2.

Related guides

Run this faster and cheaper on Latchkey managed runners. Start free →