Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
126 changes: 77 additions & 49 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,70 +1,98 @@
version: 2
updates:
# npm (root workspace)
- package-ecosystem: npm
directory: /
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: monthly
open-pull-requests-limit: 5
interval: "cron"
cronjob: "0 2 1 * *"
timezone: "Asia/Shanghai"
cooldown:
default-days: 7
semver-major-days: 14
semver-minor-days: 7
semver-patch-days: 3
open-pull-requests-limit: 10
commit-message:
prefix: "chore(deps)"
groups:
npm-minor-patch:
patterns: ['*']
update-types: ['minor', 'patch']
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major"]
commit-message:
prefix: 'chore(deps)'
update-types:
- "minor"
- "patch"

# uv (python workspace)
- package-ecosystem: uv
directory: /
- package-ecosystem: "uv"
directory: "/"
schedule:
interval: monthly
open-pull-requests-limit: 5
interval: "cron"
cronjob: "0 2 1 * *"
timezone: "Asia/Shanghai"
cooldown:
default-days: 7
semver-major-days: 14
semver-minor-days: 7
semver-patch-days: 3
open-pull-requests-limit: 10
commit-message:
prefix: "chore(deps)"
groups:
uv-minor-patch:
patterns: ['*']
update-types: ['minor', 'patch']
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major"]
commit-message:
prefix: 'chore(deps)'
update-types:
- "minor"
- "patch"

# github-actions
- package-ecosystem: github-actions
directory: /
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: monthly
interval: "cron"
cronjob: "0 2 1 * *"
timezone: "Asia/Shanghai"
cooldown:
default-days: 7
open-pull-requests-limit: 5
commit-message:
prefix: "chore(ci)"
groups:
actions:
patterns: ['*']
update-types: ['minor', 'patch']
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major"]
patterns:
- "*"

# Docker 基础镜像(deploy 目录)
- package-ecosystem: docker
directory: /deploy
- package-ecosystem: "docker"
directory: "/deploy"
schedule:
interval: monthly
interval: "cron"
cronjob: "0 2 1 * *"
timezone: "Asia/Shanghai"
cooldown:
default-days: 7
open-pull-requests-limit: 5
commit-message:
prefix: "chore(docker)"
ignore:
- dependency-name: "python"
update-types:
- "version-update:semver-major"
- "version-update:semver-minor"
- dependency-name: "node"
update-types:
- "version-update:semver-major"
- "version-update:semver-minor"
groups:
docker-images:
patterns: ['*']
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major"]
patterns:
- "*"

- package-ecosystem: docker-compose
directory: /deploy
- package-ecosystem: "docker-compose"
directory: "/deploy"
schedule:
interval: monthly
interval: "cron"
cronjob: "0 2 1 * *"
timezone: "Asia/Shanghai"
cooldown:
default-days: 7
open-pull-requests-limit: 5
commit-message:
prefix: "chore(docker)"
groups:
compose-services:
patterns: ['*']
ignore:
- dependency-name: "*"
update-types: ["version-update:semver-major"]
compose-images:
patterns:
- "*"
28 changes: 14 additions & 14 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5

- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"

Expand All @@ -39,11 +39,11 @@ jobs:

# contracts:check regenerates the client contracts from the protocol
# package, so this job needs the locked Python workspace as well.
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"

- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: "22.23.2"
cache: npm
Expand Down Expand Up @@ -80,7 +80,7 @@ jobs:
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5

- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"

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

- name: Upload test metadata on failure
if: failure()
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
with:
name: pytest-metadata
path: .ci/pytest.xml
Expand All @@ -120,7 +120,7 @@ jobs:
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5

- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: "22.23.2"
cache: npm
Expand All @@ -129,7 +129,7 @@ jobs:
with:
components: rustfmt, clippy

- uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2
- uses: Swatinem/rust-cache@d1527c8f67ef9af357290475d4af4b0fab8f12e0 # v2
with:
workspaces: apps/clients/tauri/src-tauri -> target
# rust-cache keys caches by job id; keep the pre-split `verify`
Expand Down Expand Up @@ -194,12 +194,12 @@ jobs:
timeout-minutes: 45
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: "22.23.2"
cache: npm
- uses: dtolnay/rust-toolchain@4360b52568e2003a75bf9bc1d59f33a8e3fc893c # stable
- uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2
- uses: Swatinem/rust-cache@d1527c8f67ef9af357290475d4af4b0fab8f12e0 # v2
with:
workspaces: apps/clients/tauri/src-tauri -> target
- run: npm ci
Expand All @@ -211,11 +211,11 @@ jobs:
timeout-minutes: 60
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: "22.23.2"
cache: npm
- uses: actions/setup-java@de7274f081f381c8f8158605e0321c36c376e2e6 # v6.0.1
- uses: actions/setup-java@b843ebf9b913146b38da2eaa7aeddf76074ae1ad # v6.1.0
with:
distribution: temurin
java-version: "17"
Expand All @@ -227,7 +227,7 @@ jobs:
- uses: dtolnay/rust-toolchain@4360b52568e2003a75bf9bc1d59f33a8e3fc893c # stable
with:
targets: aarch64-linux-android
- uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2
- uses: Swatinem/rust-cache@d1527c8f67ef9af357290475d4af4b0fab8f12e0 # v2
with:
workspaces: apps/clients/tauri/src-tauri -> target
- run: npm ci
Expand All @@ -243,14 +243,14 @@ jobs:
timeout-minutes: 60
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0
with:
node-version: "22.23.2"
cache: npm
- uses: dtolnay/rust-toolchain@4360b52568e2003a75bf9bc1d59f33a8e3fc893c # stable
with:
targets: aarch64-apple-ios,aarch64-apple-ios-sim
- uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2
- uses: Swatinem/rust-cache@d1527c8f67ef9af357290475d4af4b0fab8f12e0 # v2
with:
workspaces: apps/clients/tauri/src-tauri -> target
- run: npm ci
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/package-control-plane.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
retention_days: ${{ steps.context.outputs.retention_days }}
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"
- name: Resolve validated package context
Expand Down Expand Up @@ -71,7 +71,7 @@ jobs:
timeout-minutes: 45
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"
- name: Materialize build version
Expand All @@ -90,7 +90,7 @@ jobs:
scripts/release/archive_control_plane_image.sh \
"$LOCAL_IMAGE" release-assets/termflow-control-plane.tar
scripts/verify-control-plane-image.sh "$LOCAL_IMAGE"
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
- uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
with:
name: ${{ needs.prepare.outputs.artifact_name }}
path: release-assets/termflow-control-plane.tar
Expand All @@ -109,7 +109,7 @@ jobs:
id-token: write
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"
- name: Materialize build version
Expand All @@ -118,7 +118,7 @@ jobs:
run: python scripts/release/prepare_version.py
- uses: docker/setup-qemu-action@99012661954931238ded8c8b007157a8430204e1 # v4
- uses: docker/setup-buildx-action@594f3bf4285d9ea8dc53c9a0c9c4092420091003 # v4
- uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
- uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
with:
registry: ghcr.io
username: ${{ github.actor }}
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/package-node.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:
docker_retention_days: ${{ steps.context.outputs.docker_retention_days }}
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"
- name: Resolve validated package context
Expand Down Expand Up @@ -79,7 +79,7 @@ jobs:
timeout-minutes: 30
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"
- name: Materialize build version
Expand All @@ -106,7 +106,7 @@ jobs:
--repository "$GITHUB_REPOSITORY"
(cd release-assets && sha256sum termflow-node-linux-x86_64.tar.gz > SHA256SUMS)
scripts/release/verify_node_bundle.sh "$PACKAGE_TAG"
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
- uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
with:
name: ${{ needs.prepare.outputs.artifact_name }}
path: |
Expand All @@ -123,7 +123,7 @@ jobs:
timeout-minutes: 45
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"
- name: Materialize build version
Expand All @@ -141,7 +141,7 @@ jobs:
scripts/release/archive_node_image.sh \
"$LOCAL_IMAGE" release-assets/termflow-node.tar
scripts/verify-node-image.sh "$LOCAL_IMAGE"
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
- uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
with:
name: ${{ needs.prepare.outputs.docker_artifact_name }}
path: release-assets/termflow-node.tar
Expand All @@ -160,7 +160,7 @@ jobs:
id-token: write
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"
- name: Materialize build version
Expand All @@ -169,7 +169,7 @@ jobs:
run: python scripts/release/prepare_version.py
- uses: docker/setup-qemu-action@99012661954931238ded8c8b007157a8430204e1 # v4
- uses: docker/setup-buildx-action@594f3bf4285d9ea8dc53c9a0c9c4092420091003 # v4
- uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
- uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
with:
registry: ghcr.io
username: ${{ github.actor }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
is_prerelease: ${{ steps.version.outputs.is_prerelease }}
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
- uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
with:
python-version: "3.12"
- name: Resolve release tag
Expand Down Expand Up @@ -76,7 +76,7 @@ jobs:
id-token: write
steps:
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
- uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8
with:
path: release-assets
merge-multiple: true
Expand Down
Loading
Loading