{"id":14986032,"url":"https://github.com/xresloader/upload-to-github-release","last_synced_at":"2025-04-05T14:06:17.907Z","repository":{"id":35122151,"uuid":"208742845","full_name":"xresloader/upload-to-github-release","owner":"xresloader","description":null,"archived":false,"fork":false,"pushed_at":"2025-02-19T12:43:56.000Z","size":3409,"stargazers_count":56,"open_issues_count":0,"forks_count":12,"subscribers_count":2,"default_branch":"v1","last_synced_at":"2025-03-23T10:42:01.070Z","etag":null,"topics":["action","actions","assets","github","release","upload"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/xresloader.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-16T07:58:22.000Z","updated_at":"2025-02-19T12:43:52.000Z","dependencies_parsed_at":"2024-02-16T07:30:32.479Z","dependency_job_id":"8d39fa6d-a79c-4f5b-a4a2-4ab83e3b596b","html_url":"https://github.com/xresloader/upload-to-github-release","commit_stats":{"total_commits":107,"total_committers":8,"mean_commits":13.375,"dds":0.485981308411215,"last_synced_commit":"8eeaefa3ddbfd84050515cf2fb74774fececb287"},"previous_names":[],"tags_count":28,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xresloader%2Fupload-to-github-release","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xresloader%2Fupload-to-github-release/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xresloader%2Fupload-to-github-release/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xresloader%2Fupload-to-github-release/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xresloader","download_url":"https://codeload.github.com/xresloader/upload-to-github-release/tar.gz/refs/heads/v1","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246939195,"owners_count":20857916,"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":["action","actions","assets","github","release","upload"],"created_at":"2024-09-24T14:12:10.121Z","updated_at":"2025-04-05T14:06:17.885Z","avatar_url":"https://github.com/xresloader.png","language":"JavaScript","readme":"# Upload To Github Release\r\n\r\nGithub Action for deploy files to github release.\r\n\r\nMarketplace: https://github.com/marketplace/actions/upload-to-github-release\r\n\r\n[![GitHub Actions status](https://github.com/xresloader/upload-to-github-release/workflows/NPM%20Publish/badge.svg)](https://github.com/xresloader/upload-to-github-release/actions)\r\n[![GitHub release (latest by date)](https://img.shields.io/github/v/release/xresloader/upload-to-github-release)](https://github.com/marketplace/actions/uploadtogithubrelease)\r\n[![GitHub](https://img.shields.io/github/license/xresloader/upload-to-github-release)](LICENSE)\r\n\r\n![Dependency: @actions/core](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/@actions/core)\r\n![Dependency: @actions/github](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/@actions/github)\r\n![Dependency: @actions/globby](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/globby)\r\n![Dependency: mime](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/mime)\r\n\r\n![Dev dependency: typescript](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/dev/typescript)\r\n![Dev dependency: @types/jest](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/dev/@types/jest)\r\n![Dev dependency: @types/node](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/dev/@types/node)\r\n![Dev dependency: @vercel/ncc](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/dev/@vercel/ncc)\r\n![Dev dependency: jest](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/dev/jest)\r\n![Dev dependency: jest-circus](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/dev/jest-circus)\r\n![Dev dependency: ts-jest](https://img.shields.io/github/package-json/dependency-version/xresloader/upload-to-github-release/dev/ts-jest)\r\n\r\n[![npm](https://img.shields.io/npm/v/upload-to-github-release)](https://www.npmjs.com/package/upload-to-github-release)\r\n[![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/xresloader/upload-to-github-release)](https://github.com/xresloader/upload-to-github-release)\r\n[![GitHub repo size](https://img.shields.io/github/repo-size/xresloader/upload-to-github-release)](https://github.com/xresloader/upload-to-github-release)\r\n[![GitHub forks](https://img.shields.io/github/forks/xresloader/upload-to-github-release)](https://github.com/xresloader/upload-to-github-release)\r\n[![GitHub stars](https://img.shields.io/github/stars/xresloader/upload-to-github-release)](https://github.com/xresloader/upload-to-github-release)\r\n\r\n## Example usage\r\n\r\n```yml\r\nuses: xresloader/upload-to-github-release@v1\r\nenv:\r\n  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\r\nwith:\r\n  file: \"*.md\"\r\n  tags: true\r\n  draft: true\r\n```\r\n\r\nYou can find more samples on https://github.com/xresloader/upload-to-github-release-test/blob/master/.github/workflows/ .\r\n\r\n## Environments\r\n\r\n### `GITHUB_TOKEN`\r\n\r\n**Optional** The github token. You can set it to [`\"${{ secrets.GITHUB_TOKEN }}\"`][1] to use default token.\r\n\r\nSee https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line for details.\r\n\r\n## Inputs\r\n\r\n### `file`\r\n\r\n**Required** The files or file patterns to upload. You can upload multiple files by split them by semicolon. You can use the glob pattern to find the files.\r\n\r\n### `delete_file`\r\n\r\n**Optional** The files or file patterns to delete before uploading new files. You can delete multiple files by split them by semicolon. You can use the glob pattern to find the files.\r\n\r\n### `overwrite`\r\n\r\n**Optional** If you need to overwrite existing files, add overwrite: true.\r\n\r\n**Default** : false\r\n\r\n### `draft`\r\n\r\n**Optional** The resultant deployment is a draft Release that only repository collaborators can see. This gives you an opportunity to examine and edit the draft release.\r\n\r\nThis is a tristate option. It can be either true or false, which will set the release's status accordingly. When uploading to an existing release, you can also leave this option unset, which will perserve the release's existing status.\r\n\r\n**Default** : true for new release, unset for existing release\r\n\r\nWe will only try to query the first 100 releases to find the draft release with the same name, because we can not get a draft release by tag name util it's published.\r\n\r\n### `prerelease`\r\n\r\n**Optional** The resultant deployment is a Prerelease that only repository collaborators can see. This gives you an opportunity to examine and edit the prerelease.\r\n\r\nThis is a tristate option. It can be either true or false, which will set the release's status accordingly. When uploading to an existing release, you can also leave this option unset, which will perserve the release's existing status.\r\n\r\n**Default** : false for new release, unset for existing release\r\n\r\n### `tags`\r\n\r\n**Optional** With tags: true, your Releases deployment will trigger if and only if the build is a tagged build.\r\n\r\n**Default** : false\r\n\r\n### `branches`\r\n\r\n**Optional** Only work on these branches, set to nothing to accept all branches.\r\n\r\n**Default** : []\r\n\r\n### `tag_name`\r\n\r\n**Optional** Set custom tag name.\r\n\r\n**Default** : \"\"\r\n\r\n### `update_latest_release`\r\n\r\n**Optional** With update_latest_release: true, this action will try to update latest release first.\r\n\r\n**Default** : false\r\n\r\n### `verbose`\r\n\r\n**Optional** Print the verbose logs to debug.\r\n\r\n**Default** : false\r\n\r\n### `release_id`\r\n\r\n**Optional** Set release id to update.If release_id is set, this step will fail if we can not find it.\r\n\r\n**Default** : 0\r\n\r\n### `default_release_name`\r\n\r\n**Optional** Set release name when create a new release.\r\n\r\n**Default** : Git tag name\r\n\r\n### `default_release_body`\r\n\r\n**Optional** Set release body when create a new release.Not needed if using default_release_body_path.\r\n\r\n**Default** : \"\"\r\n\r\n### `default_release_body_path`\r\n\r\n**Optional** Set the file to read release body when create a new release.Not needed if using default_release_body.\r\n\r\n**Default** : \"\"\r\n\r\n### `update_release_body`\r\n\r\n**Optional** Always update release body when it's not empty.\r\n\r\n**Default** : \"\"\r\n\r\n### `update_release_body_path`\r\n\r\n**Optional** Always update release body from file.Not needed if using update_release_body.\r\n\r\n**Default** : \"\"\r\n\r\n### `update_release_body_append`\r\n\r\n**Optional** Append content instead of replace release body when updating.\r\n\r\n**Default** : \"false\"\r\n\r\n### `token`\r\n\r\n**Optional** Authorized secret GitHub Personal Access Token. Defaults to github.token.\r\n\r\n**Default** : ${{ github.token }}\r\n\r\n### `target_owner`\r\n\r\n**Optional** Set the owner of target repository.\r\n\r\n**Default** : current user/origanization\r\n\r\n### `target_repo`\r\n\r\n**Optional** Set target repository.\r\n\r\n**Default** : current repository\r\n\r\n## Outputs\r\n\r\n### `release_id`\r\n\r\nThe release id.\r\n\r\n### `release_name`\r\n\r\nThe release name.\r\n\r\n### `release_url`\r\n\r\nThe release url.\r\n\r\n### `release_tag_name`\r\n\r\nThe release tag name.\r\n\r\n### `release_commitish`\r\n\r\nThe release commitish.\r\n\r\n## For Developer\r\n\r\nWe can use [npm][3] or [yarn][4] to build this action.\r\n\r\n```bash\r\nnpm i -g yarn\r\nyarn install # or pnpm install\r\nyarn run build # or pnpm run build\r\n\r\n# commit\r\ngit add lib/* src/*\r\ngit commit -m \"COMMIT MESSAGE\"\r\n```\r\n\r\n```bash\r\n# test with bash\r\nenv NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" yarn run test\r\nenv NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" pnpm run test\r\n```\r\n\r\n```powershell\r\n# test with powershell\r\n$ENV:NODE_OPTIONS=\"$ENV:NODE_OPTIONS --experimental-vm-modules\"\r\n\r\nyarn run test # or pnpm run test\r\n```\r\n\r\n### Reference\r\n\r\n| title                                             |                                                      link                                                         |\r\n|:--------------------------------------------------|:------------------------------------------------------------------------------------------------------------------|\r\n| GitHub Actions                                    | https://github.com/features/actions                                                                               |\r\n| Creating a javascript action                      | https://help.github.com/en/articles/creating-a-javascript-action#testing-out-your-action-in-a-workflow            |\r\n| Events that trigger workflows - GitHub Help       | https://help.github.com/en/articles/events-that-trigger-workflows                                                 |\r\n| The GitHub ToolKit for developing GitHub Actions  | https://github.com/actions/toolkit                                                                                |\r\n| GitHub GraphQL API v4                             | https://developer.github.com/v4/                                                                                  |\r\n| GitHub Rest API v3 for Release                    | https://developer.github.com/v3/repos/releases/                                                                   |\r\n| GitHub GraphQL API client for browsers and Node   | https://github.com/octokit/graphql.js                                                                             |\r\n| GitHub REST API client for JavaScript             | https://octokit.github.io/rest.js/                                                                                |\r\n\r\n\r\n[1]: https://help.github.com/en/articles/virtual-environments-for-github-actions#github_token-secret\r\n[2]: https://github.com/vercel/ncc\r\n[3]: https://www.npmjs.com/\r\n[4]: https://yarnpkg.com/lang/en/\r\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxresloader%2Fupload-to-github-release","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxresloader%2Fupload-to-github-release","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxresloader%2Fupload-to-github-release/lists"}