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
312 changes: 0 additions & 312 deletions .rwx/build-tasks.mjs

This file was deleted.

43 changes: 28 additions & 15 deletions .rwx/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@ on:
qualified-base-ref: origin/${{ event.github.pull_request.pull_request.base.ref }}
unqualified-base-ref: ${{ event.github.pull_request.pull_request.base.ref }}
branch: ${{ event.git.branch }}
publish-leaves: false
publish: false
sha: ${{ event.git.sha }}
push:
if: ${{ event.git.branch == 'main' }}
init:
qualified-base-ref: ${{ event.github.push.before }}
unqualified-base-ref: ${{ event.github.push.before }}
branch: ${{ event.git.branch }}
publish-leaves: true
publish: true
sha: ${{ event.git.sha }}

concurrency-pools:
Expand All @@ -22,17 +22,14 @@ concurrency-pools:
capacity: 1
on-overflow: cancel-running

tool-cache:
vault: rwx-packages-main

base:
image: ubuntu:24.04
config: rwx/base 1.0.0

tasks:
- key: system-packages
run: |
sudo apt-get update
sudo apt-get install gettext-base jq zip
sudo apt-get clean

- key: checkout
call: git/clone 2.0.3
with:
Expand Down Expand Up @@ -89,16 +86,32 @@ tasks:
- "**/README.md"
- "**/rwx-package.yml"

- key: build-leaf-runs
use: npm-install
- key: detect-changes
use: [checkout]
run: |
mkdir build
git fetch origin $UNQUALIFIED_BASE_REF
git diff --name-only $QUALIFIED_BASE_REF $SHA > $GIT_DIFF_FILE
node .rwx/build-tasks.mjs
changed_files=$(git diff --name-only $QUALIFIED_BASE_REF $SHA)

packages="[]"
for pkg_file in $(ls */*/rwx-package.yml | sort); do
dir=$(dirname "$pkg_file")
if echo "$changed_files" | grep -q "^${dir}/"; then
packages=$(echo "$packages" | jq -c --arg d "$dir" '. + [{"directory": $d}]')
fi
done

echo "Changed packages: $packages"
echo -n "$packages" > $RWX_VALUES/packages
env:
QUALIFIED_BASE_REF: ${{ init.qualified-base-ref }}
UNQUALIFIED_BASE_REF: ${{ init.unqualified-base-ref }}
BUILD_DIR: build
GIT_DIFF_FILE: build/git-diff.txt
SHA: ${{ init.sha }}

- key: packages
call: ${{ run.dir }}/package.yml
parallel:
values: ${{ tasks.detect-changes.values.packages }}
init:
directory: ${{ parallel.directory }}
sha: ${{ init.sha }}
publish: ${{ init.publish }}
Loading