Skip to content

Commit 8c2e889

Browse files
committed
validate samples with independent runs
1 parent 561efe2 commit 8c2e889

File tree

3 files changed

+44
-39
lines changed

3 files changed

+44
-39
lines changed

.github/scripts/validate_sample.sh

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
#!/bin/bash
2+
3+
# shellcheck disable=SC2034
4+
declare -r GREEN='\033[0;32m'
5+
declare -r BOLD='\033[1m'
6+
declare -r RESET='\033[0m'
7+
8+
declare -r sampleDir="$1"
9+
declare -r CI_VALIDATE_SCRIPT='ci-validate.sh'
10+
11+
echo ""
12+
echo ""
13+
echo "========================================================================"
14+
printf "Validate sample '${BOLD}%s${RESET}' using: " "$sampleDir"
15+
cd "$sampleDir" || exit
16+
if [[ $(find . -name ${CI_VALIDATE_SCRIPT} -maxdepth 1) ]]; then
17+
echo -e "Custom ${BOLD}${CI_VALIDATE_SCRIPT}${RESET} script..."
18+
./${CI_VALIDATE_SCRIPT} || exit
19+
elif [[ $(find . -name 'build.gradle*' -maxdepth 1) ]]; then
20+
echo -e "${BOLD}Gradle${RESET} build..."
21+
./gradlew build || ./gradlew build --info # re-run to get better failure output
22+
else
23+
echo -e "${BOLD}SwiftPM${RESET} build..."
24+
swift build || exit
25+
fi
26+
27+
echo -e "Validated sample '${BOLD}${sampleDir}${RESET}': ${BOLD}passed${RESET}."
28+
cd - || exit
29+
30+
echo
31+
printf "Done validating sample: ${sampleDir}"
32+
echo -e "${GREEN}done${RESET}."

.github/scripts/validate_samples.sh

Lines changed: 0 additions & 37 deletions
This file was deleted.

.github/workflows/pull_request.yml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,18 @@ jobs:
8282
- uses: actions/checkout@v4
8383
- name: Prepare CI Environment
8484
uses: ./.github/actions/prepare_env
85-
- name: Verify Samples (All)
86-
run: .github/scripts/validate_samples.sh
85+
- name: "Verify Sample: JavaDependencySampleApp"
86+
run: .github/scripts/validate_sample.sh Samples/JavaDependencySampleApp
87+
- name: "Verify Sample: JavaKitSampleApp"
88+
run: .github/scripts/validate_sample.sh Samples/JavaKitSampleApp
89+
- name: "Verify Sample: JavaProbablyPrime"
90+
run: .github/scripts/validate_sample.sh Samples/JavaProbablyPrime
91+
- name: "Verify Sample: JavaSieve"
92+
run: .github/scripts/validate_sample.sh Samples/JavaSieve
93+
- name: "Verify Sample: SwiftAndJavaJarSampleLib"
94+
run: .github/scripts/validate_sample.sh Samples/SwiftAndJavaJarSampleLib
95+
- name: "Verify Sample: SwiftKitSampleApp"
96+
run: .github/scripts/validate_sample.sh Samples/SwiftKitSampleApp
8797
# TODO: Benchmark compile crashes in CI, enable when nightly toolchains in better shape.
8898
# - name: Build (Swift) Benchmarks
8999
# run: "swift package --package-path Benchmarks/ benchmark list"

0 commit comments

Comments
 (0)