Skip to content
Open
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
18 changes: 12 additions & 6 deletions scripts/bash/spm.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
#!/usr/bin/env bash -il

[ -f "${PWD}/Package.swift" ]
PACKAGE_EXISTS="$?"
ORIGINAL_DIR="${PWD}"
HAS_EXISTING_PACKAGE=0
[ -f "${PWD}/Package.swift" ] && HAS_EXISTING_PACKAGE=1
GIT_ROOT=$(git rev-parse --show-toplevel 2>/dev/null)
SCRIPT_PATH=$(realpath --relative-to="$GIT_ROOT" "$0" 2>/dev/null || realpath "$0")
SUBCOMMAND="$1"
Expand Down Expand Up @@ -41,19 +42,23 @@ EOF
a11y_scan() {
# Ensure Package.swift is removed on exit (acts like a finally block)
cleanup() {
if [ $PACKAGE_EXISTS -eq 0 ]; then
if [ $HAS_EXISTING_PACKAGE -eq 1 ]; then
return
fi
rm -f -- "${PWD}/Package.swift" "${PWD}/Package.resolved"
if [ -n "$WORK_DIR" ] && [ -d "$WORK_DIR" ]; then
rm -rf -- "$WORK_DIR"
fi
}
trap cleanup EXIT

setup() {
if [ $PACKAGE_EXISTS -eq 0 ]; then
if [ $HAS_EXISTING_PACKAGE -eq 1 ]; then
WORK_DIR="$ORIGINAL_DIR"
return
fi

cat > Package.swift <<EOF
WORK_DIR=$(mktemp -d)
cat > "$WORK_DIR/Package.swift" <<EOF
// swift-tools-version: 5.9
import PackageDescription

Expand All @@ -71,6 +76,7 @@ EOF
if [[ -z "$EXTRA_ARGS" ]]; then
EXTRA_ARGS="--include **/*.swift --include **/*.xib --include **/*.storyboard"
fi
cd "$WORK_DIR"
env -i HOME="$HOME" \
XCODE_VERSION_ACTUAL="$XCODE_VERSION_ACTUAL"\
BROWSERSTACK_USERNAME="$BROWSERSTACK_USERNAME"\
Expand Down
18 changes: 12 additions & 6 deletions scripts/fish/spm.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,9 @@ export BROWSERSTACK_USERNAME=$($fish_bin -lic 'echo $BROWSERSTACK_USERNAME' | ta
export BROWSERSTACK_ACCESS_KEY=$($fish_bin -lic 'echo $BROWSERSTACK_ACCESS_KEY' | tail -n 1)

# Don't change anything after this, same as the bash equivalent
[ -f "${PWD}/Package.swift" ]
PACKAGE_EXISTS="$?"
ORIGINAL_DIR="${PWD}"
HAS_EXISTING_PACKAGE=0
[ -f "${PWD}/Package.swift" ] && HAS_EXISTING_PACKAGE=1
GIT_ROOT=$(git rev-parse --show-toplevel 2>/dev/null)
SCRIPT_PATH=$(realpath --relative-to="$GIT_ROOT" "$0" 2>/dev/null || realpath "$0")
SUBCOMMAND="$1"
Expand Down Expand Up @@ -54,19 +55,23 @@ EOF
a11y_scan() {
# Ensure Package.swift is removed on exit (acts like a finally block)
cleanup() {
if [ $PACKAGE_EXISTS -eq 0 ]; then
if [ $HAS_EXISTING_PACKAGE -eq 1 ]; then
return
fi
rm -f -- "${PWD}/Package.swift" "${PWD}/Package.resolved"
if [ -n "$WORK_DIR" ] && [ -d "$WORK_DIR" ]; then
rm -rf -- "$WORK_DIR"
fi
}
trap cleanup EXIT

setup() {
if [ $PACKAGE_EXISTS -eq 0 ]; then
if [ $HAS_EXISTING_PACKAGE -eq 1 ]; then
WORK_DIR="$ORIGINAL_DIR"
return
fi

cat > Package.swift <<EOF
WORK_DIR=$(mktemp -d)
cat > "$WORK_DIR/Package.swift" <<EOF
// swift-tools-version: 5.9
import PackageDescription

Expand All @@ -84,6 +89,7 @@ EOF
if [[ -z "$EXTRA_ARGS" ]]; then
EXTRA_ARGS="--include **/*.swift --include **/*.xib --include **/*.storyboard"
fi
cd "$WORK_DIR"
env -i HOME="$HOME" \
XCODE_VERSION_ACTUAL="$XCODE_VERSION_ACTUAL"\
BROWSERSTACK_USERNAME="$BROWSERSTACK_USERNAME"\
Expand Down
18 changes: 12 additions & 6 deletions scripts/zsh/spm.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@ export BROWSERSTACK_USERNAME=$($zsh_bin -lic 'echo $BROWSERSTACK_USERNAME' | tai
export BROWSERSTACK_ACCESS_KEY=$($zsh_bin -lic 'echo $BROWSERSTACK_ACCESS_KEY' | tail -n 1)

# Don't change anything after this, same as the bash equivalent
[ -f "${PWD}/Package.swift" ]
PACKAGE_EXISTS="$?"
ORIGINAL_DIR="${PWD}"
HAS_EXISTING_PACKAGE=0
[ -f "${PWD}/Package.swift" ] && HAS_EXISTING_PACKAGE=1
GIT_ROOT=$(git rev-parse --show-toplevel 2>/dev/null)
SCRIPT_PATH=$(realpath --relative-to="$GIT_ROOT" "$0" 2>/dev/null || realpath "$0")
SUBCOMMAND="$1"
Expand Down Expand Up @@ -53,19 +54,23 @@ EOF
a11y_scan() {
# Ensure Package.swift is removed on exit (acts like a finally block)
cleanup() {
if [ $PACKAGE_EXISTS -eq 0 ]; then
if [ $HAS_EXISTING_PACKAGE -eq 1 ]; then
return
fi
rm -f -- "${PWD}/Package.swift" "${PWD}/Package.resolved"
if [ -n "$WORK_DIR" ] && [ -d "$WORK_DIR" ]; then
rm -rf -- "$WORK_DIR"
fi
}
trap cleanup EXIT

setup() {
if [ $PACKAGE_EXISTS -eq 0 ]; then
if [ $HAS_EXISTING_PACKAGE -eq 1 ]; then
WORK_DIR="$ORIGINAL_DIR"
return
fi

cat > Package.swift <<EOF
WORK_DIR=$(mktemp -d)
cat > "$WORK_DIR/Package.swift" <<EOF
// swift-tools-version: 5.9
import PackageDescription

Expand All @@ -83,6 +88,7 @@ EOF
if [[ -z "$EXTRA_ARGS" ]]; then
EXTRA_ARGS="--include **/*.swift --include **/*.xib --include **/*.storyboard"
fi
cd "$WORK_DIR"
env -i HOME="$HOME" \
XCODE_VERSION_ACTUAL="$XCODE_VERSION_ACTUAL"\
BROWSERSTACK_USERNAME="$BROWSERSTACK_USERNAME"\
Expand Down
Loading