Skip to content

Commit

Permalink
Fix sandbox.tt variable comparison usage
Browse files Browse the repository at this point in the history
When an uninitialized variable is given to `-n`, it is treated as not
NULL. The variable must be quoted for correct results.
`[ -n "$SOLIDUS_BRANCH" ]`

It is also recommended for variable comparisons in general as it can
produce incorrect results for `! -z`.

References:
- https://tldp.org/LDP/abs/html/comparison-ops.html
- https://tldp.org/LDP/abs/html/comparison-ops.html#STRTEST

This meant that before, when running this file with no SOLIDUS_BRANCH
variable, $BRANCH would end up NULL and the branch in the Gemfile would
be an empty string. This caused an error, whereas instead, it should
have defaulted to `master`.

Error:
```
fatal: Needed a single revision
Git error: command `git rev-parse --verify ''` in directory /Users/ryanwoods/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/cache/bundler/git/solidus-169f1ecb1aee2122950e6d586daf2410f62df66e has
failed.
Revision  does not exist in the repository https://github.com/solidusio/solidus.git. Maybe you misspelled it?
If this error persists you could try removing the cache directory
'/Users/ryanwoods/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/cache/bundler/git/solidus-169f1ecb1aee2122950e6d586daf2410f62df66e'

The git source https://github.com/solidusio/solidus.git is not yet checked out. Please run `bundle install` before trying to start your application
```
  • Loading branch information
RyanofWoods committed Nov 9, 2022
1 parent 6270b0b commit ef20862
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions lib/solidus_dev_support/templates/extension/bin/sandbox.tt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/usr/bin/env bash

set -e
if [ ! -z $DEBUG ]
if [ ! -z "$DEBUG" ]
then
set -x
fi
Expand All @@ -28,7 +28,7 @@ sqlite3|sqlite)
esac
echo "~~> Using $RAILSDB as the database engine"

if [ -n $SOLIDUS_BRANCH ]
if [ -n "$SOLIDUS_BRANCH" ]
then
BRANCH=$SOLIDUS_BRANCH
else
Expand All @@ -37,7 +37,7 @@ else
fi
echo "~~> Using branch $BRANCH of solidus"

if [ -z $SOLIDUS_FRONTEND ]
if [ -z "$SOLIDUS_FRONTEND" ]
then
echo "~~> Use 'export SOLIDUS_FRONTEND=[solidus_frontend|solidus_starter_frontend]' to control the Solidus frontend"
SOLIDUS_FRONTEND="solidus_frontend"
Expand Down

0 comments on commit ef20862

Please sign in to comment.