Skip to content
Draft
Show file tree
Hide file tree
Changes from 19 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
c9de1c7
Initial plan
Copilot Dec 19, 2025
9ae07a7
Move docker_compose into docker directory and update references
Copilot Dec 19, 2025
3337dc9
Update Gemfile.lock files and documentation for docker_compose reloca…
Copilot Dec 19, 2025
2aba739
Update GitHub configs and bin/dry-run.rb for docker_compose relocation
Copilot Dec 19, 2025
09d33e1
Update rakelib and sorbet config for docker_compose relocation
Copilot Dec 19, 2025
272b2a2
Move docker_compose lib files into docker/lib/dependabot/
Copilot Dec 30, 2025
a1e376d
update paths in configuration
robaiken Dec 31, 2025
af70608
refactoring docker_compose inside of docker
robaiken Dec 31, 2025
72a98c8
Merge branch 'main' into copilot/move-docker-compose-directory
robaiken Dec 31, 2025
b5aa08b
use new gem file
robaiken Dec 31, 2025
8b7b0c7
update lock file
robaiken Jan 2, 2026
2c7c6ef
Merge branch 'main' into copilot/move-docker-compose-directory
robaiken Jan 2, 2026
1126949
updating lock files
robaiken Jan 2, 2026
2a117f6
use ecosystem name rather than path to build image
robaiken Jan 2, 2026
b4f78d1
simplifying test matric
robaiken Jan 2, 2026
22b51a8
rollback simplification of the test matrix
robaiken Jan 5, 2026
31b3151
Merge branch 'main' into copilot/move-docker-compose-directory
robaiken Jan 6, 2026
0f9fd85
Merge branch 'main' into copilot/move-docker-compose-directory
robaiken Jan 7, 2026
443a2bd
Fix CI workflow to use path instead of name for build command
robaiken Jan 7, 2026
fdce4d9
Update labeler.yml with new Docker file patterns
robaiken Jan 7, 2026
03b7dad
fixing lint issues with yaml
robaiken Jan 7, 2026
ad8ac01
refactoring yaml
robaiken Jan 7, 2026
367e5a3
updating filters
robaiken Jan 8, 2026
633c35a
Merge branch 'main' into copilot/move-docker-compose-directory
robaiken Jan 8, 2026
0face80
Add require statement for dependabot/docker_compose
robaiken Jan 8, 2026
381e5dc
Merge remote-tracking branch 'origin' into copilot/move-docker-compos…
robaiken Jan 8, 2026
aa36ec5
updating lockfile
robaiken Jan 8, 2026
ca35646
Merge branch 'main' into copilot/move-docker-compose-directory
robaiken Jan 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ci-filters.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ docker:
- 'docker/**'
docker_compose:
- *shared
- 'docker_compose/**'
- 'docker/lib/dependabot/docker_compose/**'
Copy link
Contributor

