mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-17 23:18:27 +02:00
Merge pull request #4596 from vector-im/steve/add_setup_project_script
Tools: Add a script to initialize quickly and easily the project
This commit is contained in:
@@ -25,7 +25,7 @@ Changes to be released in next version
|
||||
*
|
||||
|
||||
🧱 Build
|
||||
*
|
||||
* Add a script to initialize quickly and easily the project.
|
||||
|
||||
Others
|
||||
* Docs: Add reference to AppIdentifiers.xcconfig in INSTALL.md
|
||||
|
||||
@@ -125,6 +125,14 @@ $ open Riot.xcworkspace
|
||||
**Note**: If you have multiple Xcode versions installed don't forget to use the right version of Command Line Tools when you are building the app. To check the Command Line Tools version go to `Xcode > Preferences > Locations > Command Line Tools` and check that the displayed version match your Xcode version.
|
||||
|
||||
|
||||
### Generate the project in one line without effort
|
||||
|
||||
If you want to generate the project easily and quickly, there is a local script called `setup_project.sh` that creates the `xcodeproj` and `xcworkspace` with all source files and dependencies with commands described before. It automatically selects the right dependencies based on your local Git branch or your Podfile local modifications. All you have to do is to go in the project root folder and run the script:
|
||||
|
||||
```
|
||||
$ ./setup_project.sh
|
||||
```
|
||||
|
||||
## Generate IPA
|
||||
|
||||
To build the IPA we are currently using [fastlane](https://fastlane.tools/).
|
||||
|
||||
30
setup_project.sh
Executable file
30
setup_project.sh
Executable file
@@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Use this script to setup the Xcode project
|
||||
|
||||
# Remove existing project file if any
|
||||
rm -r Riot.xcodeproj
|
||||
|
||||
# Create the xcodeproj with all project source files
|
||||
xcodegen
|
||||
|
||||
# Use appropriated dependencies
|
||||
|
||||
# Check if Podfile changed in unstaged
|
||||
git diff --exit-code --quiet --name-only Podfile
|
||||
PODFILE_HAS_CHANGED_UNSTAGED=$?
|
||||
# Check if Podfile changed in staged
|
||||
git diff --staged --exit-code --quiet --name-only Podfile
|
||||
PODFILE_HAS_CHANGED_STAGED=$?
|
||||
|
||||
# If Podfile has changed locally do not modify it
|
||||
# otherwise use the appropriated dependencies according to the current branch
|
||||
if [[ "$PODFILE_HAS_CHANGED_UNSTAGED" -eq 1 || "$PODFILE_HAS_CHANGED_STAGED" -eq 1 ]]; then
|
||||
echo "Podfile has been changed locally do not modify it"
|
||||
else
|
||||
echo "Podfile has not been changed locally, use appropriated dependencies according to the current branch"
|
||||
bundle exec fastlane point_dependencies_to_same_feature
|
||||
fi
|
||||
|
||||
# Create the xcworkspace with all project dependencies
|
||||
pod install
|
||||
Reference in New Issue
Block a user