Unity build pipeline for iOS
Project description
Github Project URL:
"https://github.com/MadCoder39/UnityBuildPipelineiOS"
PyPI Project URL:
https://pypi.org/project/UnityBuildPipeline/
Description
A command-line application that will help you building Unity builds for iOS. Drink coffee, relax, and let this little yet mighty app do everything for you.
Requirements
- Python 3.x Installation can be checked by command "python3 --version"
- YAML
pip3 install pyyaml - Ruby & Bundler. Ruby is pre-installed on Macs by default. Bundler can be installed using
gem install bundlercommand - Fastlane. It's recommended to install it using homebrew, but doesn't really matter. Instructions here: https://docs.fastlane.tools/
Setup/Update
pip3 install --upgrade UnityBuildPipeline
Uninstall
pip3 uninstall UnityBuildPipeline
Runall command
This command is taking care of everything, while you can sit back and enjoy your :coffee: It has lots of arguments because it combines all other commands. Most of them are optional.
Best way to use it is pipeline runall beta, where 'beta' is passed to fastlane command.
pipeline runall -h
usage: pipeline runall [-h] [-f] [--allow-debugging] [--dev] [options [options ...]]
positional arguments:
options fastlane options
optional arguments:
-h, --help show this help message and exit
-f, --force
--allow-debugging Export with AllowDebugging option
--dev Export development project
Init command
Command is required in order to prepare the Unity project to be used by UnityBuildPipeline
pipeline init -h
usage: pipeline init [-h] [-f]
optional arguments:
-h, --help show this help message and exit
-f, --force
Export command
Command is doing the exporting procedure (from Unity to Xcode)
pipeline export -h
usage: pipeline export [-h] [--allow-debugging] [--dev]
optional arguments:
-h, --help show this help message and exit
--allow-debugging Export with AllowDebugging option
--dev Export development project
Replace Strategy
- Project back-up
- Exporting new project with BuildOptions.None
- Migrating the config file from the back-up to the new project
- Copying Fastlane pipeline from the back-up to the new project
Append Strategy
- Project back-up
- Exporting project with BuildOptions.AcceptExternalModificationsToPlayer
Fastlane command
Command launches fastlane
pipeline fastlane -h
usage: pipeline fastlane [-h] [options [options ...]]
positional arguments:
options fastlane options
Here options will be added to the end of launch command
For example: pipeline fastlane x y z will launch fastlane x y z in Xcode project
Run command
Command for running user-made custom commands. It's needed if you have some very specific needs for your project. In most of cases you won't need to use it.
After the project initialization, file .unity_build_pipeline/config.yml is being created in the root folder.
There is commands: {} section, where custom commands could be added
For example:
commands:
my-cool-command: "echo 1"
my-second-cool-command: "open https://google.com"
There are 2 commands defined in this example. Running pipeline run my-cool-command will output 1 in console. pipeline run my-cool-command will open Google main page.
It's also possible to define more useful commands:
commands:
run-fastlane-with-kek:
command: fastlane kek {0}
cwd: '{xcode_build_path_absolute}'
This is a command for launching fastlane.
Launching pipeline run run-fastlane-with-kek build will execute fastlane kek build
As we can see, command run can accept additional arguments.
There are 2 types of arguments:
- arguments, that can be added via console. Instead of markers
{0},{1},{2}etc, the corresponding parameters from the console will be passed. - Named arguments. This is a hard-coded list of arguments
{
'cwd': os.getcwd(), # absolute path to current directory
'unity_version': project.unity.version, # Current unity version in project
'unity_path': project.unity.path, # path to unity
'project_path': project.path, # path to project
'xcode_build_path': project.get_export_path(Project.BUILD_TYPE_XCODE, absolute=False), # relative path to xcode build
'xcode_build_path_absolute': project.get_export_path(Project.BUILD_TYPE_XCODE, absolute=True) # absolute path to xcode build
}
Recommendations
- Running such command will help avoiding retyping your credentials every time
fastlane fastlane-credentials add --username <your email> - Also this command will help to avoid retyping
export FASTLANE_USER=<your appleID> - In case during archive build Xcode throws error such as: "Please provide an auth token with USYM_UPLOAD_AUTH_TOKEN environment variable". It happens when using Unity Services in your game. Try using this command
export USYM_UPLOAD_AUTH_TOKEN="whatever"
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file UnityBuildPipeline-0.0.4.tar.gz.
File metadata
- Download URL: UnityBuildPipeline-0.0.4.tar.gz
- Upload date:
- Size: 15.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
05f399e6a768781cc2a19dad16e50cd4f8601e6384db0fe3d602d683d3309e9e
|
|
| MD5 |
4e6c69fb1d8daf0a7a314ac4a1898d29
|
|
| BLAKE2b-256 |
e18c04f1223ff5a7007ea13402c95c886d2c1e674dcfd7dde17c9b2d3575b9ab
|
File details
Details for the file UnityBuildPipeline-0.0.4-py3-none-any.whl.
File metadata
- Download URL: UnityBuildPipeline-0.0.4-py3-none-any.whl
- Upload date:
- Size: 23.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c73178d172b9da305e1234e583c9ef02860cb1e79d6c7624b92601062cab5f64
|
|
| MD5 |
eb3c25b0b77a9d4c7abef84d52700c02
|
|
| BLAKE2b-256 |
b80d7aa23672def33096cd86f1f1234d99735c3c09420327a74f6d1b291ea4f2
|