@kbukum1 kbukum1 Jan 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@robaiken , I think we can add filter like following

  • docker/lib/dependabot/docker_compose/**
  • docker/lib/dependabot/share/**

dotnet_sdk:
- *shared
- 'dotnet_sdk/**'
Expand Down
2 changes: 1 addition & 1 deletion .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

"L: docker:compose":
- changed-files:
- any-glob-to-any-file: docker_compose/**
- any-glob-to-any-file: docker/lib/dependabot/docker_compose/**

"L: dotnet:dotnet-sdk":
- changed-files:
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ jobs:
- { path: bun, name: bun, ecosystem: bun }
- { path: bundler, name: bundler, ecosystem: bundler }
- { path: cargo, name: cargo, ecosystem: cargo }
- { path: common, name: common, ecosystem: common}
- { path: common, name: common, ecosystem: common }
- { path: composer, name: composer, ecosystem: composer }
- { path: conda, name: conda, ecosystem: conda }
- { path: devcontainers, name: devcontainers, ecosystem: devcontainers }
- { path: docker_compose, name: docker_compose, ecosystem: docker-compose }
- { path: docker, name: docker, ecosystem: docker }
- { path: docker, name: docker_compose, ecosystem: docker-compose, build: docker_compose }
- { path: dotnet_sdk, name: dotnet_sdk, ecosystem: dotnet-sdk }
- { path: elm, name: elm, ecosystem: elm }
- { path: git_submodules, name: git_submodules, ecosystem: gitsubmodule }
Expand All @@ -38,13 +38,13 @@ jobs:
- { path: maven, name: maven, ecosystem: maven }
- { path: npm_and_yarn, name: npm_and_yarn, ecosystem: npm }
- { path: nuget, name: nuget, ecosystem: nuget }
- { path: opentofu, name: opentofu, ecosystem: opentofu }
- { path: pub, name: pub, ecosystem: pub }
- { path: python, name: python_slow, ecosystem: pip }
- { path: python, name: python, ecosystem: pip }
- { path: python, name: python_slow, ecosystem: pip }
- { path: rust_toolchain, name: rust_toolchain, ecosystem: rust-toolchain }
- { path: swift, name: swift, ecosystem: swift }
- { path: terraform, name: terraform, ecosystem: terraform }
- { path: opentofu, name: opentofu, ecosystem: opentofu }
- { path: uv, name: uv, ecosystem: uv }
- { path: vcpkg, name: vcpkg, ecosystem: vcpkg }

Expand All @@ -63,7 +63,7 @@ jobs:

- name: Build ecosystem image
if: steps.changes.outputs[matrix.suite.path] == 'true'
run: script/build ${{ matrix.suite.path }}
run: script/build ${{ matrix.suite.build || matrix.suite.path }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@robaiken , are this similar things? Is there a reason now we are before trying to capture the build path?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To avoid breaking the other filters, adding a new parameter was the simplest approach. While not ideal, refactoring the entire CI matrix would be beyond the scope of this work, especially given that this PR is already quite large.


- name: Run ${{ matrix.suite.name }} tests
if: steps.changes.outputs[matrix.suite.path] == 'true'
Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ gem "dependabot-composer", path: "composer"
gem "dependabot-conda", path: "conda"
gem "dependabot-devcontainers", path: "devcontainers"
gem "dependabot-docker", path: "docker"
gem "dependabot-docker_compose", path: "docker_compose"
gem "dependabot-docker_compose", path: "docker"
gem "dependabot-dotnet_sdk", path: "dotnet_sdk"
gem "dependabot-elm", path: "elm"
gem "dependabot-github_actions", path: "github_actions"
Expand Down
10 changes: 3 additions & 7 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -68,18 +68,14 @@ PATH
dependabot-devcontainers (0.355.0)
dependabot-common (= 0.355.0)

PATH
remote: docker_compose
specs:
dependabot-docker_compose (0.355.0)
dependabot-common (= 0.355.0)
dependabot-docker (= 0.355.0)

PATH
remote: docker
specs:
dependabot-docker (0.355.0)
dependabot-common (= 0.355.0)
dependabot-docker_compose (0.355.0)
dependabot-common (= 0.355.0)
dependabot-docker (= 0.355.0)

PATH
remote: dotnet_sdk
Expand Down
9 changes: 4 additions & 5 deletions bin/docker-dev-shell
Original file line number Diff line number Diff line change
Expand Up @@ -181,11 +181,10 @@ docker run --rm -ti \
-v "$(pwd)/docker/lib:$CODE_DIR/docker/lib" \
-v "$(pwd)/docker/script:$CODE_DIR/docker/script" \
-v "$(pwd)/docker/spec:$CODE_DIR/docker/spec" \
-v "$(pwd)/docker_compose/.rubocop.yml:$CODE_DIR/docker_compose/.rubocop.yml" \
-v "$(pwd)/docker_compose/dependabot-docker_compose.gemspec:$CODE_DIR/docker_compose/dependabot-docker_compose.gemspec" \
-v "$(pwd)/docker_compose/lib:$CODE_DIR/docker_compose/lib" \
-v "$(pwd)/docker_compose/script:$CODE_DIR/docker_compose/script" \
-v "$(pwd)/docker_compose/spec:$CODE_DIR/docker_compose/spec" \
-v "$(pwd)/docker/.rubocop.yml:$CODE_DIR/docker_compose/.rubocop.yml" \
-v "$(pwd)/docker/dependabot-docker_compose.gemspec:$CODE_DIR/docker_compose/dependabot-docker_compose.gemspec" \
-v "$(pwd)/docker/script:$CODE_DIR/docker_compose/script" \
-v "$(pwd)/docker/spec:$CODE_DIR/docker_compose/spec" \
-v "$(pwd)/dotnet_sdk/.rubocop.yml:$CODE_DIR/dotnet_sdk/.rubocop.yml" \
-v "$(pwd)/dotnet_sdk/dependabot-dotnet_sdk.gemspec:$CODE_DIR/dotnet_sdk/dependabot-dotnet_sdk.gemspec" \
-v "$(pwd)/dotnet_sdk/lib:$CODE_DIR/dotnet_sdk/lib" \
Expand Down
2 changes: 0 additions & 2 deletions bin/dry-run.rb
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,6 @@
$LOAD_PATH << "./composer/lib"
$LOAD_PATH << "./conda/lib"
$LOAD_PATH << "./devcontainers/lib"
$LOAD_PATH << "./docker_compose/lib"
$LOAD_PATH << "./docker/lib"
$LOAD_PATH << "./dotnet_sdk/lib"
$LOAD_PATH << "./elm/lib"
Expand Down Expand Up @@ -123,7 +122,6 @@
require "dependabot/conda"
require "dependabot/devcontainers"
require "dependabot/docker"
require "dependabot/docker_compose"
require "dependabot/dotnet_sdk"
require "dependabot/elm"
require "dependabot/git_submodules"
Expand Down
8 changes: 4 additions & 4 deletions bin/test
Original file line number Diff line number Diff line change
Expand Up @@ -71,13 +71,13 @@ fi
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"

if [[ ! -d "$REPO_ROOT/$ECOSYSTEM" ]]; then
echo "error: ecosystem directory '$ECOSYSTEM' not found" >&2
if [[ ! -d "$REPO_ROOT/$HOST_ECOSYSTEM_DIR" ]]; then
echo "error: ecosystem directory '$HOST_ECOSYSTEM_DIR' not found" >&2
exit 1
fi

if [[ ! -d "$REPO_ROOT/$WORKDIR" ]]; then
echo "error: workdir '$WORKDIR' not found" >&2
if [[ ! -d "$REPO_ROOT/$HOST_WORKDIR" ]]; then
echo "error: workdir '$HOST_WORKDIR' not found" >&2
exit 1
fi

Expand Down
2 changes: 2 additions & 0 deletions docker/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

Docker support for [`dependabot-core`][core-repo].

**Note:** The `docker_compose` ecosystem is also located in this directory at `docker/docker_compose/` to share common code while maintaining separate package management.

### Running locally

1. Start a development shell
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
spec.required_rubygems_version = common_gemspec.required_ruby_version

spec.require_path = "lib"
spec.files = Dir["lib/**/*"]
spec.files = Dir["lib/dependabot/docker_compose.rb", "lib/dependabot/docker_compose/**/*"]

