fancyholograms-v2: add deployment information

This commit is contained in:
Oliver
2025-03-29 22:39:18 +01:00
parent b30d28f885
commit 45e57488f7
20 changed files with 585 additions and 12 deletions

View File

@@ -0,0 +1,47 @@
name: Deploy FancyHolograms (release)
on:
workflow_dispatch:
jobs:
deploy-plugin:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build FancyHolograms v2
run: ./gradlew :plugins:fancyholograms:shadowJar
- name: Build deployment tool
run: ./gradlew :tools:deployment:shadowJar
- name: Deploy
env:
MODRINTH_API_KEY: ${{ secrets.MODRINTH_API_KEY }}
run:
cd tools/deployment/build/libs &&
java -jar deployment.jar ../../../../plugins/fancyholograms-v2/release_deployment_config.json
- name: Publish to reposilite (releases)
run: ./gradlew :plugins:fancyholograms-v2:api:publishAllPublicationsToFancypluginsReleasesRepository
- name: Publish to reposilite (snapshots)
run: ./gradlew :plugins:fancyholograms-v2:api:publishAllPublicationsToFancypluginsSnapshotsRepository

View File

@@ -0,0 +1,44 @@
name: Deploy FancyHolograms (snapshot)
on:
workflow_dispatch:
jobs:
deploy-plugin:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build FancyHolograms v2
run: ./gradlew :plugins:fancyholograms-v2:shadowJar
- name: Build deployment tool
run: ./gradlew :tools:deployment:shadowJar
- name: Deploy
env:
MODRINTH_API_KEY: ${{ secrets.MODRINTH_API_KEY }}
run:
cd tools/deployment/build/libs &&
java -jar deployment.jar ../../../../plugins/fancyholograms-v2/snapshot_deployment_config.json
- name: Publish to reposilite (snapshots)
run: ./gradlew :plugins:fancyholograms-v2:api:publishAllPublicationsToFancypluginsSnapshotsRepository

View File

@@ -0,0 +1,5 @@
Commit hash: %COMMIT_HASH%
Commit message: %COMMIT_MESSAGE%
Keep in mind that this is a snapshot version. Snapshot versions are **not** meant to be used in production. They are for **testing purposes only** and may contain bugs or incomplete features. Use at your own risk.

View File

@@ -0,0 +1 @@
This is a test dev build.

View File

@@ -0,0 +1 @@
2.4.2.134

View File

@@ -48,7 +48,7 @@ tasks {
create<MavenPublication>("maven") { create<MavenPublication>("maven") {
groupId = "de.oliver" groupId = "de.oliver"
artifactId = "FancyHolograms" artifactId = "FancyHolograms"
version = project.version.toString() version = getFHVersion()
from(project.components["java"]) from(project.components["java"])
} }
} }
@@ -68,4 +68,8 @@ tasks {
options.release.set(17) options.release.set(17)
} }
}
fun getFHVersion(): String {
return file("../VERSION").readText()
} }

View File

