{"id":13732456,"url":"https://github.com/TrismegistusDevelopment/unity-package-manager-ci","last_synced_at":"2025-05-08T06:32:17.990Z","repository":{"id":133921024,"uuid":"181550954","full_name":"TrismegistusDevelopment/unity-package-manager-ci","owner":"TrismegistusDevelopment","description":"Travis Ci scripts to push changes to specific branch for using with Unity Package Manager (UPM) system","archived":false,"fork":false,"pushed_at":"2020-01-07T08:11:52.000Z","size":22,"stargazers_count":21,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-30T00:04:32.238Z","etag":null,"topics":["tool","travis-ci","unity","unity-package-manager","unitypackage","upm"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TrismegistusDevelopment.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-04-15T19:17:56.000Z","updated_at":"2023-02-20T08:55:58.000Z","dependencies_parsed_at":"2024-01-27T23:43:34.874Z","dependency_job_id":"2d9e3f49-92b2-4868-9bae-d6fc8fcdd01a","html_url":"https://github.com/TrismegistusDevelopment/unity-package-manager-ci","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TrismegistusDevelopment%2Funity-package-manager-ci","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TrismegistusDevelopment%2Funity-package-manager-ci/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TrismegistusDevelopment%2Funity-package-manager-ci/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TrismegistusDevelopment%2Funity-package-manager-ci/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TrismegistusDevelopment","download_url":"https://codeload.github.com/TrismegistusDevelopment/unity-package-manager-ci/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224319181,"owners_count":17291794,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["tool","travis-ci","unity","unity-package-manager","unitypackage","upm"],"created_at":"2024-08-03T02:01:57.255Z","updated_at":"2024-11-14T23:32:24.280Z","avatar_url":"https://github.com/TrismegistusDevelopment.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"# unity-package-manager-ci\n[![](https://img.shields.io/badge/Unity-Package%20Manager-blue.svg?logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J%2FAAADzElEQVRIx5WVW2jWZRzHP%2B%2F736mdmG6Sp5sUt5ygYpJriad5oGXmhVkXWZCGFWSgtjnacp0QTGKGw3QXoUQw7CIstAhiCrpceGGC5lzpPM2F5DZ1B9veTxf%2BffduKtbvd%2FMc%2BH%2Be5%2F87fB%2F47xYhhRxmUUUDbbwfXzfBY0PGsYRVciKmmOMsq2ywzXzJF0h6yKEBaTzFbBblFM9iHvOZQAaPEKGI5iKaH3IDMgIzXOhmj3jNHvsdtHqp92G%2FQM1GL5loA%2FFRm1GJPgBAGpmk8fYU%2B%2BIfdHne7%2FwtPu92qky9L4C5aWaa5mhPqR222Ohu1zjaHA%2BrGlP7LTeQIAImBE2iG%2BZuW0YmtykgiyaO8yunf%2BEkTcl1tbwO%2FMAAi0mmgVJ60ofdgPXzbQkvucc82c4rTBZh%2BTK7VJ3mYrvUaxZK4RAAG0o8GwarUvZQFN%2FJzfVHVfeZ5eN2qjctk7IEAGULw9P7fM9Acgezwqa1ql50hixIs0Ud8KAcjAOoXOq5MEQVRmVkQlYmTrRV1UoDCairc0C9IBdCAB8872VVb7vRVMmJDWYlPd1tqjY6XsYLpaXeVm%2FIjSSAyIfLquoYBVxkE19%2FzjGeid5NzAAZBbwBxPiSS2u9BBw6xE1GEECQxGORN1e8u5M8AE5whRXrUhJSO0A6b5EB7GMv7AXwVuTbQ8tL2QW7YOtWO%2BL11ecNu%2B1J8G57VG2xWOYO5muDDY6Q%2FCSWLCE7fl4SKQ%2Foy3aa4c%2F4tLOTy%2FTCxSR2Fu%2Bs4TWigJzkOGOH1GaMVJ4km2LWU3khEhgDYOZMlvIs37wDMIO6HWGrHjVfDnIgwb%2FnpzWq%2FuHTskBiEI16Rm2VVkCYwo7PjKl6yplSNqS8R47053gVkhWD6dP9R%2B2W7rt1MInaT0PEOWfLuiGIF%2BbZrfb7orwcg82bHVDbpX2wEidQ%2B3GIOO0cWZ8AyMz0C1WPmCd5HDumapM0JfbCOGqrQ8056xwpT0BMm%2BTvqlYYOM5OtdcaqRnajY8GVoaI874kW1hEVrhXXq7qVcdaZJfaYYmUDNeD3BTLbPWq121zi4vMkv1UU8KoUR5VtcqP7FFPmi3ZwwBCVrIFFjrZIv%2B2zRPut9oSs6X%2BCU%2BrnXYYs9%2FtJknSPQAhmQIKmcwnq8Og9vmXzdb7aigqqr0uvqvLPsAJAg8MEfWb9oRI7TBd0u9R5WGI5zJc5W7PeCtB4O%2FYYTl8n4flHkQGq9gdMd%2FVfuVZr9sbAiqk4j8AQkyE%2FMBUx7jSWhu9YrvFUiz%2FxwJSGcNKamnkCu1U31n%2BF80M7hBuo8ZPAAAAAElFTkSuQmCC\u0026style=popout)](https://docs.unity3d.com/Manual/upm-dependencies.html)\n[![](https://img.shields.io/badge/CI-Travis-blue.svg?logo=travis\u0026style=popout)](https://travis-ci.org/)\n\nTravis Ci scripts to push changes to specific branch for using with Unity Package Manager (UPM) system\n\n## How Unity Package Manager works with git\n\n\nThere's `Packages/manifest.json` in your Unity project folder. You can [manually add](https://docs.unity3d.com/Manual/upm-dependencies.html#Git) `git` dependencies in it like this\n```json\n\"com.company.repo.name\": \"https://YourGitHost.com/UserName/RepoName.git#BranchName\"\n```\nTo update asset through UPM you must delete reference in `lock` section in manifest.\n\nCurrently you must follow strict rules if you want to use your asset like this. Most importantly, aux files (manifest, asmdef) _must be in repo root and have `*.meta` files._\n\nThis repo will help you set up CI for separate UPM branch\n\n## Examples\n\n* [Hermesiss/unity-splines](https://github.com/Hermesiss/unity-splines)\n* [vladfaust/unity-wakatime](https://github.com/vladfaust/unity-wakatime)\n\n## Configure Travis\n1. Register at https://travis-ci.org/ for public or at https://travis-ci.com/ for private repos\n2. Open repo settings, go to `Environment Variables`\n3. Add variable with exact name `GITHUB_TOKEN` and value from [created token](https://github.com/settings/tokens) with selected scope `repo`\n\n## Add files to repo\n1. Open your project in Unity\n1. Create `package.json` near your main folder (but inside `Assets`!) with keywords and category of your choice:\n\t```json\n\t{\n\t\t\"name\": \"com.company.repo.name\",\n\t\t\"displayName\": \"Display Name of Your Asset\",\n\t\t\"version\": \"0.1.1\",\n\t\t\"unity\": \"2018.3\",\n\t\t\"description\": \"Short description of your asset\",\n\t\t\"keywords\": [\n\t\t\t\"unity\", \"editor\"\t\t\n\t\t],\n\t\t\"category\": \"Instrument\"\n\t}\n\t```\n1. Create [Assembly definition](https://docs.unity3d.com/Manual/ScriptCompilationAssemblyDefinitionFiles.html) file `com.company.repo.name.asmdef` in the same folder:\n\t```json\n\t{\n\t\t\"name\": \"Display Name of Your Asset\"\n\t}\n\t```\n\tIf you have Editor folders, repeat for each:\n\t1. Create Assembly definition files with only `editor` platform included\n\t1. Add references to other necessary asmdefs\n1. Make sure that `*.meta` files appeared. You now must have 6 items in your dir: 1 folder, 1 .json, 1 .asmdef and 3 .meta\n1. Copy `.travis.yml` file and `ci` folder to project's root\n1. Edit `.travis.yml`, change env variables - target branches and folder to export. If you want to test this config, add custom test branch to `branches:  only:` section\n1. Commit and push changes\n\n## Different info\n* If your commit doesn't require CI (like readme editing) you can add `[skip ci]` into your commit message and Travis won't build it\n* Unity is not consistent while handling Editor folders in packages during build, so it's mandatory to wrap all editor scripts in `#IF UNITY_EDITOR ... #ENDIF` or make [new asmdef file](https://docs.unity3d.com/Manual/ScriptCompilationAssemblyDefinitionFiles.html) in every Editor folder with only `Editor` checked in platforms\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTrismegistusDevelopment%2Funity-package-manager-ci","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FTrismegistusDevelopment%2Funity-package-manager-ci","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FTrismegistusDevelopment%2Funity-package-manager-ci/lists"}