{"id":20621038,"url":"https://github.com/rageagainstthepixel/upload-meta-quest-build","last_synced_at":"2025-04-15T12:14:23.487Z","repository":{"id":65158362,"uuid":"576786842","full_name":"RageAgainstThePixel/upload-meta-quest-build","owner":"RageAgainstThePixel","description":"A GitHub Action for uploading a Meta Quest app to the Meta Quest store.","archived":false,"fork":false,"pushed_at":"2025-03-25T12:49:56.000Z","size":456,"stargazers_count":5,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-15T12:14:09.415Z","etag":null,"topics":["app-labs","game-ci","game-publishing","meta","meta-quest","meta-quest-store","ovr","ovr-platform-util","publishing","quest","store","upload"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/RageAgainstThePixel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yaml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"StephenHodgson","patreon":"RageAgainstThePixel"}},"created_at":"2022-12-11T01:04:13.000Z","updated_at":"2025-03-25T12:49:18.000Z","dependencies_parsed_at":"2024-08-12T04:27:04.056Z","dependency_job_id":"80d48a93-95f7-4e34-b5fb-33dbf27b3fab","html_url":"https://github.com/RageAgainstThePixel/upload-meta-quest-build","commit_stats":{"total_commits":3,"total_committers":2,"mean_commits":1.5,"dds":"0.33333333333333337","last_synced_commit":"09e84548063b75b3e3eeb308c449484fde433433"},"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RageAgainstThePixel%2Fupload-meta-quest-build","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RageAgainstThePixel%2Fupload-meta-quest-build/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RageAgainstThePixel%2Fupload-meta-quest-build/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RageAgainstThePixel%2Fupload-meta-quest-build/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RageAgainstThePixel","download_url":"https://codeload.github.com/RageAgainstThePixel/upload-meta-quest-build/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249067779,"owners_count":21207396,"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":["app-labs","game-ci","game-publishing","meta","meta-quest","meta-quest-store","ovr","ovr-platform-util","publishing","quest","store","upload"],"created_at":"2024-11-16T12:16:29.241Z","updated_at":"2025-04-15T12:14:23.480Z","avatar_url":"https://github.com/RageAgainstThePixel.png","language":"TypeScript","funding_links":["https://github.com/sponsors/StephenHodgson","https://patreon.com/RageAgainstThePixel"],"categories":[],"sub_categories":[],"readme":"# upload-meta-quest-build\n\nA GitHub Action for [uploading a Meta Quest app to the Meta Quest store](https://developer.oculus.com/resources/publish-reference-platform-command-line-utility/#upload-quest).\n\n## How to use\n\n* [Get Credentials](https://developer.oculus.com/resources/publish-reference-platform-command-line-utility/#credentials)\n* Set repo secrets\n  * `META_APP_ID`\n  * `META_APP_SECRET`\n\n### workflow\n\n```yaml\nsteps:\n    # setup ovr platform util\n  - uses: RageAgainstThePixel/setup-ovr-platform-util@v1\n    # upload meta quest build\n  - uses: RageAgainstThePixel/upload-meta-quest-build@v2\n    id: upload\n    with:\n      appId: ${{ secrets.META_APP_ID }}\n      appSecret: ${{ secrets.META_APP_SECRET }}\n      buildDir: 'path/to/build/folder'\n    # use uploaded meta quest build id\n  - run: 'echo ${{ steps.upload.build_id }}'\n```\n\n### inputs\n\n[Oculus Platform Utility docs](https://developer.oculus.com/resources/publish-reference-platform-command-line-utility/)\n\n| Name | Description | Required | Default |\n| ---- | ----------- | ------- |----------|\n| `ageGroup` | Age group of the build. This can be `TEENS_AND_ADULTS`, `MIXED_AGES`, or `CHILDREN`. (If not specified, the upload will go into “draft” status, rather than failing). For more information, see [Age Group Self-Certification and Youth Requirements](https://developer.oculus.com/resources/age-groups). | true | |\n| `appId` | Specifies the ID of your app. Obtained from the API tab of your app in the Oculus Dashboard. | true | |\n| `appSecret` |Specifies the app secret. Obtained from the API tab of your app in the Oculus developer dashboard. | Must provide `appSecret` or `token` | |\n| `token` | A user token obtained by the get-access-token command or from the API tab of your app in the Oculus developer dashboard. | Must provide `appSecret` or `token` | |\n| `apkPath` | Specifies the path to the APK to upload. | true | |\n| `obbPath` | Specifies the path to the Expansion file (OBB) to upload. | false | |\n| `buildDir` | Specifies the path to the directory that contains the build files. If specified, the plugin will look for the APK and OBB files in this directory. | false | |\n| `assetsDir` | Specifies the path to the directory with DLCs for this build. | false | |\n| `assetFilesConfig` | Specifies the path to the file that configures required assets or associates DLC assets with in-app purchases. | false | |\n| `inheritAssetFiles` | Specifies whether to inherit asset files from the previous build. | false | |\n| `releaseChannel` | Specifies the release channel for uploading the build. Release channel names are ***not*** case-sensitive. | false | `ALPHA` |\n| `releaseNotes` | Specifies the release note text shown to users. Encodes double quotes as `\\\"`. Encode newlines as `\\n`. | false | |\n| `languagePacksDir` | The path to the directory that contains language packs. | false | |\n| `debugSymbolsDir` | Path to the folder that contains the debug symbol file(s). | false | |\n| `debugSymbolsZip` | The path to the debug symbol zip file. If provided this will be used instead of the `debugSymbolsDir` and will unzip before uploading. | false | |\n| `debugSymbolsPattern` | A pattern sequence that can match the filenames of all the debug symbol files. An asterisk may be used to indicate a wildcard, for example, `*.sym.so`. | false | |\n| `excludeAddons` | Whether to exclude attaching global shared Add-ons to this build. | false | |\n| `draft` | Specifies whether to upload the build as a draft. | false | |\n| `force` | Forces the upload, even if there are validation errors. | false | |\n\n### outputs\n\n* `build_id`: The uploaded build id.\n\n## Related actions\n\n* [setup-ovr-platform-util](https://github.com/RageAgainstThePixel/setup-ovr-platform-util)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frageagainstthepixel%2Fupload-meta-quest-build","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frageagainstthepixel%2Fupload-meta-quest-build","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frageagainstthepixel%2Fupload-meta-quest-build/lists"}