Replace changed-files GH Action (#295)
This commit is contained in:
parent
54fb135a3c
commit
b7d5736995
2 changed files with 33 additions and 7 deletions
38
.github/workflows/check-toolkits.yml
vendored
38
.github/workflows/check-toolkits.yml
vendored
|
|
@ -21,10 +21,36 @@ jobs:
|
||||||
|
|
||||||
- name: Get changed files
|
- name: Get changed files
|
||||||
id: changed-files
|
id: changed-files
|
||||||
uses: tj-actions/changed-files@v45
|
run: |
|
||||||
with:
|
echo "Determining the base commit from the event payload..."
|
||||||
files: |
|
# Attempt to retrieve the 'before' commit from the event JSON.
|
||||||
toolkits/**
|
if [ -f "$GITHUB_EVENT_PATH" ]; then
|
||||||
|
BASE=$(jq -r '.before' "$GITHUB_EVENT_PATH")
|
||||||
|
fi
|
||||||
|
# If not available or if it's the all-zero SHA (i.e. first commit), fallback to HEAD^.
|
||||||
|
if [ -z "$BASE" ] || [ "$BASE" = "0000000000000000000000000000000000000000" ]; then
|
||||||
|
BASE=HEAD^
|
||||||
|
fi
|
||||||
|
echo "Using commit range: $BASE...$GITHUB_SHA"
|
||||||
|
|
||||||
|
# List all files changed between BASE and the current commit.
|
||||||
|
CHANGED_FILES=$(git diff --name-only "$BASE" "$GITHUB_SHA")
|
||||||
|
echo "Changed files (raw):"
|
||||||
|
echo "$CHANGED_FILES"
|
||||||
|
|
||||||
|
# Filter only files under the toolkits/ directory.
|
||||||
|
matched=""
|
||||||
|
for file in $CHANGED_FILES; do
|
||||||
|
if [[ "$file" == toolkits/* ]]; then
|
||||||
|
matched="$matched$file "
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
# Trim any extra whitespace.
|
||||||
|
matched=$(echo "$matched" | xargs)
|
||||||
|
echo "Matched changed files: $matched"
|
||||||
|
|
||||||
|
# Make the list available to subsequent steps as an output.
|
||||||
|
echo "all_changed_files=$matched" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: List all added files
|
- name: List all added files
|
||||||
env:
|
env:
|
||||||
|
|
@ -34,8 +60,8 @@ jobs:
|
||||||
dirs=$(echo "${CHANGED_FILES}" | tr ' ' '\n' | grep "toolkits/" | cut -d'/' -f2 | sort -u)
|
dirs=$(echo "${CHANGED_FILES}" | tr ' ' '\n' | grep "toolkits/" | cut -d'/' -f2 | sort -u)
|
||||||
if [ -n "$dirs" ]; then
|
if [ -n "$dirs" ]; then
|
||||||
echo "$dirs" | while read -r dir; do
|
echo "$dirs" | while read -r dir; do
|
||||||
echo "$dir"
|
echo "Publishing toolkit: $dir"
|
||||||
gh workflow -R ArcadeAI/arcade-ai run "Publish Toolkit" -f toolkit=${dir}
|
gh workflow -R ArcadeAI/arcade-ai run "Publish Toolkit" -f toolkit="${dir}"
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
echo "No toolkit directories were changed"
|
echo "No toolkit directories were changed"
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
[tool.poetry]
|
[tool.poetry]
|
||||||
name = "arcade_notion"
|
name = "arcade_notion"
|
||||||
version = "0.0.1"
|
version = "0.1.0"
|
||||||
description = "LLM tools for essential Notion interactions such as creating, updating, retrieving, and searching pages."
|
description = "LLM tools for essential Notion interactions such as creating, updating, retrieving, and searching pages."
|
||||||
authors = ["ArcadeAI <dev@arcade.dev>"]
|
authors = ["ArcadeAI <dev@arcade.dev>"]
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue