Skip to content

[#3053] Suppressed 'docker compose cp' progress output in CI. - #3054

Merged
AlexSkrypnyk merged 2 commits into
mainfrom
feature/quiet-compose-cp
Aug 20, 2026
Merged

[#3053] Suppressed 'docker compose cp' progress output in CI.#3054
AlexSkrypnyk merged 2 commits into
mainfrom
feature/quiet-compose-cp

Conversation

@AlexSkrypnyk

@AlexSkrypnyk AlexSkrypnyk commented Aug 20, 2026

Copy link
Copy Markdown
Member

Closes #3053

Summary

Compose's progress writer prints two stderr lines per docker compose cp invocation - a Copying <src> to <dst> line and a Copied confirmation - and CI was leaving it on for every one of them. In the Provision site step, the two cp calls that stage db.sql and db2.sql into the cli container run first, so their four progress lines are the first thing printed in the step output, pushing the actual provisioning banner below the fold. The same chatter also heads the Export DB, Export built codebase, Process PHPUnit logs and coverage, and Process test logs and artifacts steps.

This adds a global --progress quiet flag to every docker compose cp invocation across both CI providers. The flag disables only Compose's progress writer - errors still reach stderr and exit codes are unchanged, verified against Compose v5.4.0, the version shipped in drevops/ci-runner:26.8.0. docker compose up keeps its default progress output, since that output is worth keeping.

Changes

Suppressed progress output on 'docker compose cp'

  • .github/workflows/build-test-deploy.yml gains --progress quiet on its 7 docker compose cp invocations, across the Export DB, Export built codebase, Provision site, Process PHPUnit logs and coverage, and Process test logs and artifacts steps.
  • .circleci/config.yml gains the same flag on its 8 docker compose cp invocations, across the equivalently named Export DB, Export built codebase, Provision site, Process PHPUnit logs and coverage, and Process test logs and artifacts steps.
  • .circleci/vortex-test-common.yml is regenerated from .circleci/config.yml via ahoy lint-ci-fix, carrying the same flag into the mirrored test job definition.

Regenerated installer snapshot fixtures

  • 37 installer snapshot fixtures are regenerated via ahoy update-snapshots, updating the _baseline fixture and the per-scenario .github/workflows/build-test-deploy.yml / .circleci/config.yml files under .vortex/installer/tests/Fixtures/ to match the source configuration changes above.

Screenshots

N/A

Before / After

BEFORE: progress chatter heads the 'Provision site' step output

  Provision site
  ┌────────────────────────────────────────────────────────┐
  │  cli  Copying .data/db.sql to cli:/app/.data/db.sql    │
  │  cli  Copied                                           │
  │  cli  Copying .data/db2.sql to cli:/app/.data/db2.sql  │
  │  cli  Copied                                           │
  │  ==> Provisioning site...                              │
  └────────────────────────────────────────────────────────┘

AFTER: the provisioning banner is the first line

  Provision site
  ┌────────────────────────────────────────────────────────┐
  │  ==> Provisioning site...                              │
  └────────────────────────────────────────────────────────┘

Summary by CodeRabbit

  • Chores
    • Reduced Docker Compose file-copy command output during database exports, artifact handling, provisioning, and test-log collection.
    • Applied quieter progress reporting across automated build, test, and deployment workflows.
    • Workflow behavior and error handling remain unchanged.

@coderabbitai

coderabbitai Bot commented Aug 20, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 9ad91ea9-ecbb-4456-b1c7-b4efd833be2f

📥 Commits

Reviewing files that changed from the base of the PR and between 6ab6421 and e77b26a.

⛔ Files ignored due to path filters (37)
  • .vortex/installer/tests/Fixtures/handler_process/_baseline/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/ciprovider_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/code_coverage_provider_codecov_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/deploy_types_all_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/deploy_types_none_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/deps_updates_provider_ci_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_disabled_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_enabled/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_enabled_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_enabled_lagoon/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_fetch_source_acquia/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_fetch_source_container_registry/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_fetch_source_ftp/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_fetch_source_lagoon/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_fetch_source_s3/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/migration_fetch_source_url/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/provision_profile/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/timezone_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_groups_no_be_lint_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_groups_no_be_tests/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_groups_no_be_tests_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_groups_no_fe_lint_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_groups_no_fe_lint_no_theme_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_behat_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_dclint_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_docker_linters_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_eslint_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_hadolint_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_jest_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_phpcs_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_phpstan_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_phpunit/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_phpunit_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_rector_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_stylelint_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_no_twig_circleci/.circleci/config.yml is excluded by !.vortex/installer/tests/Fixtures/**
  • .vortex/installer/tests/Fixtures/handler_process/tools_none/.github/workflows/build-test-deploy.yml is excluded by !.vortex/installer/tests/Fixtures/**
📒 Files selected for processing (3)
  • .circleci/config.yml
  • .circleci/vortex-test-common.yml
  • .github/workflows/build-test-deploy.yml

Included review availability: 1 review is currently available. Your included PR review attempts over the past 7 days set your current allowance at 3 reviews per hour.


Walkthrough

The CI configurations add --progress quiet to docker compose cp commands for database, codebase, provisioning, log, and test-result transfers. Workflow control flow and error handling remain unchanged.

Changes

CI copy output

Layer / File(s) Summary
Quiet data transfer commands
.circleci/config.yml, .circleci/vortex-test-common.yml, .github/workflows/build-test-deploy.yml
Database export, codebase export, and provisioning database transfers now use quiet Docker Compose progress output.
Quiet artifact collection
.circleci/config.yml, .circleci/vortex-test-common.yml, .github/workflows/build-test-deploy.yml
PHPUnit, test artifact, test-result, and test log collection now use quiet Docker Compose progress output.

Estimated code review effort: 1 (Trivial) | ~3 minutes

Merge Risk: 🔵 Low · up to e77b2

This PR changes CI command behavior by adding --progress quiet to every docker compose cp call. It is mergeable with owner awareness that the CircleCI executor and remote Docker environments must support this option; otherwise affected CI steps could fail before copying files.

Poem

A rabbit watched the copies race,
Then quieted their noisy trace.
The logs now keep a cleaner tune,
While errors still report as soon.
Hop, hop—CI shines bright! 🐇

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Linked Issues check ✅ Passed The CI configurations add --progress quiet to docker compose cp commands while leaving docker compose up and workflow behavior unchanged.
Out of Scope Changes check ✅ Passed The reviewed changes are limited to Docker Compose copy commands in CI configuration files and related regenerated configuration.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (3 skipped: 3 unsupported.)
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: suppressing docker compose cp progress output in CI.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/quiet-compose-cp

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown

Code coverage (threshold: 90%)

  Classes: 100.00% (1/1)
  Methods: 100.00% (2/2)
  Lines:   98.56% (206/209)
Per-class coverage
Drupal\ys_demo\Plugin\Block\CounterBlock
  Methods: 100.00% ( 2/ 2)   Lines: 100.00% ( 10/ 10)

@AlexSkrypnyk

This comment has been minimized.

1 similar comment
@AlexSkrypnyk

This comment has been minimized.

@AlexSkrypnyk
AlexSkrypnyk merged commit 97b2b9b into main Aug 20, 2026
30 of 33 checks passed
@AlexSkrypnyk

Copy link
Copy Markdown
Member Author

Code coverage (threshold: 90%)

  Classes: 100.00% (1/1)
  Methods: 100.00% (2/2)
  Lines:   98.56% (206/209)
Per-class coverage
Drupal\ys_demo\Plugin\Block\CounterBlock
  Methods: 100.00% ( 2/ 2)   Lines: 100.00% ( 10/ 10)

@AlexSkrypnyk
AlexSkrypnyk deleted the feature/quiet-compose-cp branch August 20, 2026 23:14
@github-project-automation github-project-automation Bot moved this from BACKLOG to Release queue in Vortex 1.x Aug 20, 2026
@codecov

codecov Bot commented Aug 20, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 86.98%. Comparing base (6ab6421) to head (e77b26a).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3054      +/-   ##
==========================================
- Coverage   87.10%   86.98%   -0.13%     
==========================================
  Files         101      100       -1     
  Lines        4917     4963      +46     
  Branches       47        3      -44     
==========================================
+ Hits         4283     4317      +34     
- Misses        634      646      +12     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@AlexSkrypnyk AlexSkrypnyk added this to the 1.41.0 milestone Sep 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Released in 1.41.0

Development

Successfully merging this pull request may close these issues.

Suppress docker compose cp progress output in CI

1 participant