spec.add_dependency "dependabot-common", Dependabot::VERSION
spec.add_dependency "dependabot-docker", Dependabot::VERSION
Expand Down
1 change: 0 additions & 1 deletion docker_compose/.bundle/config

This file was deleted.

5 changes: 0 additions & 5 deletions docker_compose/.gitignore

This file was deleted.

1 change: 0 additions & 1 deletion docker_compose/.rubocop.yml

This file was deleted.

25 changes: 0 additions & 25 deletions docker_compose/Dockerfile

This file was deleted.

45 changes: 0 additions & 45 deletions docker_compose/README.md

This file was deleted.

6 changes: 0 additions & 6 deletions docker_compose/script/ci-test

This file was deleted.

19 changes: 0 additions & 19 deletions docker_compose/spec/fixtures/docker/dockerfiles/bare

This file was deleted.

19 changes: 0 additions & 19 deletions docker_compose/spec/fixtures/docker/dockerfiles/case

This file was deleted.

19 changes: 0 additions & 19 deletions docker_compose/spec/fixtures/docker/dockerfiles/digest

This file was deleted.

19 changes: 0 additions & 19 deletions docker_compose/spec/fixtures/docker/dockerfiles/digest_and_tag

This file was deleted.

19 changes: 0 additions & 19 deletions docker_compose/spec/fixtures/docker/dockerfiles/ecr_digest

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading
Loading