@@ -1,7 +1,5 @@
import net.minecrell.pluginyml.bukkit.BukkitPluginDescription import net.minecrell.pluginyml.bukkit.BukkitPluginDescription
import net.minecrell.pluginyml.paper.PaperPluginDescription import net.minecrell.pluginyml.paper.PaperPluginDescription
import java.io.BufferedReader
import java.io.InputStreamReader
plugins { plugins {
id("java-library") id("java-library")
@@ -31,12 +29,12 @@ val supportedVersions =
"1.21.2", "1.21.2",
"1.21.3", "1.21.3",
"1.21.4", "1.21.4",
"1.21.5",
) )
allprojects { allprojects {
group = "de.oliver" group = "de.oliver"
val buildId = System.getenv("BUILD_ID") version = getFHVersion()
version = "2.4.2" + (if (buildId != null) ".$buildId" else "")
description = "Simple, lightweight and fast hologram plugin using display entities" description = "Simple, lightweight and fast hologram plugin using display entities"
repositories { repositories {
@@ -83,7 +81,7 @@ paper {
bootstrapper = "de.oliver.fancyholograms.loaders.FancyHologramsBootstrapper" bootstrapper = "de.oliver.fancyholograms.loaders.FancyHologramsBootstrapper"
loader = "de.oliver.fancyholograms.loaders.FancyHologramsLoader" loader = "de.oliver.fancyholograms.loaders.FancyHologramsLoader"
foliaSupported = true foliaSupported = true
version = rootProject.version.toString() version = getFHVersion()
description = "Simple, lightweight and fast hologram plugin using display entities" description = "Simple, lightweight and fast hologram plugin using display entities"
apiVersion = "1.19" apiVersion = "1.19"
load = BukkitPluginDescription.PluginLoadOrder.POSTWORLD load = BukkitPluginDescription.PluginLoadOrder.POSTWORLD
@@ -145,7 +143,7 @@ tasks {
val props = mapOf( val props = mapOf(
"description" to project.description, "description" to project.description,
"version" to project.version, "version" to getFHVersion(),
"hash" to gitCommitHash.get(), "hash" to gitCommitHash.get(),
"build" to (System.getenv("BUILD_ID") ?: "").ifEmpty { "undefined" } "build" to (System.getenv("BUILD_ID") ?: "").ifEmpty { "undefined" }
) )
@@ -182,6 +180,10 @@ val gitCommitMessage: Provider<String> = providers.exec {
commandLine("git", "log", "-1", "--pretty=%B") commandLine("git", "log", "-1", "--pretty=%B")
}.standardOutput.asText.map { it.trim() } }.standardOutput.asText.map { it.trim() }
fun getFHVersion(): String {
return file("VERSION").readText()
}
hangarPublish { hangarPublish {
publications.register("plugin") { publications.register("plugin") {
version = project.version as String version = project.version as String
@@ -204,9 +206,9 @@ hangarPublish {
modrinth { modrinth {
token.set(System.getenv("MODRINTH_PUBLISH_API_TOKEN")) token.set(System.getenv("MODRINTH_PUBLISH_API_TOKEN"))
projectId.set("fancyholograms") projectId.set("fancyholograms")
versionNumber.set(project.version.toString()) versionNumber.set(getFHVersion())
versionType.set("alpha") versionType.set("alpha")
uploadFile.set(file("build/libs/${project.name}-${project.version}.jar")) uploadFile.set(file("build/libs/${project.name}-${getFHVersion()}.jar"))
gameVersions.addAll(supportedVersions) gameVersions.addAll(supportedVersions)
loaders.add("paper") loaders.add("paper")
loaders.add("folia") loaders.add("folia")

View File

@@ -0,0 +1,28 @@
{
"project_id": "5QNgOj66",
"plugin_jar_path": "../../../../plugins/fancyholograms/build/libs/FancyHolograms-%VERSION%.jar",
"changelog_path": "../../../../plugins/fancyholograms/CHANGELOG.md",
"version_path": "../../../../plugins/fancyholograms/VERSION",
"supported_versions":[
"1.19.4",
"1.20",
"1.20.1",
"1.20.2",
"1.20.3",
"1.20.4",
"1.20.5",
"1.20.6",
"1.21",
"1.21.1",
"1.21.2",
"1.21.3",
"1.21.4",
"1.21.5"
],
"channel": "RELEASE",
"loaders": [
"paper",
"folia"
],
"featured": true
}

View File

@@ -0,0 +1,28 @@
{
"project_id": "5QNgOj66",
"plugin_jar_path": "../../../../plugins/fancyholograms/build/libs/FancyHolograms-%VERSION%.jar",
"changelog_path": "../../../../plugins/fancyholograms/CHANGELOG-SNAPSHOT.md",
"version_path": "../../../../plugins/fancyholograms/VERSION",
"supported_versions":[
"1.19.4",
"1.20",
"1.20.1",
"1.20.2",
"1.20.3",
"1.20.4",
"1.20.5",
"1.20.6",
"1.21",
"1.21.1",
"1.21.2",
"1.21.3",
"1.21.4",
"1.21.5"
],
"channel": "ALPHA",
"loaders": [
"paper",
"folia"
],
"featured": false
}

View File

@@ -0,0 +1,5 @@
Commit hash: %COMMIT_HASH%
Commit message: %COMMIT_MESSAGE%
Keep in mind that this is a snapshot version. Snapshot versions are **not** meant to be used in production. They are for **testing purposes only** and may contain bugs or incomplete features. Use at your own risk.

View File

@@ -16,7 +16,8 @@
"1.21.1", "1.21.1",
"1.21.2", "1.21.2",
"1.21.3", "1.21.3",
"1.21.4" "1.21.4",
"1.21.5"
], ],
"channel": "RELEASE", "channel": "RELEASE",
"loaders": [ "loaders": [

View File

@@ -1,7 +1,7 @@
{ {
"project_id": "5QNgOj66", "project_id": "5QNgOj66",
"plugin_jar_path": "../../../../plugins/fancyholograms/build/libs/FancyHolograms-%VERSION%.jar", "plugin_jar_path": "../../../../plugins/fancyholograms/build/libs/FancyHolograms-%VERSION%.jar",
"changelog_path": "../../../../plugins/fancyholograms/CHANGELOG.md", "changelog_path": "../../../../plugins/fancyholograms/CHANGELOG-SNAPSHOT.md",
"version_path": "../../../../plugins/fancyholograms/VERSION", "version_path": "../../../../plugins/fancyholograms/VERSION",
"supported_versions":[ "supported_versions":[
"1.19.4", "1.19.4",
@@ -16,7 +16,8 @@
"1.21.1", "1.21.1",
"1.21.2", "1.21.2",
"1.21.3", "1.21.3",
"1.21.4" "1.21.4",
"1.21.5"
], ],
"channel": "ALPHA", "channel": "ALPHA",
"loaders": [ "loaders": [

View File

@@ -0,0 +1,106 @@
name: Build and test
on:
push:
pull_request:
types:
- opened
jobs:
build-plugins:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build FancyNpcs
run: ./gradlew :plugins:fancynpcs:shadowJar
- name: Build FancyHolograms v2
run: ./gradlew :plugins:fancyholograms-v2:shadowJar
- name: Build FancyHolograms
run: ./gradlew :plugins:fancyholograms:shadowJar
- name: Build FancyVisuals
run: ./gradlew :plugins:fancyvisuals:shadowJar
build-libraries:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build common
run: ./gradlew :libraries:common:jar
- name: Build jdb
run: ./gradlew :libraries:jdb:jar
- name: Build plugin-tests
run: ./gradlew :libraries:plugin-tests:jar
- name: Build packets
run: ./gradlew :libraries:packets:shadowJar
unit-tests:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Run unit tests
run: ./gradlew test

View File

@@ -0,0 +1,27 @@
name: Deploy documentation
on:
workflow_dispatch:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build Docker Image
run: docker build -t oliverschlueter/fancyinnovations-docs:latest docs/
- name: Publish Docker Image
run: docker push oliverschlueter/fancyinnovations-docs:latest

View File

@@ -0,0 +1,47 @@
name: Deploy FancyHolograms (release)
on:
workflow_dispatch:
jobs:
deploy-plugin:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build FancyHolograms
run: ./gradlew :plugins:fancyholograms:shadowJar
- name: Build deployment tool
run: ./gradlew :tools:deployment:shadowJar
- name: Deploy
env:
MODRINTH_API_KEY: ${{ secrets.MODRINTH_API_KEY }}
run:
cd tools/deployment/build/libs &&
java -jar deployment.jar ../../../../plugins/fancyholograms-v2/release_deployment_config.json
- name: Publish to reposilite (releases)
run: ./gradlew :plugins:fancyholograms-v2:api:publishAllPublicationsToFancypluginsReleasesRepository
- name: Publish to reposilite (snapshots)
run: ./gradlew :plugins:fancyholograms-v2:api:publishAllPublicationsToFancypluginsSnapshotsRepository

View File

@@ -0,0 +1,47 @@
name: Deploy FancyHolograms (release)
on:
workflow_dispatch:
jobs:
deploy-plugin:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build FancyHolograms
run: ./gradlew :plugins:fancyholograms:shadowJar
- name: Build deployment tool
run: ./gradlew :tools:deployment:shadowJar
- name: Deploy
env:
MODRINTH_API_KEY: ${{ secrets.MODRINTH_API_KEY }}
run:
cd tools/deployment/build/libs &&
java -jar deployment.jar ../../../../plugins/fancyholograms/release_deployment_config.json
- name: Publish to reposilite (releases)
run: ./gradlew :plugins:fancyholograms:api:publishAllPublicationsToFancypluginsReleasesRepository
- name: Publish to reposilite (snapshots)
run: ./gradlew :plugins:fancyholograms:api:publishAllPublicationsToFancypluginsSnapshotsRepository

View File

@@ -0,0 +1,47 @@
name: Deploy FancyNpcs (release)
on:
workflow_dispatch:
jobs:
deploy-plugin:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build FancyNpcs
run: ./gradlew :plugins:fancynpcs:shadowJar
- name: Build deployment tool
run: ./gradlew :tools:deployment:shadowJar
- name: Deploy
env:
MODRINTH_API_KEY: ${{ secrets.MODRINTH_API_KEY }}
run:
cd tools/deployment/build/libs &&
java -jar deployment.jar ../../../../plugins/fancynpcs/release_deployment_config.json
- name: Publish to reposilite (releases)
run: ./gradlew :plugins:fancynpcs:api:publishAllPublicationsToFancypluginsReleasesRepository
- name: Publish to reposilite (snapshots)
run: ./gradlew :plugins:fancynpcs:api:publishAllPublicationsToFancypluginsSnapshotsRepository

View File

@@ -0,0 +1,44 @@
name: Deploy FancyHolograms (snapshot)
on:
workflow_dispatch:
jobs:
deploy-plugin:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build FancyHolograms
run: ./gradlew :plugins:fancyholograms-v2:shadowJar
- name: Build deployment tool
run: ./gradlew :tools:deployment:shadowJar
- name: Deploy
env:
MODRINTH_API_KEY: ${{ secrets.MODRINTH_API_KEY }}
run:
cd tools/deployment/build/libs &&
java -jar deployment.jar ../../../../plugins/fancyholograms-v2/snapshot_deployment_config.json
- name: Publish to reposilite (snapshots)
run: ./gradlew :plugins:fancyholograms-v2:api:publishAllPublicationsToFancypluginsSnapshotsRepository

View File

@@ -0,0 +1,44 @@
name: Deploy FancyHolograms (snapshot)
on:
workflow_dispatch:
jobs:
deploy-plugin:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build FancyHolograms
run: ./gradlew :plugins:fancyholograms:shadowJar
- name: Build deployment tool
run: ./gradlew :tools:deployment:shadowJar
- name: Deploy
env:
MODRINTH_API_KEY: ${{ secrets.MODRINTH_API_KEY }}
run:
cd tools/deployment/build/libs &&
java -jar deployment.jar ../../../../plugins/fancyholograms/snapshot_deployment_config.json
- name: Publish to reposilite (snapshots)
run: ./gradlew :plugins:fancyholograms:api:publishAllPublicationsToFancypluginsSnapshotsRepository

View File

@@ -0,0 +1,44 @@
name: Deploy FancyNpcs (snapshot)
on:
workflow_dispatch:
jobs:
deploy-plugin:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Cache Gradle dependencies
uses: actions/cache@v4
with:
path: ~/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '21'
- name: Modify gradlew permissions
run: chmod +x ./gradlew
- name: Build FancyNpcs
run: ./gradlew :plugins:fancynpcs:shadowJar
- name: Build deployment tool
run: ./gradlew :tools:deployment:shadowJar
- name: Deploy
env:
MODRINTH_API_KEY: ${{ secrets.MODRINTH_API_KEY }}
run:
cd tools/deployment/build/libs &&
java -jar deployment.jar ../../../../plugins/fancynpcs/snapshot_deployment_config.json
- name: Publish to reposilite (snapshots)
run: ./gradlew :plugins:fancynpcs:api:publishAllPublicationsToFancypluginsSnapshotsRepository