Exclude .agents and .claude dirs from the GitLab package

What does this MR do?

The .agents/ and .claude/ directories are agent-tooling and configuration directories with no runtime role in the packaged components. They were being copied into the omnibus GitLab package via sync steps in config/software/, adding dead weight.

The package is meant to be as lean as possible, so this MR adds .agents and .claude to the sync exclusion lists for the GitLab-org-owned source trees that get bundled into the package:

  • config/software/gitlab-rails.rb
  • config/software/gitlab-shell.rb
  • config/software/gitlabsos.rb

Like the existing .git / .gitignore entries, these bare rsync-style patterns match the directories wherever they appear in the source tree, not just at the repository root.

Third-party upstream source trees synced into the package (chef-acme, compat_resource, nginx modules) are intentionally left untouched, since those upstreams do not carry GitLab agent-tooling directories. Components synced from this repo's own files/ directories (gitlab-ctl, gitlab-cookbooks, etc.) are not affected.

gitlab#603547

Checklist

See Definition of done.

Required

  • MR title and description are up to date, accurate, and descriptive.
  • MR targeting the appropriate branch.
  • Latest Merge Result pipeline is green.
  • When ready for review, MR is labeled workflowready for review per the Distribution MR workflow.

For GitLab team members

  • If config/software or config/patches directories are changed, make sure the build-package-on-all-os job within the Trigger:ee-package downstream pipeline succeeded.

🤖 Generated with Claude Code

Edited by Michael Friedrich

Merge request reports

Loading