From cdaab07aa58366f2fc74c6d7a3d1d00202af2a1d Mon Sep 17 00:00:00 2001 From: Lucas Petrino Date: Tue, 21 Jan 2025 00:44:33 +1300 Subject: [PATCH 1/5] Start on NeoForge support --- README.md | 25 +++--- build.gradle | 84 ++++++++++++------ fabric/build.gradle | 56 +++++------- forge/build.gradle | 46 ++++------ gradle.properties | 17 ++-- neoforge/build.gradle | 56 ++++++++++++ neoforge/gradle.properties | 1 + .../lucaslah/nrb/NoReportButtonNeoForge.java | 7 ++ .../resources/META-INF/neoforge.mods.toml | 31 +++++++ neoforge/src/main/resources/icon.png | Bin 0 -> 6564 bytes neoforge/src/main/resources/pack.mcmeta | 6 ++ settings.gradle | 1 + 12 files changed, 220 insertions(+), 110 deletions(-) create mode 100644 neoforge/build.gradle create mode 100644 neoforge/gradle.properties create mode 100644 neoforge/src/main/java/me/lucaslah/nrb/NoReportButtonNeoForge.java create mode 100644 neoforge/src/main/resources/META-INF/neoforge.mods.toml create mode 100644 neoforge/src/main/resources/icon.png create mode 100644 neoforge/src/main/resources/pack.mcmeta diff --git a/README.md b/README.md index 7dba5ca..3a83b28 100755 --- a/README.md +++ b/README.md @@ -13,18 +13,19 @@ Should be compatible with any mods, but if you do find a mod that is not please See below for what NRB version to use. ## Released Versions -| Version | MC Version | Mod loaders | Git tag | Supported | -|------------|---------------|----------------------|-------------------------------------------------------------------------------------|-----------| -| 1.6.0 | 1.21 | fabric, forge, quilt | [1.6.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.6.0) | yes | -| 1.6.0-beta | 1.21 | fabric | [1.6.0-beta](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.6.0-beta) | no | -| 1.5.0 | 1.20.1-1.20.6 | fabric, forge, quilt | [1.5.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.5.0) | yes | -| 1.4.1 | 1.19.4 | fabric, forge, quilt | [1.4.1](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.4.1) | no | -| 1.4.0 | 1.19.3 | fabric, forge, quilt | [1.4.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.4.0) | no | -| 1.3.1 | 1.19.3 | fabric | [1.3.1](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.3.1) | no | -| 1.3.0 | 1.19.3 | fabric | [1.3.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.3.0) | no | -| 1.2.1 | 1.19.1-1.19.2 | fabric | [1.2.1](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.2.1) | no | -| 1.2.0 | 1.19.1-1.19.2 | fabric | [1.2.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.2.0) | no | -| 1.1.0 | 1.19.1-1.19.2 | fabric | [1.1.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.1.0) | no | +| Version | MC Version | Mod loaders | Git tag | Supported | +|------------|---------------|-------------------------|-------------------------------------------------------------------------------------|-----------| +| 1.6.1 | 1.21 | fabric, forge, neoforge | | yes | +| 1.6.0 | 1.21 | fabric, forge, quilt | [1.6.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.6.0) | no | +| 1.6.0-beta | 1.21 | fabric | [1.6.0-beta](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.6.0-beta) | no | +| 1.5.0 | 1.20.1-1.20.6 | fabric, forge, quilt | [1.5.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.5.0) | yes | +| 1.4.1 | 1.19.4 | fabric, forge, quilt | [1.4.1](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.4.1) | no | +| 1.4.0 | 1.19.3 | fabric, forge, quilt | [1.4.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.4.0) | no | +| 1.3.1 | 1.19.3 | fabric | [1.3.1](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.3.1) | no | +| 1.3.0 | 1.19.3 | fabric | [1.3.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.3.0) | no | +| 1.2.1 | 1.19.1-1.19.2 | fabric | [1.2.1](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.2.1) | no | +| 1.2.0 | 1.19.1-1.19.2 | fabric | [1.2.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.2.0) | no | +| 1.1.0 | 1.19.1-1.19.2 | fabric | [1.1.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.1.0) | no | ## Links Curseforge: https://www.curseforge.com/minecraft/mc-mods/no-report-button
diff --git a/build.gradle b/build.gradle index 500c565..6025231 100755 --- a/build.gradle +++ b/build.gradle @@ -1,41 +1,73 @@ plugins { - id "architectury-plugin" version "3.4.155" - id "dev.architectury.loom" version "1.7-SNAPSHOT" apply false + id 'dev.architectury.loom' version '1.7-SNAPSHOT' apply false + id 'architectury-plugin' version '3.4-SNAPSHOT' + id 'com.github.johnrengelman.shadow' version '8.1.1' apply false } architectury { - injectInjectables = false - minecraft = rootProject.properties["minecraft_version"] -} - -subprojects { - apply plugin: "dev.architectury.loom" - - loom { - silentMojangMappingsLicense() - } - - dependencies { - minecraft "com.mojang:minecraft:${rootProject.properties["minecraft_version"]}" - mappings "net.fabricmc:yarn:${rootProject.properties["yarn_mappings"]}:v2" - } + minecraft = project.minecraft_version } allprojects { - apply plugin: "java" - apply plugin: "architectury-plugin" - apply plugin: "maven-publish" + group = rootProject.maven_group + version = rootProject.mod_version +} - archivesBaseName = rootProject.properties["archives_base_name"] - version = rootProject.properties["mod_version"] - group = rootProject.properties["maven_group"] +subprojects { + apply plugin: 'dev.architectury.loom' + apply plugin: 'architectury-plugin' + apply plugin: 'maven-publish' - tasks.withType(JavaCompile).configureEach { - options.encoding = "UTF-8" - options.release.set(21) + base { + // Set up a suffixed format for the mod jar names, e.g. `example-fabric`. + archivesName = "$rootProject.archives_name-$project.name" + } + + repositories { + // Add repositories to retrieve artifacts from in here. + // You should only use this when depending on other mods because + // Loom adds the essential maven repositories to download Minecraft and libraries from automatically. + // See https://docs.gradle.org/current/userguide/declaring_repositories.html + // for more information about repositories. + } + + dependencies { + minecraft "net.minecraft:minecraft:$rootProject.minecraft_version" + mappings loom.layered { + it.mappings("net.fabricmc:yarn:$rootProject.yarn_mappings:v2") + it.mappings("dev.architectury:yarn-mappings-patch-neoforge:$rootProject.yarn_mappings_patch_neoforge_version") + } } java { + // Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task + // if it is present. + // If you remove this line, sources will not be generated. withSourcesJar() + + sourceCompatibility = JavaVersion.VERSION_21 + targetCompatibility = JavaVersion.VERSION_21 + } + + tasks.withType(JavaCompile).configureEach { + it.options.release = 21 + } + + // Configure Maven publishing. + publishing { + publications { + mavenJava(MavenPublication) { + artifactId = base.archivesName.get() + from components.java + } + } + + // See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing. + repositories { + // Add repositories to publish to here. + // Notice: This block does NOT have the same function as the block in the top level. + // The repositories here will be used for publishing your artifact, not for + // retrieving dependencies. + } } } diff --git a/fabric/build.gradle b/fabric/build.gradle index c0fe060..c5c8a33 100755 --- a/fabric/build.gradle +++ b/fabric/build.gradle @@ -1,63 +1,49 @@ plugins { - id "com.github.johnrengelman.shadow" version "8.1.1" + id 'com.github.johnrengelman.shadow' } architectury { - injectInjectables = false platformSetupLoomIde() fabric() } configurations { - common - shadowCommon + common { + canBeResolved = true + canBeConsumed = false + } compileClasspath.extendsFrom common runtimeClasspath.extendsFrom common developmentFabric.extendsFrom common - archivesBaseName = rootProject.archives_base_name + "-fabric" + + // Files in this configuration will be bundled into your mod using the Shadow plugin. + // Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files. + shadowBundle { + canBeResolved = true + canBeConsumed = false + } } dependencies { - modImplementation "net.fabricmc:fabric-loader:${rootProject.properties["fabric_loader_version"]}" + modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version" - common(project(path: ":common", configuration: "namedElements")) { transitive false } - shadowCommon(project(path: ":common", configuration: "transformProductionFabric")) { transitive false } + common(project(path: ':common', configuration: 'namedElements')) { transitive false } + shadowBundle project(path: ':common', configuration: 'transformProductionFabric') } processResources { - inputs.property "version", project.version + inputs.property 'version', project.version - filesMatching("fabric.mod.json") { - expand "version": project.version + filesMatching('fabric.mod.json') { + expand version: project.version } } - shadowJar { - exclude "architectury.common.json" - - configurations = [project.configurations.shadowCommon] - setArchiveClassifier("dev-shadow") + configurations = [project.configurations.shadowBundle] + archiveClassifier = 'dev-shadow' } remapJar { - input.set shadowJar.archiveFile - dependsOn shadowJar - setArchiveClassifier(null) -} - -jar { - setArchiveClassifier("dev") -} - -sourcesJar { - def commonSources = project(":common").sourcesJar - dependsOn commonSources - from commonSources.archiveFile.map { zipTree(it) } -} - -components.java { - withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) { - skip() - } + inputFile.set shadowJar.archiveFile } diff --git a/forge/build.gradle b/forge/build.gradle index cbbd4df..d4eb93b 100755 --- a/forge/build.gradle +++ b/forge/build.gradle @@ -1,9 +1,8 @@ plugins { - id "com.github.johnrengelman.shadow" version "8.1.1" + id 'com.github.johnrengelman.shadow' } architectury { - injectInjectables = false platformSetupLoomIde() forge() } @@ -15,19 +14,27 @@ loom { } configurations { - common - shadowCommon + common { + canBeResolved = true + canBeConsumed = false + } compileClasspath.extendsFrom common runtimeClasspath.extendsFrom common developmentForge.extendsFrom common - archivesBaseName = rootProject.archives_base_name + "-forge" + + // Files in this configuration will be bundled into your mod using the Shadow plugin. + // Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files. + shadowBundle { + canBeResolved = true + canBeConsumed = false + } } dependencies { forge "net.minecraftforge:forge:${rootProject.properties["forge_version"]}" common(project(path: ":common", configuration: "namedElements")) { transitive false } - shadowCommon(project(path: ":common", configuration: "transformProductionForge")) { transitive = false } + shadowBundle(project(path: ":common", configuration: "transformProductionForge")) { transitive = false } } processResources { @@ -39,31 +46,10 @@ processResources { } shadowJar { - exclude "fabric.mod.json" - exclude "architectury.common.json" - - configurations = [project.configurations.shadowCommon] - setArchiveClassifier("dev-shadow") + configurations = [project.configurations.shadowBundle] + archiveClassifier = 'dev-shadow' } remapJar { - input.set shadowJar.archiveFile - dependsOn shadowJar - setArchiveClassifier(null) -} - -jar { - setArchiveClassifier("dev") -} - -sourcesJar { - def commonSources = project(":common").sourcesJar - dependsOn commonSources - from commonSources.archiveFile.map { zipTree(it) } -} - -components.java { - withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) { - skip() - } + inputFile.set shadowJar.archiveFile } diff --git a/gradle.properties b/gradle.properties index 6d4be3c..6f481be 100755 --- a/gradle.properties +++ b/gradle.properties @@ -1,17 +1,20 @@ # Done to increase the memory available to gradle. org.gradle.jvmargs=-Xmx4G +org.gradle.parallel=true + +# Mod Properties +mod_version = 1.6.1 +maven_group = me.lucaslah +archives_name = no-report-button +enabled_platforms=fabric,forge,neoforge # Minecraft Properties minecraft_version=1.21 yarn_mappings=1.21+build.7 -fabric_loader_version=0.15.11 -enabled_platforms=fabric,forge - -# Mod Properties -mod_version = 1.6.0 -maven_group = me.lucaslah -archives_base_name = no-report-button # Dependencies fabric_version=0.100.1+1.21 +fabric_loader_version=0.15.11 forge_version=1.21-51.0.5 +neoforge_version=21.0.167 +yarn_mappings_patch_neoforge_version = 1.21+build.4 \ No newline at end of file diff --git a/neoforge/build.gradle b/neoforge/build.gradle new file mode 100644 index 0000000..739f22c --- /dev/null +++ b/neoforge/build.gradle @@ -0,0 +1,56 @@ +plugins { + id 'com.github.johnrengelman.shadow' +} + +architectury { + platformSetupLoomIde() + neoForge() +} + +configurations { + common { + canBeResolved = true + canBeConsumed = false + } + compileClasspath.extendsFrom common + runtimeClasspath.extendsFrom common + developmentNeoForge.extendsFrom common + + // Files in this configuration will be bundled into your mod using the Shadow plugin. + // Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files. + shadowBundle { + canBeResolved = true + canBeConsumed = false + } +} + +repositories { + maven { + name = 'NeoForged' + url = 'https://maven.neoforged.net/releases' + } +} + +dependencies { + neoForge "net.neoforged:neoforge:$rootProject.neoforge_version" + + common(project(path: ':common', configuration: 'namedElements')) { transitive false } + shadowBundle project(path: ':common', configuration: 'transformProductionNeoForge') +} + +processResources { + inputs.property 'version', project.version + + filesMatching('META-INF/neoforge.mods.toml') { + expand version: project.version + } +} + +shadowJar { + configurations = [project.configurations.shadowBundle] + archiveClassifier = 'dev-shadow' +} + +remapJar { + inputFile.set shadowJar.archiveFile +} diff --git a/neoforge/gradle.properties b/neoforge/gradle.properties new file mode 100644 index 0000000..2914393 --- /dev/null +++ b/neoforge/gradle.properties @@ -0,0 +1 @@ +loom.platform=neoforge \ No newline at end of file diff --git a/neoforge/src/main/java/me/lucaslah/nrb/NoReportButtonNeoForge.java b/neoforge/src/main/java/me/lucaslah/nrb/NoReportButtonNeoForge.java new file mode 100644 index 0000000..f9cb809 --- /dev/null +++ b/neoforge/src/main/java/me/lucaslah/nrb/NoReportButtonNeoForge.java @@ -0,0 +1,7 @@ +package me.lucaslah.nrb; + +import net.neoforged.fml.common.Mod; + +@Mod("noreportbutton") +public class NoReportButtonNeoForge { +} diff --git a/neoforge/src/main/resources/META-INF/neoforge.mods.toml b/neoforge/src/main/resources/META-INF/neoforge.mods.toml new file mode 100644 index 0000000..1db0ae0 --- /dev/null +++ b/neoforge/src/main/resources/META-INF/neoforge.mods.toml @@ -0,0 +1,31 @@ +modLoader = "javafml" +loaderVersion = "[0,)" +license = "GNU LESSER GENERAL PUBLIC LICENSE" +clientSideOnly=true + +[[mods]] +modId = "noreportbutton" +version = "${version}" +displayName = "No Report Button" +authors = "Lucaslah" +description = ''' +Removes the chat report button from the multiplayer menu screen +''' +logoFile = "icon.png" + +[[dependencies.noreportbutton]] +modId = "neoforge" +mandatory = true +versionRange = "[0,)" +ordering = "NONE" +side = "CLIENT" + +[[dependencies.noreportbutton]] +modId = "minecraft" +mandatory = true +versionRange = "[1.21,)" +ordering = "NONE" +side = "CLIENT" + +[[mixins]] +config = "noreportbutton.mixins.json" \ No newline at end of file diff --git a/neoforge/src/main/resources/icon.png b/neoforge/src/main/resources/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c0975fd88319d4c445b7bc8aefe302a96fabd36f GIT binary patch literal 6564 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 literal 0 HcmV?d00001 diff --git a/neoforge/src/main/resources/pack.mcmeta b/neoforge/src/main/resources/pack.mcmeta new file mode 100644 index 0000000..0cf0874 --- /dev/null +++ b/neoforge/src/main/resources/pack.mcmeta @@ -0,0 +1,6 @@ +{ + "pack": { + "description": "NoReportButton", + "pack_format": 9 + } +} diff --git a/settings.gradle b/settings.gradle index ec4a829..5195848 100755 --- a/settings.gradle +++ b/settings.gradle @@ -17,3 +17,4 @@ rootProject.name = "No-Report-Button" include 'common' include 'fabric' include 'forge' +include 'neoforge' \ No newline at end of file From 69810428d4da989e662cfcf746616999d1a482dd Mon Sep 17 00:00:00 2001 From: Lucas Petrino Date: Tue, 21 Jan 2025 00:54:41 +1300 Subject: [PATCH 2/5] Add build CI --- .github/workflows/build.yml | 68 +++++++++++++++++++++++++++++++++++++ README.md | 2 +- build.gradle | 1 - 3 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..57e0126 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,68 @@ +name: Build + +on: + push: + pull_request: + +jobs: + build: + + runs-on: ubuntu-latest + permissions: + contents: read + + steps: + - uses: actions/checkout@v4 + - name: Set up JDK 21 + uses: actions/setup-java@v4 + with: + java-version: '21' + distribution: 'temurin' + + # Configure Gradle for optimal use in GitHub Actions, including caching of downloaded dependencies. + # See: https://github.com/gradle/actions/blob/main/setup-gradle/README.md + - name: Setup Gradle + uses: gradle/actions/setup-gradle@af1da67850ed9a4cedd57bfd976089dd991e2582 # v4.0.0 + + - name: Build + run: ./gradlew build + + - name: Set Commit SHA + id: commit_short_sha + run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT + + - name: Find Build Artifacts + run: | + mkdir -p artifacts + + find . -type d -path '*/build/libs' | while read -r dir; do + project_name=$(basename "$(dirname "$(dirname "$dir")")") + mkdir -p "artifacts/$project_name" + cp -r "$dir"/* "artifacts/$project_name/" + done + + - name: Upload Artifacts + uses: actions/upload-artifact@v4 + with: + name: 'NRB-Build-${{ steps.vars.outputs.sha_short }}' + path: 'artifacts/' + + + dependency-submission: + + runs-on: ubuntu-latest + permissions: + contents: write + + steps: + - uses: actions/checkout@v4 + - name: Set up JDK 21 + uses: actions/setup-java@v4 + with: + java-version: '21' + distribution: 'temurin' + + # Generates and submits a dependency graph, enabling Dependabot Alerts for all project dependencies. + # See: https://github.com/gradle/actions/blob/main/dependency-submission/README.md + - name: Generate and submit dependency graph + uses: gradle/actions/dependency-submission@af1da67850ed9a4cedd57bfd976089dd991e2582 # v4.0.0 diff --git a/README.md b/README.md index 3a83b28..2ebfe87 100755 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ See below for what NRB version to use. ## Released Versions | Version | MC Version | Mod loaders | Git tag | Supported | |------------|---------------|-------------------------|-------------------------------------------------------------------------------------|-----------| -| 1.6.1 | 1.21 | fabric, forge, neoforge | | yes | +| 1.6.1 | 1.21 | fabric, forge, neoforge | [1.6.1](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.6.1) | yes | | 1.6.0 | 1.21 | fabric, forge, quilt | [1.6.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.6.0) | no | | 1.6.0-beta | 1.21 | fabric | [1.6.0-beta](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.6.0-beta) | no | | 1.5.0 | 1.20.1-1.20.6 | fabric, forge, quilt | [1.5.0](https://github.com/Lucaslah/No-Report-Button/releases/tag/v1.5.0) | yes | diff --git a/build.gradle b/build.gradle index 6025231..51db0c3 100755 --- a/build.gradle +++ b/build.gradle @@ -19,7 +19,6 @@ subprojects { apply plugin: 'maven-publish' base { - // Set up a suffixed format for the mod jar names, e.g. `example-fabric`. archivesName = "$rootProject.archives_name-$project.name" } From 46999f305ab742d098d3f00d60d1a0c6aeb13c3f Mon Sep 17 00:00:00 2001 From: Lucas Petrino Date: Tue, 21 Jan 2025 01:02:24 +1300 Subject: [PATCH 3/5] Fix CI build final artifact name --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 57e0126..72fe331 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -44,7 +44,7 @@ jobs: - name: Upload Artifacts uses: actions/upload-artifact@v4 with: - name: 'NRB-Build-${{ steps.vars.outputs.sha_short }}' + name: 'NRB-Build-${{ steps.commit_short_sha.outputs.sha_short }}' path: 'artifacts/' From 868747db89e7bb8b5b219937a015def0627d257e Mon Sep 17 00:00:00 2001 From: Lucas Petrino Date: Tue, 21 Jan 2025 01:25:10 +1300 Subject: [PATCH 4/5] CI: Prevent dependency-submission running when not needed --- .github/workflows/build.yml | 22 +--------------------- .github/workflows/gradle.yml | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 21 deletions(-) create mode 100644 .github/workflows/gradle.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 72fe331..a64e2b6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 permissions: contents: read @@ -46,23 +46,3 @@ jobs: with: name: 'NRB-Build-${{ steps.commit_short_sha.outputs.sha_short }}' path: 'artifacts/' - - - dependency-submission: - - runs-on: ubuntu-latest - permissions: - contents: write - - steps: - - uses: actions/checkout@v4 - - name: Set up JDK 21 - uses: actions/setup-java@v4 - with: - java-version: '21' - distribution: 'temurin' - - # Generates and submits a dependency graph, enabling Dependabot Alerts for all project dependencies. - # See: https://github.com/gradle/actions/blob/main/dependency-submission/README.md - - name: Generate and submit dependency graph - uses: gradle/actions/dependency-submission@af1da67850ed9a4cedd57bfd976089dd991e2582 # v4.0.0 diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml new file mode 100644 index 0000000..f84ebd0 --- /dev/null +++ b/.github/workflows/gradle.yml @@ -0,0 +1,25 @@ +name: Gradle + +on: + push: + branches: ["develop"] + +jobs: + dependency-submission: + + runs-on: ubuntu-24.04 + permissions: + contents: write + + steps: + - uses: actions/checkout@v4 + - name: Set up JDK 21 + uses: actions/setup-java@v4 + with: + java-version: '21' + distribution: 'temurin' + + # Generates and submits a dependency graph, enabling Dependabot Alerts for all project dependencies. + # See: https://github.com/gradle/actions/blob/main/dependency-submission/README.md + - name: Generate and submit dependency graph + uses: gradle/actions/dependency-submission@af1da67850ed9a4cedd57bfd976089dd991e2582 # v4.0.0 From cab7d75cf7cf194ea4e3cbcbc5a8f3887e979dfc Mon Sep 17 00:00:00 2001 From: Lucas Petrino Date: Tue, 21 Jan 2025 11:18:59 +1300 Subject: [PATCH 5/5] [skip ci] Prevent build from running twice on PR --- .github/workflows/build.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a64e2b6..637e395 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,7 +2,6 @@ name: Build on: push: - pull_request: jobs: build: