mc-publish/action.template.yml

197 lines
7.1 KiB
YAML
Raw Normal View History

2023-05-18 10:03:22 -04:00
# TODO: Remove deprecated inputs in v4.0
name: mc-publish
description: Your one-stop GitHub Action for seamless Minecraft project publication across various platforms.
2021-09-25 02:41:13 -04:00
author: Kir-Antipov
branding:
2023-05-18 10:03:22 -04:00
color: purple
icon: box
types:
input:
name: McPublishInput
description: The input parameters for the action.
output:
name: McPublishOutput
description: The output parameters provided by the action.
2023-05-18 10:03:22 -04:00
groups:
input:
modrinth:
type: ModrinthUploadRequest
description: Options used to publish Minecraft projects to Modrinth.
curseforge:
type: CurseForgeUploadRequest
description: Options used to publish Minecraft projects to CurseForge.
github:
type: GitHubUploadRequest
description: Options used to publish Minecraft projects to GitHub.
output:
modrinth:
type: ModrinthUploadReport
description: Report detailing the status of the project published on Modrinth.
curseforge:
type: CurseForgeUploadReport
description: Report detailing the status of the project published on CurseForge.
github:
type: GitHubUploadReport
description: Report detailing the status of the project published on GitHub.
inputs:
2021-09-25 02:41:13 -04:00
modrinth-id:
2023-05-18 10:03:22 -04:00
type: string
description: The unique identifier of your Modrinth project.
2022-06-06 11:17:42 -04:00
modrinth-featured:
2023-05-18 10:03:22 -04:00
type: boolean
description: Set to true to feature the version on Modrinth; false otherwise.
modrinth-unfeature-mode:
2023-05-18 10:03:22 -04:00
type: platforms.modrinth.ModrinthUnfeatureMode
description: Sets the behavior for unfeaturing older Modrinth versions.
default: subset
modrinth-token:
2023-05-18 10:03:22 -04:00
type: utils.security.SecureString
description: Your Modrinth API token.
2021-09-25 02:41:13 -04:00
curseforge-id:
2023-05-18 10:03:22 -04:00
type: string
description: The unique identifier of your CurseForge project.
2021-09-25 02:41:13 -04:00
curseforge-token:
2023-05-18 10:03:22 -04:00
type: utils.security.SecureString
description: Your CurseForge API token.
2021-09-25 02:41:13 -04:00
github-tag:
2023-05-18 10:03:22 -04:00
type: string
description: The tag name for the release where assets will be uploaded.
github-generate-changelog:
2023-05-18 10:03:22 -04:00
type: boolean
description: Set to true to generate a changelog automatically for this release; false otherwise. Ignored if the GitHub Release already exists.
github-draft:
2023-05-18 10:03:22 -04:00
type: boolean
description: Set to true to create a draft release; false otherwise. Ignored if the GitHub Release already exists.
github-prerelease:
2023-05-18 10:03:22 -04:00
type: boolean
description: Set to true to mark the release as a prerelease; false otherwise. Ignored if the GitHub Release already exists.
github-commitish:
2023-05-18 10:03:22 -04:00
type: string
description: Defines the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Ignored if the Git tag already exists.
github-discussion:
2023-05-18 10:03:22 -04:00
type: string
description: If specified, creates and links a discussion of the specified **existing** category to the release. Ignored if the GitHub Release already exists.
2021-09-25 02:41:13 -04:00
github-token:
2023-05-18 10:03:22 -04:00
type: utils.security.SecureString
description: Your GitHub API token.
2021-09-25 02:41:13 -04:00
files:
2023-05-18 10:03:22 -04:00
type: utils.io.FileInfo[]:{findFiles}?processSeparately=false
description: An array of globs determining which files to upload.
default: |
build/libs/!(*-@(dev|sources|javadoc)).jar
build/libs/*-@(dev|sources|javadoc).jar
2021-09-25 02:41:13 -04:00
files-primary:
2023-05-18 10:03:22 -04:00
type: utils.io.FileInfo[]:{findFiles}?processSeparately=false
redirect: files
description: A glob determining the primary files to upload.
deprecationMessage: Please, use 'files' instead.
2021-09-25 02:41:13 -04:00
files-secondary:
2023-05-18 10:03:22 -04:00
type: utils.io.FileInfo[]:{findFiles}?processSeparately=false
redirect: void
description: A glob determining the secondary files to upload.
deprecationMessage: Please, use 'files' instead.
2021-09-25 02:41:13 -04:00
name:
2023-05-18 10:03:22 -04:00
type: string
description: The name of the version.
2021-09-25 02:41:13 -04:00
version:
2023-05-18 10:03:22 -04:00
type: string
description: The version number.
2021-09-25 02:41:13 -04:00
version-type:
2023-05-18 10:03:22 -04:00
type: utils.versioning.VersionType
description: The version type - alpha, beta, or release.
2021-09-25 02:41:13 -04:00
changelog:
2023-05-18 10:03:22 -04:00
type: string
description: The changelog for this version.
2021-09-25 02:41:13 -04:00
changelog-file:
2023-05-18 10:03:22 -04:00
type: string;utils/io/file-info->{readAllText}
redirect: changelog
description: A glob pointing to the changelog file.
2021-09-25 02:41:13 -04:00
loaders:
2023-05-18 10:03:22 -04:00
type: string[]?separator=/\s%2B/
description: An array of supported mod loaders.
2021-09-25 02:41:13 -04:00
game-versions:
2023-05-18 10:03:22 -04:00
type: string[]
description: An array of supported Minecraft versions.
2021-12-10 08:46:09 -05:00
dependencies:
2023-05-18 10:03:22 -04:00
type: dependencies.Dependency[]
description: An array of dependencies required by your project.
2021-10-01 09:13:08 -04:00
version-resolver:
2023-05-18 10:03:22 -04:00
type: games.GameVersionFilter:fromVersionResolver
redirect: game-version-filter
description: Controls the method used to automatically resolve game versions.
deprecationMessage: Please, use 'game-version-filter' instead.
game-version-filter:
type: games.GameVersionFilter
description: Controls the method used to filter game versions.
default: releases | min-major | min-minor # ">=1.18" -> ["1.18", "1.18.1", "1.18.2"]
2021-09-25 02:41:13 -04:00
java:
2023-05-18 10:03:22 -04:00
type: utils.java.JavaVersion[]
description: An array of Java versions compatible with your project.
retry-attempts:
2023-05-18 10:03:22 -04:00
description: Defines the maximum number of asset publishing attempts.
type: number
default: 2
retry-delay:
2023-05-18 10:03:22 -04:00
description: Specifies the delay (in milliseconds) between asset publishing attempts.
type: number
default: 10000
2022-07-05 11:08:11 -04:00
fail-mode:
2023-05-18 10:03:22 -04:00
type: utils.errors.FailMode
description: Controls how the action responds to errors during the mod publishing process.
default: fail
outputs:
modrinth-id:
type: string
description: The unique identifier of your Modrinth project.
modrinth-version:
type: string
description: The unique identifier of the version published on Modrinth by this action.
modrinth-url:
type: string
description: The URL directing to the newly published version on Modrinth.
modrinth-files:
type: platforms.UploadedFile[]
description: Array of objects, each containing details about the files published for the new version on Modrinth, such as file `name`, `id`, and download `url`.
curseforge-id:
type: number
description: The unique identifier of your CurseForge project.
curseforge-version:
type: number
description: The unique identifier of the version published on CurseForge by this action.
curseforge-url:
type: string
description: The URL directing to the newly published version on CurseForge.
curseforge-files:
type: platforms.UploadedFile[]
description: Array of objects, each containing details about the files published for the new version on CurseForge, such as file `name`, `id`, and download `url`.
github-repo:
type: string
description: The full repository name on GitHub, formatted as 'username/repository'.
github-tag:
type: string
description: The Git tag associated with the new or updated release published on GitHub.
github-url:
type: string
description: The URL directing to the newly published version on GitHub.
github-files:
type: platforms.UploadedFile[]
description: Array of objects, each containing details about the files published for the new version on GitHub, such as file `name`, `id`, and download `url`.
2021-09-25 02:41:13 -04:00
runs:
2023-05-18 10:03:22 -04:00
using: node16
main: dist/index.js