This is an automated email from the ASF dual-hosted git repository.
janhoy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/solr-orbit.git
The following commit(s) were added to refs/heads/main by this push:
new 6d6f079d Dependabot: use uv ecosystem for Python deps instead of pip
(#88)
6d6f079d is described below
commit 6d6f079d1be6bdccc3be46dfe2f9a0d01f1d2da6
Author: Jan Høydahl <[email protected]>
AuthorDate: Fri Sep 18 14:31:06 2026 +0200
Dependabot: use uv ecosystem for Python deps instead of pip (#88)
* Dependabot: use uv ecosystem for Python deps instead of pip
* CI: skip code workflows for docs-only and config-only PRs
Split Docs-Lint out of unit-test.yml into docs-lint.yml so docs changes
validate the Jekyll site without running the Python test matrix.
Add paths-ignore deny-lists to unit-test.yml and docker-build.yml so
markdown, .gitignore, dependabot.yml, issue templates, .asf.yaml,
.fossa.yml,
LICENSE and NOTICE no longer trigger them. Deny-lists (not allow-lists) keep
new source directories covered by default.
Narrow check-actions-usage.yml to .github/workflows and .github/actions, and
dockerfile-lint.yml to the Dockerfiles hadolint actually reads.
---
.github/dependabot.yml | 3 ++-
.github/workflows/check-actions-usage.yml | 9 ++++++--
.github/workflows/docker-build.yml | 12 ++++++++++
.github/workflows/dockerfile-lint.yml | 5 +++-
.github/workflows/docs-lint.yml | 34 +++++++++++++++++++++++++++
.github/workflows/unit-test.yml | 38 ++++++++++++++-----------------
6 files changed, 76 insertions(+), 25 deletions(-)
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index e21189c8..f7714e89 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -1,6 +1,7 @@
version: 2
updates:
- - package-ecosystem: "pip"
+ # Python dependencies are managed by uv (pyproject.toml + uv.lock)
+ - package-ecosystem: "uv"
directory: "/"
schedule:
interval: "monthly"
diff --git a/.github/workflows/check-actions-usage.yml
b/.github/workflows/check-actions-usage.yml
index 31b44d88..6a3d62ea 100644
--- a/.github/workflows/check-actions-usage.yml
+++ b/.github/workflows/check-actions-usage.yml
@@ -6,10 +6,15 @@ on:
branches:
- main
paths:
- - ".github/**"
+ - ".github/workflows/**"
+ - ".github/actions/**"
pull_request:
+ # Narrowed from ".github/**": this checks action pinning/compliance, which
+ # only concerns workflow and composite-action files. Editing
+ # dependabot.yml or an issue template no longer triggers it.
paths:
- - ".github/**"
+ - ".github/workflows/**"
+ - ".github/actions/**"
permissions:
contents: read
diff --git a/.github/workflows/docker-build.yml
b/.github/workflows/docker-build.yml
index 203165f2..afc8eec9 100644
--- a/.github/workflows/docker-build.yml
+++ b/.github/workflows/docker-build.yml
@@ -1,6 +1,18 @@
name: Docker Build
on:
pull_request:
+ # The build context is the whole repo, so this is a deny-list of files
+ # that cannot affect the image.
+ paths-ignore:
+ - '**.md'
+ - '.gitignore'
+ - '.github/dependabot.yml'
+ - '.github/ISSUE_TEMPLATE/**'
+ - '.asf.yaml'
+ - '.fossa.yml'
+ - 'LICENSE'
+ - 'NOTICE'
+ - 'docs/**'
workflow_dispatch:
inputs:
logLevel:
diff --git a/.github/workflows/dockerfile-lint.yml
b/.github/workflows/dockerfile-lint.yml
index 2d18c474..8323cba0 100644
--- a/.github/workflows/dockerfile-lint.yml
+++ b/.github/workflows/dockerfile-lint.yml
@@ -3,8 +3,11 @@ name: dockerfile-lint
on:
pull_request:
+ # hadolint only reads docker/*Dockerfile, so docker/README.md and
+ # docker/.dockerignore need not trigger a lint run.
paths:
- - 'docker/**'
+ - 'docker/*Dockerfile*'
+ - '.github/workflows/dockerfile-lint.yml'
permissions:
contents: read
diff --git a/.github/workflows/docs-lint.yml b/.github/workflows/docs-lint.yml
new file mode 100644
index 00000000..0e117767
--- /dev/null
+++ b/.github/workflows/docs-lint.yml
@@ -0,0 +1,34 @@
+name: Docs Lint
+
+# Split out of unit-test.yml so that documentation changes validate the docs
+# site without also running the full Python test matrix (and vice versa).
+on:
+ workflow_dispatch:
+ pull_request:
+ paths:
+ - 'docs/**'
+ - '.github/workflows/docs-lint.yml'
+
+permissions:
+ contents: read
+
+jobs:
+ Docs-Lint:
+ runs-on: ubuntu-latest
+ defaults:
+ run:
+ working-directory: docs
+ steps:
+ - name: Checkout
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #
v7.0.1
+
+ - name: Setup Ruby
+ uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1
+ with:
+ ruby-version: "3.3"
+ bundler-cache: true
+ cache-version: 0
+ working-directory: docs
+
+ - name: Build docs (lint check)
+ run: bundle exec jekyll build --baseurl ""
diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml
index db651f0b..31812b4f 100644
--- a/.github/workflows/unit-test.yml
+++ b/.github/workflows/unit-test.yml
@@ -1,5 +1,21 @@
name: Run Unit Tests
-on: [workflow_dispatch, pull_request]
+on:
+ workflow_dispatch:
+ pull_request:
+ # Skip the test matrix for changes that cannot affect Python behaviour.
+ # This is a deny-list on purpose: anything not listed here still runs the
+ # tests, so a newly added source directory is never silently skipped.
+ paths-ignore:
+ - '**.md'
+ - '.gitignore'
+ - '.github/dependabot.yml'
+ - '.github/ISSUE_TEMPLATE/**'
+ - '.asf.yaml'
+ - '.fossa.yml'
+ - 'LICENSE'
+ - 'NOTICE'
+ # The docs site is validated by docs-lint.yml instead.
+ - 'docs/**'
permissions:
contents: read
@@ -31,23 +47,3 @@ jobs:
- name: Run the CI build script
run: bash .ci/build.sh build_and_unit_test
-
- Docs-Lint:
- runs-on: ubuntu-latest
- defaults:
- run:
- working-directory: docs
- steps:
- - name: Checkout
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 #
v7.0.1
-
- - name: Setup Ruby
- uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1
- with:
- ruby-version: "3.3"
- bundler-cache: true
- cache-version: 0
- working-directory: docs
-
- - name: Build docs (lint check)
- run: bundle exec jekyll build --baseurl ""