@@ -17,7 +17,10 @@ export GIMME_CGO_ENABLED=true
17
17
18
18
export NVM_DIR=" $HOME /.nvm"
19
19
export RVM_DIR=" $HOME /.rvm"
20
+
21
+ # Swift configuration
20
22
export SWIFTENV_ROOT=" ${SWIFTENV_ROOT:- ${HOME} / .swiftenv} "
23
+ DEFAULT_SWIFT_VERSION=" 5.2"
21
24
22
25
# Pipenv configuration
23
26
export PIPENV_RUNTIME=2.7
@@ -176,8 +179,7 @@ install_dependencies() {
176
179
local defaultYarnVersion=$3
177
180
local defaultPHPVersion=$4
178
181
local installGoVersion=$5
179
- local defaultSwiftVersion=$6
180
- local defaultPythonVersion=$7
182
+ local defaultPythonVersion=$6
181
183
182
184
# Python Version
183
185
if [ -f runtime.txt ]
@@ -408,33 +410,38 @@ install_dependencies() {
408
410
fi
409
411
410
412
# Swift Version
411
- : ${SWIFT_VERSION=" $defaultSwiftVersion " }
412
413
if [ -f .swift-version ]
413
414
then
414
415
SWIFT_VERSION=$( cat .swift-version)
415
416
echo " Attempting Swift version '$SWIFT_VERSION ' from .swift-version"
416
417
fi
417
418
418
- swiftenv global ${SWIFT_VERSION} > /dev/null 2>&1
419
- export CUSTOM_SWIFT=$?
420
-
421
- if [ -d $NETLIFY_CACHE_DIR /swift_version/$SWIFT_VERSION ]
419
+ # If Package.swift is present and no Swift version is set, use a default
420
+ if [ -f Package.swift ]
422
421
then
423
- echo " Started restoring cached Swift version"
424
- rm -rf $SWIFTENV_ROOT /versions/$SWIFT_VERSION
425
- cp -p -r $NETLIFY_CACHE_DIR /swift_version/${SWIFT_VERSION} $SWIFTENV_ROOT /versions/
426
- swiftenv rehash
427
- echo " Finished restoring cached Swift version"
422
+ : ${SWIFT_VERSION=" $DEFAULT_SWIFT_VERSION " }
428
423
fi
429
424
430
- # swiftenv expects the following environment variables to refer to
431
- # swiftenv internals
432
- if PLATFORM= URL= VERSION= swiftenv install -s $SWIFT_VERSION
425
+ if [ -n " $SWIFT_VERSION " ]
433
426
then
434
- echo " Using Swift version $SWIFT_VERSION "
435
- else
436
- echo " Failed to install Swift version '$SWIFT_VERSION '"
437
- exit 1
427
+ if [ -d $NETLIFY_CACHE_DIR /swift_version/$SWIFT_VERSION ]
428
+ then
429
+ echo " Started restoring cached Swift version"
430
+ mkdir -p " $SWIFTENV_ROOT /versions"
431
+ cp -p -r " $NETLIFY_CACHE_DIR /swift_version/$SWIFT_VERSION /" " $SWIFTENV_ROOT /versions/"
432
+ swiftenv rehash
433
+ echo " Finished restoring cached Swift version"
434
+ fi
435
+
436
+ # swiftenv expects the following environment variables to refer to
437
+ # swiftenv internals
438
+ if PLATFORM=' ' URL=' ' VERSION=' ' swiftenv install -s $SWIFT_VERSION
439
+ then
440
+ echo " Using Swift version $SWIFT_VERSION "
441
+ else
442
+ echo " Failed to install Swift version '$SWIFT_VERSION '"
443
+ exit 1
444
+ fi
438
445
fi
439
446
440
447
# SPM dependencies
@@ -700,13 +707,13 @@ cache_artifacts() {
700
707
fi
701
708
702
709
# cache the version of Swift installed
703
- if [[ " $CUSTOM_SWIFT " -ne " 0 " ] ]
710
+ if [ -n " $SWIFT_VERSION " ] && [ -d " $SWIFTENV_ROOT /versions/ $SWIFT_VERSION " ]
704
711
then
705
712
if ! [ -d $NETLIFY_CACHE_DIR /swift_version/$SWIFT_VERSION ]
706
713
then
707
714
rm -rf $NETLIFY_CACHE_DIR /swift_version
708
715
mkdir $NETLIFY_CACHE_DIR /swift_version
709
- mv $SWIFTENV_ROOT /versions/$SWIFT_VERSION $NETLIFY_CACHE_DIR /swift_version/
716
+ mv " $SWIFTENV_ROOT /versions/$SWIFT_VERSION " $NETLIFY_CACHE_DIR /swift_version/
710
717
echo " Cached Swift version $SWIFT_VERSION "
711
718
fi
712
719
else
0 commit comments