forked from nachaphon-phontree/UpdatesAPIDemo
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup
More file actions
executable file
·115 lines (95 loc) · 3.72 KB
/
setup
File metadata and controls
executable file
·115 lines (95 loc) · 3.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#!/usr/bin/env bash
#
# Setup Script
#
# Runs all the needed commands to set up a developer's system to run this app.
# Customize this as your app grows.
# Check for macOS
if [[ ! "$OSTYPE" =~ ^darwin ]]; then
echo "This script only works on macOS"
exit 1
fi
# Check for Homebrew
command -v brew >/dev/null 2>&1 || {
echo "This setup script requires Homebrew, but it was not found on your system."
echo "Install it using the instructions at https://brew.sh/"
exit 1
}
# Ensure CocoaPods is installed
command -v pod >/dev/null 2>&1 || {
echo "This app requires CocoaPods to run, but it was not found on your system."
echo "Install it using the instructions at https://guides.cocoapods.org/using/getting-started.html#installation"
exit 1
}
# Ensure Node.js is installed
command -v npm >/dev/null 2>&1 || {
echo "This app requires Node.js to run, but it was not found on your system."
echo "Installing node with brew..."
brew install node
}
# Ensure Watchman is installed
command -v watchman >/dev/null 2>&1 || {
echo "This app requires Watchman to watch file changes, but it was not found on your system."
echo "Installing watchman with brew..."
brew install watchman
}
# Ensure Yarn is installed
command -v yarn >/dev/null 2>&1 || {
echo "This app requires Yarn package manager, but it was not found on your system."
echo "Installing yarn with brew..."
brew install yarn
}
# Ensure react-native-cli is installed
command -v react-native >/dev/null 2>&1 || {
echo "This app requires react-native-cli, but it was not found on your system."
echo "Installing react-native-cli globally with yarn..."
yarn global add react-native-cli
}
# IF NEEDED: Ensure appleSimUtils is installed
# command -v applesimutils >/dev/null 2>&1 || {
# echo "This app requires appleSimUtils to run end to end tests, but it was not found on your system."
# echo "Installing applesimutils with brew..."
# brew tap wix/brew
# brew install applesimutils
# }
# IF NEEDED: Ensure maestro is installed
# command -v maestro >/dev/null 2>&1 || {
# echo "This app requires maestro to run end to end tests, but it was not found on your system."
# echo "Installing maestro..."
# curl -Ls "https://get.maestro.mobile.dev" | bash
# echo "Maestro requires the Facebook IDB tool to run Flows on the iOS Simulator"
# brew tap facebook/fb
# brew install facebook/fb/idb-companion
# }
# IF NEEDED: Ensure phraseapp is installed
# command -v phraseapp >/dev/null 2>&1 || {
# echo "This app requires phraseapp to run localizations, but it was not found on your system."
# echo "Installing phraseapp with brew..."
# brew tap phrase/brewed
# brew install phraseapp
# }
echo "----------------------------------------------------------"
echo "Installing NPM Packages with Yarn"
echo "----------------------------------------------------------"
yarn || { echo "NPM Packages could not be installed!"; exit 1; };
echo "----------------------------------------------------------"
echo "Installing CocoaPods"
echo "----------------------------------------------------------"
cd ios/ && {
pod install || { echo "CocoaPods could not be installed!"; exit 1; };
cd -
}
# IF NEEDED
# echo "----------------------------------------------------------"
# echo "Running localizations"
# echo "----------------------------------------------------------"
# bin/localize
echo "----------------------------------------------------------"
echo "Running tests to verify setup is complete"
echo "----------------------------------------------------------"
yarn test || { exit 1; }
echo "----------------------------------------------------------"
echo "Setup complete!"
echo "----------------------------------------------------------"
echo "To run the app on iOS:"
echo "react-native run-ios"