-
Notifications
You must be signed in to change notification settings - Fork 276
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #45 from GandaG/feature/travis_integration
Added Unity Deployment Tools
- Loading branch information
Showing
17 changed files
with
3,564 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
[Misc] | ||
#if set to true, all logs from commands will be shown. Default is false. | ||
verbose=false | ||
|
||
#if set to true, Travis will always try to build the package/asset, even when there isn't a tag. Default is true. | ||
always_run=true | ||
|
||
[Docs] | ||
#if set to true, will enable generating docs and deploying them to github pages. Default is true. | ||
enable=true | ||
|
||
#if you want to generate documentation only from a specific branch. Default is master. | ||
branch= | ||
|
||
#if you want to name your project something other than the repo name, fill in: | ||
projectname= | ||
|
||
#if you want to have a custom username when pushing to gh-pages, fill in. If left blank, defaults to "Travis-CI Doxygen Deployment". | ||
username= | ||
|
||
#if you want to have a custom email when pushing to gh-pages, fill in. If left blank, defaults to "doxygen@deployment.to.github.pages". | ||
email= | ||
|
||
#if you want to have a custom message for the commit to gh-pages, fill in. If left blank, defaults to "Deploying to GitHub Pages". | ||
commit_description= | ||
|
||
#if you want the short description to be something other than your repo description, fill in: | ||
description= | ||
|
||
#if you wish your project to have a logo, fill in the relative path to the image. | ||
#e.g. if you store it in the .deploy folder, fill in this: ./.deploy/my_logo.png | ||
logo= | ||
|
||
#if set to true, will include the tag as the documentation version. Default is false. | ||
include_version=false | ||
|
||
#if set to true, will include all code even if not documented. Default is true. | ||
include_non_documented=true | ||
|
||
#if set to true, will include private members in the documentation. Default is true. | ||
include_privates=true | ||
|
||
#if set to true, will include a sidebar with a navigation panel. Default is true. | ||
include_nav_panel=true | ||
|
||
#if set to true, will include a search function in each page. Default is true. | ||
include_search=true | ||
|
||
#if set to true, will generate class hierarchy diagrams. Default is true. | ||
gen_diagrams=true | ||
|
||
[Github] | ||
#if set to true, will enable deployment to github if possible. Default is true. | ||
enable=true | ||
|
||
#if set to true, tag will be included after the package name (e.g. UnityDeployTools_v1.1). Default is true. | ||
include_version=true | ||
|
||
#if you want to name the deploy zip file something other than your repo name: | ||
packagename= | ||
|
||
#if set to true, tags with "alpha" or "beta" in their name will be set to prerelease. Default is true. | ||
conditional_prerelease=true | ||
|
||
#if set to true, tags with "alpha" or "beta" in their name will be deployed as draft. Default is true. | ||
conditional_draft=true | ||
|
||
#if set to true, releases will always be set to prerelease. | ||
#Overrides conditional_prerelease if true. Default is false. | ||
prerelease=false | ||
|
||
#if set to true, releases will always be deployed as a draft. | ||
#Overrides conditional_draft if true. Default is false. | ||
draft=false | ||
|
||
#if you want to name the release something other than the tag, fill in: | ||
title= | ||
|
||
#if you want to add something (don't forget this should be in github markdown) | ||
#to the release description: | ||
description=[Changelog!](https://github.com/ricardojmendez/UnitySteer/blob/master/CHANGELOG.md) | ||
|
||
#if you want to deploy only from a specific branch: | ||
branch= | ||
|
||
[AssetStore] | ||
#not supported YET |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
The MIT License (MIT) | ||
|
||
Copyright (c) 2016 Daniel Nunes | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in all | ||
copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
SOFTWARE. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
.. |travisbadge| image:: https://travis-ci.org/GandaG/unity-deploy-tools.svg?branch=master | ||
:target: https://travis-ci.org/GandaG/unity-deploy-tools | ||
|
||
.. |nbsp| unicode:: 0xA0 | ||
:trim: | ||
|
||
#################################################################################### | ||
Unity Deployment Tools |nbsp| |nbsp| |nbsp| |travisbadge| | ||
#################################################################################### | ||
*Continuous deployment tools for open-source* `Unity3D <https://unity3d.com/>`_ *packages and assets.* | ||
|
||
This repository offers a quick way to setup open source unity packages. It features: | ||
|
||
- a self-documented and easy to use .ini file to configure all the options; | ||
- automated package/asset exporting from unity; | ||
- automated deployment to Github Releases; | ||
- automated creation and deployment of documentation to Github Pages; | ||
- automated deployment to Unity's Asset Store. [TODO] | ||
|
||
|
||
************ | ||
Installation | ||
************ | ||
1. Download the `latest stable release <https://github.com/GandaG/unitypackage-ci/releases/latest>`_; | ||
|
||
2. Unpack the files into your repository's root directory; | ||
|
||
3. Go to `Travis-CI <https://travis-ci.org/>`_ an sign in with Github; | ||
|
||
4. Enable your repository in your account page; | ||
|
||
5. Open :code:`.deploy.ini` with a text editor (like Notepad++) and modify the options under the :code:`[Misc]` section as per your preferences. | ||
|
||
6. For additional features check the subsections below; | ||
|
||
7. Simply push a commit and let travis do all the work for you! | ||
|
||
******************* | ||
Additional Features | ||
******************* | ||
In order to use any of the features below you need to grab an OAuth token from Github with special permissions. Take these steps: | ||
|
||
1. Sign in to Github; | ||
|
||
2. Go to your `Settings <https://github.com/settings/>`_; | ||
|
||
3. Go to `Personal Access Tokens <https://github.com/settings/tokens>`_; | ||
|
||
4. Click on :code:`Generate new token`; | ||
|
||
5. Enter your password; | ||
|
||
6. Give the token a good description. Mine is :code:`Travis-CI Deploy`; | ||
|
||
7. Give the token these permissions: | ||
|
||
- gist; | ||
- read:org; | ||
- repo; | ||
- user:email; | ||
- write:repo_hook | ||
|
||
8. Click on :code:`Generate token`; | ||
|
||
9. The new token should now appear. NEVER give or show this token to anyone, not even Travis (the encryption process later on does not send the token to Travis, the entire process is local); | ||
|
||
10. Temporarily store your token somewhere local and safe; | ||
|
||
11. Go to `Travis-CI <https://travis-ci.org/>`_ and sign in with Github; | ||
|
||
12. Go to your repository settings; | ||
|
||
13. In the Environment Variables section, write "GH_TOKEN" (without the quotes) in the :code:`Name` field and paste the token in the :code:`Value` field; | ||
|
||
14. Make sure to leave :code:`Display value in build log` as :code:`OFF` and click :code:`Add`; | ||
|
||
15. It's now safe to delete and forget about that token from before! Only use the secure (encrypted) version from now on. | ||
|
||
Github Releases | ||
"""""""""""""""""" | ||
Simply open your :code:`.deploy.ini` file with a text editor (like Notepad++) and modify the :code:`[Github]` | ||
section as per your preferences. That's it, really. | ||
|
||
Code Documentation | ||
"""""""""""""""""" | ||
Documentation for all your code is generated with `Doxygen <http://www.stack.nl/~dimitri/doxygen/index.html/>`_. | ||
Example documentation is provided at the `Github Pages <https://gandag.github.io/unity-deploy-tools/>`_ of this repository, | ||
example script taken from Microsoft's `XML Documentation Example <https://msdn.microsoft.com/en-us/library/aa288481(v=vs.71).aspx>`_. | ||
|
||
Basic Usage | ||
''''''''''' | ||
Documentation generation is enabled by default. Open your :code:`.deploy.ini` file with a text editor (like Notepad++) | ||
and modify the :code:`[Docs]` section as per your preferences. That's pretty much it, for more things to do with Doxygen check below. | ||
|
||
Advanced/Expert | ||
''''''''''''''' | ||
Doxygen must be (for the sheer amount of options) the best documented software I've ever seen. | ||
|
||
If you want to customize your docs more than the basic options presented in the :code:`.deploy.ini` file | ||
(these are the same presented in the basic panel of the doxywizard) head over to :code:`.deploy/docs/` and | ||
open the :code:`Doxyfile`. This is the default doxygen configuration file and every option is very well | ||
documented. There are bajillions of them, have fun! | ||
|
||
Please note that some options are hardcoded (see :code:`.deploy/travis/deploy_docs.sh`). | ||
|
||
***************** | ||
Upcoming Features | ||
***************** | ||
- Automated package deployment to `Unity <https://unity3d.com/>`_'s Asset Store. | ||
- Automated compiling and distribution as a .dll file. |
Oops, something went wrong.