mirror of
				https://hub.gitmirror.com/https://github.com/gradle/gradle-build-action
				synced 2025-10-31 18:10:05 +08:00 
			
		
		
		
	Compare commits
	
		
			No commits in common. "main" and "v2.0-beta.3" have entirely different histories.
		
	
	
		
			main
			...
			v2.0-beta.
		
	
		
							
								
								
									
										3
									
								
								.eslintignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.eslintignore
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,3 @@ | ||||
| dist/ | ||||
| lib/ | ||||
| node_modules/ | ||||
							
								
								
									
										52
									
								
								.eslintrc.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								.eslintrc.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,52 @@ | ||||
| { | ||||
|     "plugins": ["jest", "@typescript-eslint"], | ||||
|     "extends": ["plugin:github/recommended"], | ||||
|     "parser": "@typescript-eslint/parser", | ||||
|     "parserOptions": { | ||||
|       "ecmaVersion": 9, | ||||
|       "sourceType": "module", | ||||
|       "project": "./tsconfig.json" | ||||
|     }, | ||||
|     "rules": { | ||||
|       "eslint-comments/no-use": "off", | ||||
|       "import/no-namespace": "off", | ||||
|       "no-unused-vars": "off", | ||||
|       "@typescript-eslint/no-unused-vars": "error", | ||||
|       "@typescript-eslint/explicit-member-accessibility": ["error", {"accessibility": "no-public"}], | ||||
|       "@typescript-eslint/no-require-imports": "error", | ||||
|       "@typescript-eslint/array-type": "error", | ||||
|       "@typescript-eslint/await-thenable": "error", | ||||
|       "camelcase": "off", | ||||
|       "@typescript-eslint/explicit-function-return-type": ["error", {"allowExpressions": true}], | ||||
|       "@typescript-eslint/func-call-spacing": ["error", "never"], | ||||
|       "@typescript-eslint/no-array-constructor": "error", | ||||
|       "@typescript-eslint/no-empty-interface": "error", | ||||
|       "@typescript-eslint/no-explicit-any": "error", | ||||
|       "@typescript-eslint/no-extraneous-class": "error", | ||||
|       "@typescript-eslint/no-for-in-array": "error", | ||||
|       "@typescript-eslint/no-inferrable-types": "error", | ||||
|       "@typescript-eslint/no-misused-new": "error", | ||||
|       "@typescript-eslint/no-namespace": "error", | ||||
|       "@typescript-eslint/no-non-null-assertion": "warn", | ||||
|       "@typescript-eslint/no-unnecessary-qualifier": "error", | ||||
|       "@typescript-eslint/no-unnecessary-type-assertion": "error", | ||||
|       "@typescript-eslint/no-useless-constructor": "error", | ||||
|       "@typescript-eslint/no-var-requires": "error", | ||||
|       "@typescript-eslint/prefer-for-of": "warn", | ||||
|       "@typescript-eslint/prefer-function-type": "warn", | ||||
|       "@typescript-eslint/prefer-includes": "error", | ||||
|       "@typescript-eslint/prefer-string-starts-ends-with": "error", | ||||
|       "@typescript-eslint/promise-function-async": "error", | ||||
|       "@typescript-eslint/require-array-sort-compare": ["error", {"ignoreStringArrays":  true}], | ||||
|       "@typescript-eslint/restrict-plus-operands": "error", | ||||
|       "semi": "off", | ||||
|       "@typescript-eslint/semi": ["error", "never"], | ||||
|       "@typescript-eslint/type-annotation-spacing": "error", | ||||
|       "@typescript-eslint/unbound-method": "error" | ||||
|     }, | ||||
|     "env": { | ||||
|       "node": true, | ||||
|       "es6": true, | ||||
|       "jest/globals": true | ||||
|     } | ||||
|   } | ||||
							
								
								
									
										3
									
								
								.github/dco.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.github/dco.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,3 +0,0 @@ | ||||
| # Disable sign-off checking for members of the Gradle GitHub organization | ||||
| require: | ||||
|   members: false | ||||
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										249
									
								
								.github/workflow-samples/gradle-plugin/gradlew
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										249
									
								
								.github/workflow-samples/gradle-plugin/gradlew
									
									
									
									
										vendored
									
									
								
							| @ -1,249 +0,0 @@ | ||||
| #!/bin/sh | ||||
| 
 | ||||
| # | ||||
| # Copyright © 2015-2021 the original authors. | ||||
| # | ||||
| # Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| # you may not use this file except in compliance with the License. | ||||
| # You may obtain a copy of the License at | ||||
| # | ||||
| #      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| # | ||||
| # Unless required by applicable law or agreed to in writing, software | ||||
| # distributed under the License is distributed on an "AS IS" BASIS, | ||||
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| # See the License for the specific language governing permissions and | ||||
| # limitations under the License. | ||||
| # | ||||
| 
 | ||||
| ############################################################################## | ||||
| # | ||||
| #   Gradle start up script for POSIX generated by Gradle. | ||||
| # | ||||
| #   Important for running: | ||||
| # | ||||
| #   (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is | ||||
| #       noncompliant, but you have some other compliant shell such as ksh or | ||||
| #       bash, then to run this script, type that shell name before the whole | ||||
| #       command line, like: | ||||
| # | ||||
| #           ksh Gradle | ||||
| # | ||||
| #       Busybox and similar reduced shells will NOT work, because this script | ||||
| #       requires all of these POSIX shell features: | ||||
| #         * functions; | ||||
| #         * expansions «$var», «${var}», «${var:-default}», «${var+SET}», | ||||
| #           «${var#prefix}», «${var%suffix}», and «$( cmd )»; | ||||
| #         * compound commands having a testable exit status, especially «case»; | ||||
| #         * various built-in commands including «command», «set», and «ulimit». | ||||
| # | ||||
| #   Important for patching: | ||||
| # | ||||
| #   (2) This script targets any POSIX shell, so it avoids extensions provided | ||||
| #       by Bash, Ksh, etc; in particular arrays are avoided. | ||||
| # | ||||
| #       The "traditional" practice of packing multiple parameters into a | ||||
| #       space-separated string is a well documented source of bugs and security | ||||
| #       problems, so this is (mostly) avoided, by progressively accumulating | ||||
| #       options in "$@", and eventually passing that to Java. | ||||
| # | ||||
| #       Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, | ||||
| #       and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; | ||||
| #       see the in-line comments for details. | ||||
| # | ||||
| #       There are tweaks for specific operating systems such as AIX, CygWin, | ||||
| #       Darwin, MinGW, and NonStop. | ||||
| # | ||||
| #   (3) This script is generated from the Groovy template | ||||
| #       https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt | ||||
| #       within the Gradle project. | ||||
| # | ||||
| #       You can find Gradle at https://github.com/gradle/gradle/. | ||||
| # | ||||
| ############################################################################## | ||||
| 
 | ||||
| # Attempt to set APP_HOME | ||||
| 
 | ||||
| # Resolve links: $0 may be a link | ||||
| app_path=$0 | ||||
| 
 | ||||
| # Need this for daisy-chained symlinks. | ||||
| while | ||||
|     APP_HOME=${app_path%"${app_path##*/}"}  # leaves a trailing /; empty if no leading path | ||||
|     [ -h "$app_path" ] | ||||
| do | ||||
|     ls=$( ls -ld "$app_path" ) | ||||
|     link=${ls#*' -> '} | ||||
|     case $link in             #( | ||||
|       /*)   app_path=$link ;; #( | ||||
|       *)    app_path=$APP_HOME$link ;; | ||||
|     esac | ||||
| done | ||||
| 
 | ||||
| # This is normally unused | ||||
| # shellcheck disable=SC2034 | ||||
| APP_BASE_NAME=${0##*/} | ||||
| # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) | ||||
| APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit | ||||
| 
 | ||||
| # Use the maximum available, or set MAX_FD != -1 to use that value. | ||||
| MAX_FD=maximum | ||||
| 
 | ||||
| warn () { | ||||
|     echo "$*" | ||||
| } >&2 | ||||
| 
 | ||||
| die () { | ||||
|     echo | ||||
|     echo "$*" | ||||
|     echo | ||||
|     exit 1 | ||||
| } >&2 | ||||
| 
 | ||||
| # OS specific support (must be 'true' or 'false'). | ||||
| cygwin=false | ||||
| msys=false | ||||
| darwin=false | ||||
| nonstop=false | ||||
| case "$( uname )" in                #( | ||||
|   CYGWIN* )         cygwin=true  ;; #( | ||||
|   Darwin* )         darwin=true  ;; #( | ||||
|   MSYS* | MINGW* )  msys=true    ;; #( | ||||
|   NONSTOP* )        nonstop=true ;; | ||||
| esac | ||||
| 
 | ||||
| CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| # Determine the Java command to use to start the JVM. | ||||
| if [ -n "$JAVA_HOME" ] ; then | ||||
|     if [ -x "$JAVA_HOME/jre/sh/java" ] ; then | ||||
|         # IBM's JDK on AIX uses strange locations for the executables | ||||
|         JAVACMD=$JAVA_HOME/jre/sh/java | ||||
|     else | ||||
|         JAVACMD=$JAVA_HOME/bin/java | ||||
|     fi | ||||
|     if [ ! -x "$JAVACMD" ] ; then | ||||
|         die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
|     fi | ||||
| else | ||||
|     JAVACMD=java | ||||
|     if ! command -v java >/dev/null 2>&1 | ||||
|     then | ||||
|         die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
|     fi | ||||
| fi | ||||
| 
 | ||||
| # Increase the maximum file descriptors if we can. | ||||
| if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then | ||||
|     case $MAX_FD in #( | ||||
|       max*) | ||||
|         # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. | ||||
|         # shellcheck disable=SC2039,SC3045 | ||||
|         MAX_FD=$( ulimit -H -n ) || | ||||
|             warn "Could not query maximum file descriptor limit" | ||||
|     esac | ||||
|     case $MAX_FD in  #( | ||||
|       '' | soft) :;; #( | ||||
|       *) | ||||
|         # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. | ||||
|         # shellcheck disable=SC2039,SC3045 | ||||
|         ulimit -n "$MAX_FD" || | ||||
|             warn "Could not set maximum file descriptor limit to $MAX_FD" | ||||
|     esac | ||||
| fi | ||||
| 
 | ||||
| # Collect all arguments for the java command, stacking in reverse order: | ||||
| #   * args from the command line | ||||
| #   * the main class name | ||||
| #   * -classpath | ||||
| #   * -D...appname settings | ||||
| #   * --module-path (only if needed) | ||||
| #   * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. | ||||
| 
 | ||||
| # For Cygwin or MSYS, switch paths to Windows format before running java | ||||
| if "$cygwin" || "$msys" ; then | ||||
|     APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) | ||||
|     CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) | ||||
| 
 | ||||
|     JAVACMD=$( cygpath --unix "$JAVACMD" ) | ||||
| 
 | ||||
|     # Now convert the arguments - kludge to limit ourselves to /bin/sh | ||||
|     for arg do | ||||
|         if | ||||
|             case $arg in                                #( | ||||
|               -*)   false ;;                            # don't mess with options #( | ||||
|               /?*)  t=${arg#/} t=/${t%%/*}              # looks like a POSIX filepath | ||||
|                     [ -e "$t" ] ;;                      #( | ||||
|               *)    false ;; | ||||
|             esac | ||||
|         then | ||||
|             arg=$( cygpath --path --ignore --mixed "$arg" ) | ||||
|         fi | ||||
|         # Roll the args list around exactly as many times as the number of | ||||
|         # args, so each arg winds up back in the position where it started, but | ||||
|         # possibly modified. | ||||
|         # | ||||
|         # NB: a `for` loop captures its iteration list before it begins, so | ||||
|         # changing the positional parameters here affects neither the number of | ||||
|         # iterations, nor the values presented in `arg`. | ||||
|         shift                   # remove old arg | ||||
|         set -- "$@" "$arg"      # push replacement arg | ||||
|     done | ||||
| fi | ||||
| 
 | ||||
| 
 | ||||
| # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' | ||||
| 
 | ||||
| # Collect all arguments for the java command: | ||||
| #   * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, | ||||
| #     and any embedded shellness will be escaped. | ||||
| #   * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be | ||||
| #     treated as '${Hostname}' itself on the command line. | ||||
| 
 | ||||
| set -- \ | ||||
|         "-Dorg.gradle.appname=$APP_BASE_NAME" \ | ||||
|         -classpath "$CLASSPATH" \ | ||||
|         org.gradle.wrapper.GradleWrapperMain \ | ||||
|         "$@" | ||||
| 
 | ||||
| # Stop when "xargs" is not available. | ||||
| if ! command -v xargs >/dev/null 2>&1 | ||||
| then | ||||
|     die "xargs is not available" | ||||
| fi | ||||
| 
 | ||||
| # Use "xargs" to parse quoted args. | ||||
| # | ||||
| # With -n1 it outputs one arg per line, with the quotes and backslashes removed. | ||||
| # | ||||
| # In Bash we could simply go: | ||||
| # | ||||
| #   readarray ARGS < <( xargs -n1 <<<"$var" ) && | ||||
| #   set -- "${ARGS[@]}" "$@" | ||||
| # | ||||
| # but POSIX shell has neither arrays nor command substitution, so instead we | ||||
| # post-process each arg (as a line of input to sed) to backslash-escape any | ||||
| # character that might be a shell metacharacter, then use eval to reverse | ||||
| # that process (while maintaining the separation between arguments), and wrap | ||||
| # the whole thing up as a single "set" statement. | ||||
| # | ||||
| # This will of course break if any of these variables contains a newline or | ||||
| # an unmatched quote. | ||||
| # | ||||
| 
 | ||||
| eval "set -- $( | ||||
|         printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | | ||||
|         xargs -n1 | | ||||
|         sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | | ||||
|         tr '\n' ' ' | ||||
|     )" '"$@"' | ||||
| 
 | ||||
| exec "$JAVACMD" "$@" | ||||
| @ -1,60 +0,0 @@ | ||||
| /* | ||||
|  * This file was generated by the Gradle 'init' task. | ||||
|  * | ||||
|  * This generated file contains a sample Gradle plugin project to get you started. | ||||
|  * For more details take a look at the Writing Custom Plugins chapter in the Gradle | ||||
|  * User Manual available at https://docs.gradle.org/7.3/userguide/custom_plugins.html | ||||
|  * This project uses @Incubating APIs which are subject to change. | ||||
|  */ | ||||
| 
 | ||||
| plugins { | ||||
|     // Apply the Java Gradle plugin development plugin to add support for developing Gradle plugins | ||||
|     id 'java-gradle-plugin' | ||||
| } | ||||
| 
 | ||||
| repositories { | ||||
|     // Use Maven Central for resolving dependencies. | ||||
|     mavenCentral() | ||||
| } | ||||
| 
 | ||||
| testing { | ||||
|     suites { | ||||
|         // Configure the built-in test suite | ||||
|         test { | ||||
|             // Use JUnit Jupiter test framework | ||||
|             useJUnitJupiter('5.7.2') | ||||
|         } | ||||
| 
 | ||||
|         // Create a new test suite | ||||
|         functionalTest(JvmTestSuite) { | ||||
|             dependencies { | ||||
|                 // functionalTest test suite depends on the production code in tests | ||||
|                 implementation(project(':plugin')) | ||||
|             } | ||||
| 
 | ||||
|             targets { | ||||
|                 all { | ||||
|                     // This test suite should run after the built-in test suite has run its tests | ||||
|                     testTask.configure { shouldRunAfter(test) }  | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| gradlePlugin { | ||||
|     // Define the plugin | ||||
|     plugins { | ||||
|         greeting { | ||||
|             id = 'org.example.gradle.plugin.greeting' | ||||
|             implementationClass = 'org.example.gradle.plugin.GradlePluginPlugin' | ||||
|         } | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| gradlePlugin.testSourceSets(sourceSets.functionalTest) | ||||
| 
 | ||||
| tasks.named('check') { | ||||
|     // Include functionalTest as part of the check lifecycle | ||||
|     dependsOn(testing.suites.functionalTest) | ||||
| } | ||||
| @ -1,57 +0,0 @@ | ||||
| /* | ||||
|  * This Java source file was generated by the Gradle 'init' task. | ||||
|  */ | ||||
| package org.example.gradle.plugin; | ||||
| 
 | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| import java.io.Writer; | ||||
| import java.io.FileWriter; | ||||
| import java.nio.file.Files; | ||||
| import org.gradle.testkit.runner.GradleRunner; | ||||
| import org.gradle.testkit.runner.BuildResult; | ||||
| import org.junit.jupiter.api.Test; | ||||
| import org.junit.jupiter.api.io.TempDir; | ||||
| import static org.junit.jupiter.api.Assertions.*; | ||||
| 
 | ||||
| /** | ||||
|  * A simple functional test for the 'org.example.gradle.plugin.greeting' plugin. | ||||
|  */ | ||||
| class GradlePluginPluginFunctionalTest { | ||||
|     @TempDir | ||||
|     File projectDir; | ||||
| 
 | ||||
|     private File getBuildFile() { | ||||
|         return new File(projectDir, "build.gradle"); | ||||
|     } | ||||
| 
 | ||||
|     private File getSettingsFile() { | ||||
|         return new File(projectDir, "settings.gradle"); | ||||
|     } | ||||
| 
 | ||||
|     @Test void canRunTaskWithGradle691() throws IOException { | ||||
|         writeString(getSettingsFile(), ""); | ||||
|         writeString(getBuildFile(), | ||||
|             "plugins {" + | ||||
|             "  id('org.example.gradle.plugin.greeting')" + | ||||
|             "}"); | ||||
| 
 | ||||
|         // Run the build | ||||
|         GradleRunner runner = GradleRunner.create(); | ||||
|         runner.forwardOutput(); | ||||
|         runner.withGradleVersion("6.9.1"); | ||||
|         runner.withPluginClasspath(); | ||||
|         runner.withArguments("greeting"); | ||||
|         runner.withProjectDir(projectDir); | ||||
|         BuildResult result = runner.build(); | ||||
| 
 | ||||
|         // Verify the result | ||||
|         assertTrue(result.getOutput().contains("Hello from plugin 'org.example.gradle.plugin.greeting'")); | ||||
|     } | ||||
| 
 | ||||
|     private void writeString(File file, String string) throws IOException { | ||||
|         try (Writer writer = new FileWriter(file)) { | ||||
|             writer.write(string); | ||||
|         } | ||||
|     } | ||||
| } | ||||
| @ -1,19 +0,0 @@ | ||||
| /* | ||||
|  * This Java source file was generated by the Gradle 'init' task. | ||||
|  */ | ||||
| package org.example.gradle.plugin; | ||||
| 
 | ||||
| import org.gradle.api.Project; | ||||
| import org.gradle.api.Plugin; | ||||
| 
 | ||||
| /** | ||||
|  * A simple 'hello world' plugin. | ||||
|  */ | ||||
| public class GradlePluginPlugin implements Plugin<Project> { | ||||
|     public void apply(Project project) { | ||||
|         // Register a task | ||||
|         project.getTasks().register("greeting", task -> { | ||||
|             task.doLast(s -> System.out.println("Hello from plugin 'org.example.gradle.plugin.greeting'")); | ||||
|         }); | ||||
|     } | ||||
| } | ||||
| @ -1,23 +0,0 @@ | ||||
| /* | ||||
|  * This Java source file was generated by the Gradle 'init' task. | ||||
|  */ | ||||
| package org.example.gradle.plugin; | ||||
| 
 | ||||
| import org.gradle.testfixtures.ProjectBuilder; | ||||
| import org.gradle.api.Project; | ||||
| import org.junit.jupiter.api.Test; | ||||
| import static org.junit.jupiter.api.Assertions.*; | ||||
| 
 | ||||
| /** | ||||
|  * A simple unit test for the 'org.example.gradle.plugin.greeting' plugin. | ||||
|  */ | ||||
| class GradlePluginPluginTest { | ||||
|     @Test void pluginRegistersATask() { | ||||
|         // Create a test project and apply the plugin | ||||
|         Project project = ProjectBuilder.builder().build(); | ||||
|         project.getPlugins().apply("org.example.gradle.plugin.greeting"); | ||||
| 
 | ||||
|         // Verify the result | ||||
|         assertNotNull(project.getTasks().findByName("greeting")); | ||||
|     } | ||||
| } | ||||
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										92
									
								
								.github/workflow-samples/groovy-dsl/gradlew.bat
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										92
									
								
								.github/workflow-samples/groovy-dsl/gradlew.bat
									
									
									
									
										vendored
									
									
								
							| @ -1,92 +0,0 @@ | ||||
| @rem | ||||
| @rem Copyright 2015 the original author or authors. | ||||
| @rem | ||||
| @rem Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| @rem you may not use this file except in compliance with the License. | ||||
| @rem You may obtain a copy of the License at | ||||
| @rem | ||||
| @rem      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| @rem | ||||
| @rem Unless required by applicable law or agreed to in writing, software | ||||
| @rem distributed under the License is distributed on an "AS IS" BASIS, | ||||
| @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| @rem See the License for the specific language governing permissions and | ||||
| @rem limitations under the License. | ||||
| @rem | ||||
| 
 | ||||
| @if "%DEBUG%"=="" @echo off | ||||
| @rem ########################################################################## | ||||
| @rem | ||||
| @rem  Gradle startup script for Windows | ||||
| @rem | ||||
| @rem ########################################################################## | ||||
| 
 | ||||
| @rem Set local scope for the variables with windows NT shell | ||||
| if "%OS%"=="Windows_NT" setlocal | ||||
| 
 | ||||
| set DIRNAME=%~dp0 | ||||
| if "%DIRNAME%"=="" set DIRNAME=. | ||||
| @rem This is normally unused | ||||
| set APP_BASE_NAME=%~n0 | ||||
| set APP_HOME=%DIRNAME% | ||||
| 
 | ||||
| @rem Resolve any "." and ".." in APP_HOME to make it shorter. | ||||
| for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi | ||||
| 
 | ||||
| @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" | ||||
| 
 | ||||
| @rem Find java.exe | ||||
| if defined JAVA_HOME goto findJavaFromJavaHome | ||||
| 
 | ||||
| set JAVA_EXE=java.exe | ||||
| %JAVA_EXE% -version >NUL 2>&1 | ||||
| if %ERRORLEVEL% equ 0 goto execute | ||||
| 
 | ||||
| echo. 1>&2 | ||||
| echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 | ||||
| echo. 1>&2 | ||||
| echo Please set the JAVA_HOME variable in your environment to match the 1>&2 | ||||
| echo location of your Java installation. 1>&2 | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :findJavaFromJavaHome | ||||
| set JAVA_HOME=%JAVA_HOME:"=% | ||||
| set JAVA_EXE=%JAVA_HOME%/bin/java.exe | ||||
| 
 | ||||
| if exist "%JAVA_EXE%" goto execute | ||||
| 
 | ||||
| echo. 1>&2 | ||||
| echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 | ||||
| echo. 1>&2 | ||||
| echo Please set the JAVA_HOME variable in your environment to match the 1>&2 | ||||
| echo location of your Java installation. 1>&2 | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :execute | ||||
| @rem Setup the command line | ||||
| 
 | ||||
| set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| @rem Execute Gradle | ||||
| "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* | ||||
| 
 | ||||
| :end | ||||
| @rem End local scope for the variables with windows NT shell | ||||
| if %ERRORLEVEL% equ 0 goto mainEnd | ||||
| 
 | ||||
| :fail | ||||
| rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of | ||||
| rem the _cmd.exe /c_ return code! | ||||
| set EXIT_CODE=%ERRORLEVEL% | ||||
| if %EXIT_CODE% equ 0 set EXIT_CODE=1 | ||||
| if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% | ||||
| exit /b %EXIT_CODE% | ||||
| 
 | ||||
| :mainEnd | ||||
| if "%OS%"=="Windows_NT" endlocal | ||||
| 
 | ||||
| :omega | ||||
| @ -1,14 +0,0 @@ | ||||
| plugins { | ||||
|     id "com.gradle.enterprise" version "3.16.2" | ||||
|     id "com.gradle.common-custom-user-data-gradle-plugin" version "1.13" | ||||
| } | ||||
| 
 | ||||
| gradleEnterprise { | ||||
|     buildScan { | ||||
|         termsOfServiceUrl = "https://gradle.com/terms-of-service" | ||||
|         termsOfServiceAgree = "yes" | ||||
|         publishAlways() | ||||
|         uploadInBackground = false | ||||
|     } | ||||
| } | ||||
| rootProject.name = 'groovy-dsl' | ||||
| @ -1,17 +0,0 @@ | ||||
| plugins { | ||||
|     id 'java' | ||||
| } | ||||
| 
 | ||||
| java { | ||||
|     toolchain { | ||||
|         languageVersion = JavaLanguageVersion.of(16) | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| repositories { | ||||
|     mavenCentral() | ||||
| } | ||||
| 
 | ||||
| dependencies { | ||||
|     testImplementation('junit:junit:4.13.2') | ||||
| } | ||||
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										249
									
								
								.github/workflow-samples/java-toolchain/gradlew
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										249
									
								
								.github/workflow-samples/java-toolchain/gradlew
									
									
									
									
										vendored
									
									
								
							| @ -1,249 +0,0 @@ | ||||
| #!/bin/sh | ||||
| 
 | ||||
| # | ||||
| # Copyright © 2015-2021 the original authors. | ||||
| # | ||||
| # Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| # you may not use this file except in compliance with the License. | ||||
| # You may obtain a copy of the License at | ||||
| # | ||||
| #      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| # | ||||
| # Unless required by applicable law or agreed to in writing, software | ||||
| # distributed under the License is distributed on an "AS IS" BASIS, | ||||
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| # See the License for the specific language governing permissions and | ||||
| # limitations under the License. | ||||
| # | ||||
| 
 | ||||
| ############################################################################## | ||||
| # | ||||
| #   Gradle start up script for POSIX generated by Gradle. | ||||
| # | ||||
| #   Important for running: | ||||
| # | ||||
| #   (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is | ||||
| #       noncompliant, but you have some other compliant shell such as ksh or | ||||
| #       bash, then to run this script, type that shell name before the whole | ||||
| #       command line, like: | ||||
| # | ||||
| #           ksh Gradle | ||||
| # | ||||
| #       Busybox and similar reduced shells will NOT work, because this script | ||||
| #       requires all of these POSIX shell features: | ||||
| #         * functions; | ||||
| #         * expansions «$var», «${var}», «${var:-default}», «${var+SET}», | ||||
| #           «${var#prefix}», «${var%suffix}», and «$( cmd )»; | ||||
| #         * compound commands having a testable exit status, especially «case»; | ||||
| #         * various built-in commands including «command», «set», and «ulimit». | ||||
| # | ||||
| #   Important for patching: | ||||
| # | ||||
| #   (2) This script targets any POSIX shell, so it avoids extensions provided | ||||
| #       by Bash, Ksh, etc; in particular arrays are avoided. | ||||
| # | ||||
| #       The "traditional" practice of packing multiple parameters into a | ||||
| #       space-separated string is a well documented source of bugs and security | ||||
| #       problems, so this is (mostly) avoided, by progressively accumulating | ||||
| #       options in "$@", and eventually passing that to Java. | ||||
| # | ||||
| #       Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, | ||||
| #       and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; | ||||
| #       see the in-line comments for details. | ||||
| # | ||||
| #       There are tweaks for specific operating systems such as AIX, CygWin, | ||||
| #       Darwin, MinGW, and NonStop. | ||||
| # | ||||
| #   (3) This script is generated from the Groovy template | ||||
| #       https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt | ||||
| #       within the Gradle project. | ||||
| # | ||||
| #       You can find Gradle at https://github.com/gradle/gradle/. | ||||
| # | ||||
| ############################################################################## | ||||
| 
 | ||||
| # Attempt to set APP_HOME | ||||
| 
 | ||||
| # Resolve links: $0 may be a link | ||||
| app_path=$0 | ||||
| 
 | ||||
| # Need this for daisy-chained symlinks. | ||||
| while | ||||
|     APP_HOME=${app_path%"${app_path##*/}"}  # leaves a trailing /; empty if no leading path | ||||
|     [ -h "$app_path" ] | ||||
| do | ||||
|     ls=$( ls -ld "$app_path" ) | ||||
|     link=${ls#*' -> '} | ||||
|     case $link in             #( | ||||
|       /*)   app_path=$link ;; #( | ||||
|       *)    app_path=$APP_HOME$link ;; | ||||
|     esac | ||||
| done | ||||
| 
 | ||||
| # This is normally unused | ||||
| # shellcheck disable=SC2034 | ||||
| APP_BASE_NAME=${0##*/} | ||||
| # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) | ||||
| APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit | ||||
| 
 | ||||
| # Use the maximum available, or set MAX_FD != -1 to use that value. | ||||
| MAX_FD=maximum | ||||
| 
 | ||||
| warn () { | ||||
|     echo "$*" | ||||
| } >&2 | ||||
| 
 | ||||
| die () { | ||||
|     echo | ||||
|     echo "$*" | ||||
|     echo | ||||
|     exit 1 | ||||
| } >&2 | ||||
| 
 | ||||
| # OS specific support (must be 'true' or 'false'). | ||||
| cygwin=false | ||||
| msys=false | ||||
| darwin=false | ||||
| nonstop=false | ||||
| case "$( uname )" in                #( | ||||
|   CYGWIN* )         cygwin=true  ;; #( | ||||
|   Darwin* )         darwin=true  ;; #( | ||||
|   MSYS* | MINGW* )  msys=true    ;; #( | ||||
|   NONSTOP* )        nonstop=true ;; | ||||
| esac | ||||
| 
 | ||||
| CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| # Determine the Java command to use to start the JVM. | ||||
| if [ -n "$JAVA_HOME" ] ; then | ||||
|     if [ -x "$JAVA_HOME/jre/sh/java" ] ; then | ||||
|         # IBM's JDK on AIX uses strange locations for the executables | ||||
|         JAVACMD=$JAVA_HOME/jre/sh/java | ||||
|     else | ||||
|         JAVACMD=$JAVA_HOME/bin/java | ||||
|     fi | ||||
|     if [ ! -x "$JAVACMD" ] ; then | ||||
|         die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
|     fi | ||||
| else | ||||
|     JAVACMD=java | ||||
|     if ! command -v java >/dev/null 2>&1 | ||||
|     then | ||||
|         die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
|     fi | ||||
| fi | ||||
| 
 | ||||
| # Increase the maximum file descriptors if we can. | ||||
| if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then | ||||
|     case $MAX_FD in #( | ||||
|       max*) | ||||
|         # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. | ||||
|         # shellcheck disable=SC2039,SC3045 | ||||
|         MAX_FD=$( ulimit -H -n ) || | ||||
|             warn "Could not query maximum file descriptor limit" | ||||
|     esac | ||||
|     case $MAX_FD in  #( | ||||
|       '' | soft) :;; #( | ||||
|       *) | ||||
|         # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. | ||||
|         # shellcheck disable=SC2039,SC3045 | ||||
|         ulimit -n "$MAX_FD" || | ||||
|             warn "Could not set maximum file descriptor limit to $MAX_FD" | ||||
|     esac | ||||
| fi | ||||
| 
 | ||||
| # Collect all arguments for the java command, stacking in reverse order: | ||||
| #   * args from the command line | ||||
| #   * the main class name | ||||
| #   * -classpath | ||||
| #   * -D...appname settings | ||||
| #   * --module-path (only if needed) | ||||
| #   * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. | ||||
| 
 | ||||
| # For Cygwin or MSYS, switch paths to Windows format before running java | ||||
| if "$cygwin" || "$msys" ; then | ||||
|     APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) | ||||
|     CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) | ||||
| 
 | ||||
|     JAVACMD=$( cygpath --unix "$JAVACMD" ) | ||||
| 
 | ||||
|     # Now convert the arguments - kludge to limit ourselves to /bin/sh | ||||
|     for arg do | ||||
|         if | ||||
|             case $arg in                                #( | ||||
|               -*)   false ;;                            # don't mess with options #( | ||||
|               /?*)  t=${arg#/} t=/${t%%/*}              # looks like a POSIX filepath | ||||
|                     [ -e "$t" ] ;;                      #( | ||||
|               *)    false ;; | ||||
|             esac | ||||
|         then | ||||
|             arg=$( cygpath --path --ignore --mixed "$arg" ) | ||||
|         fi | ||||
|         # Roll the args list around exactly as many times as the number of | ||||
|         # args, so each arg winds up back in the position where it started, but | ||||
|         # possibly modified. | ||||
|         # | ||||
|         # NB: a `for` loop captures its iteration list before it begins, so | ||||
|         # changing the positional parameters here affects neither the number of | ||||
|         # iterations, nor the values presented in `arg`. | ||||
|         shift                   # remove old arg | ||||
|         set -- "$@" "$arg"      # push replacement arg | ||||
|     done | ||||
| fi | ||||
| 
 | ||||
| 
 | ||||
| # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' | ||||
| 
 | ||||
| # Collect all arguments for the java command: | ||||
| #   * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, | ||||
| #     and any embedded shellness will be escaped. | ||||
| #   * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be | ||||
| #     treated as '${Hostname}' itself on the command line. | ||||
| 
 | ||||
| set -- \ | ||||
|         "-Dorg.gradle.appname=$APP_BASE_NAME" \ | ||||
|         -classpath "$CLASSPATH" \ | ||||
|         org.gradle.wrapper.GradleWrapperMain \ | ||||
|         "$@" | ||||
| 
 | ||||
| # Stop when "xargs" is not available. | ||||
| if ! command -v xargs >/dev/null 2>&1 | ||||
| then | ||||
|     die "xargs is not available" | ||||
| fi | ||||
| 
 | ||||
| # Use "xargs" to parse quoted args. | ||||
| # | ||||
| # With -n1 it outputs one arg per line, with the quotes and backslashes removed. | ||||
| # | ||||
| # In Bash we could simply go: | ||||
| # | ||||
| #   readarray ARGS < <( xargs -n1 <<<"$var" ) && | ||||
| #   set -- "${ARGS[@]}" "$@" | ||||
| # | ||||
| # but POSIX shell has neither arrays nor command substitution, so instead we | ||||
| # post-process each arg (as a line of input to sed) to backslash-escape any | ||||
| # character that might be a shell metacharacter, then use eval to reverse | ||||
| # that process (while maintaining the separation between arguments), and wrap | ||||
| # the whole thing up as a single "set" statement. | ||||
| # | ||||
| # This will of course break if any of these variables contains a newline or | ||||
| # an unmatched quote. | ||||
| # | ||||
| 
 | ||||
| eval "set -- $( | ||||
|         printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | | ||||
|         xargs -n1 | | ||||
|         sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | | ||||
|         tr '\n' ' ' | ||||
|     )" '"$@"' | ||||
| 
 | ||||
| exec "$JAVACMD" "$@" | ||||
| @ -1,5 +0,0 @@ | ||||
| plugins { | ||||
|     id("org.gradle.toolchains.foojay-resolver-convention") version("0.7.0") | ||||
| } | ||||
| 
 | ||||
| rootProject.name = 'basic' | ||||
| @ -1,29 +0,0 @@ | ||||
| plugins { | ||||
|     `java-library` | ||||
| } | ||||
| 
 | ||||
| repositories { | ||||
|     mavenCentral() | ||||
| } | ||||
| 
 | ||||
| dependencies { | ||||
|     api("org.apache.commons:commons-math3:3.6.1") | ||||
|     implementation("com.google.guava:guava:33.1.0-jre") | ||||
| 
 | ||||
|     testImplementation("org.junit.jupiter:junit-jupiter:5.10.2") | ||||
| } | ||||
| 
 | ||||
| tasks.test { | ||||
|     useJUnitPlatform() | ||||
| } | ||||
| 
 | ||||
| tasks.named("test").configure { | ||||
|     // Write marker file so we can detect if task was configured | ||||
|     file("task-configured.txt").writeText("true") | ||||
| 
 | ||||
|     doLast { | ||||
|         if (System.getProperties().containsKey("verifyCachedBuild")) { | ||||
|             throw RuntimeException("Build was not cached: unexpected execution of test task") | ||||
|         } | ||||
|     } | ||||
| } | ||||
| @ -1 +0,0 @@ | ||||
| org.gradle.caching=true | ||||
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										249
									
								
								.github/workflow-samples/kotlin-dsl/gradlew
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										249
									
								
								.github/workflow-samples/kotlin-dsl/gradlew
									
									
									
									
										vendored
									
									
								
							| @ -1,249 +0,0 @@ | ||||
| #!/bin/sh | ||||
| 
 | ||||
| # | ||||
| # Copyright © 2015-2021 the original authors. | ||||
| # | ||||
| # Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| # you may not use this file except in compliance with the License. | ||||
| # You may obtain a copy of the License at | ||||
| # | ||||
| #      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| # | ||||
| # Unless required by applicable law or agreed to in writing, software | ||||
| # distributed under the License is distributed on an "AS IS" BASIS, | ||||
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| # See the License for the specific language governing permissions and | ||||
| # limitations under the License. | ||||
| # | ||||
| 
 | ||||
| ############################################################################## | ||||
| # | ||||
| #   Gradle start up script for POSIX generated by Gradle. | ||||
| # | ||||
| #   Important for running: | ||||
| # | ||||
| #   (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is | ||||
| #       noncompliant, but you have some other compliant shell such as ksh or | ||||
| #       bash, then to run this script, type that shell name before the whole | ||||
| #       command line, like: | ||||
| # | ||||
| #           ksh Gradle | ||||
| # | ||||
| #       Busybox and similar reduced shells will NOT work, because this script | ||||
| #       requires all of these POSIX shell features: | ||||
| #         * functions; | ||||
| #         * expansions «$var», «${var}», «${var:-default}», «${var+SET}», | ||||
| #           «${var#prefix}», «${var%suffix}», and «$( cmd )»; | ||||
| #         * compound commands having a testable exit status, especially «case»; | ||||
| #         * various built-in commands including «command», «set», and «ulimit». | ||||
| # | ||||
| #   Important for patching: | ||||
| # | ||||
| #   (2) This script targets any POSIX shell, so it avoids extensions provided | ||||
| #       by Bash, Ksh, etc; in particular arrays are avoided. | ||||
| # | ||||
| #       The "traditional" practice of packing multiple parameters into a | ||||
| #       space-separated string is a well documented source of bugs and security | ||||
| #       problems, so this is (mostly) avoided, by progressively accumulating | ||||
| #       options in "$@", and eventually passing that to Java. | ||||
| # | ||||
| #       Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, | ||||
| #       and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; | ||||
| #       see the in-line comments for details. | ||||
| # | ||||
| #       There are tweaks for specific operating systems such as AIX, CygWin, | ||||
| #       Darwin, MinGW, and NonStop. | ||||
| # | ||||
| #   (3) This script is generated from the Groovy template | ||||
| #       https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt | ||||
| #       within the Gradle project. | ||||
| # | ||||
| #       You can find Gradle at https://github.com/gradle/gradle/. | ||||
| # | ||||
| ############################################################################## | ||||
| 
 | ||||
| # Attempt to set APP_HOME | ||||
| 
 | ||||
| # Resolve links: $0 may be a link | ||||
| app_path=$0 | ||||
| 
 | ||||
| # Need this for daisy-chained symlinks. | ||||
| while | ||||
|     APP_HOME=${app_path%"${app_path##*/}"}  # leaves a trailing /; empty if no leading path | ||||
|     [ -h "$app_path" ] | ||||
| do | ||||
|     ls=$( ls -ld "$app_path" ) | ||||
|     link=${ls#*' -> '} | ||||
|     case $link in             #( | ||||
|       /*)   app_path=$link ;; #( | ||||
|       *)    app_path=$APP_HOME$link ;; | ||||
|     esac | ||||
| done | ||||
| 
 | ||||
| # This is normally unused | ||||
| # shellcheck disable=SC2034 | ||||
| APP_BASE_NAME=${0##*/} | ||||
| # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) | ||||
| APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit | ||||
| 
 | ||||
| # Use the maximum available, or set MAX_FD != -1 to use that value. | ||||
| MAX_FD=maximum | ||||
| 
 | ||||
| warn () { | ||||
|     echo "$*" | ||||
| } >&2 | ||||
| 
 | ||||
| die () { | ||||
|     echo | ||||
|     echo "$*" | ||||
|     echo | ||||
|     exit 1 | ||||
| } >&2 | ||||
| 
 | ||||
| # OS specific support (must be 'true' or 'false'). | ||||
| cygwin=false | ||||
| msys=false | ||||
| darwin=false | ||||
| nonstop=false | ||||
| case "$( uname )" in                #( | ||||
|   CYGWIN* )         cygwin=true  ;; #( | ||||
|   Darwin* )         darwin=true  ;; #( | ||||
|   MSYS* | MINGW* )  msys=true    ;; #( | ||||
|   NONSTOP* )        nonstop=true ;; | ||||
| esac | ||||
| 
 | ||||
| CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| # Determine the Java command to use to start the JVM. | ||||
| if [ -n "$JAVA_HOME" ] ; then | ||||
|     if [ -x "$JAVA_HOME/jre/sh/java" ] ; then | ||||
|         # IBM's JDK on AIX uses strange locations for the executables | ||||
|         JAVACMD=$JAVA_HOME/jre/sh/java | ||||
|     else | ||||
|         JAVACMD=$JAVA_HOME/bin/java | ||||
|     fi | ||||
|     if [ ! -x "$JAVACMD" ] ; then | ||||
|         die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
|     fi | ||||
| else | ||||
|     JAVACMD=java | ||||
|     if ! command -v java >/dev/null 2>&1 | ||||
|     then | ||||
|         die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
|     fi | ||||
| fi | ||||
| 
 | ||||
| # Increase the maximum file descriptors if we can. | ||||
| if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then | ||||
|     case $MAX_FD in #( | ||||
|       max*) | ||||
|         # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. | ||||
|         # shellcheck disable=SC2039,SC3045 | ||||
|         MAX_FD=$( ulimit -H -n ) || | ||||
|             warn "Could not query maximum file descriptor limit" | ||||
|     esac | ||||
|     case $MAX_FD in  #( | ||||
|       '' | soft) :;; #( | ||||
|       *) | ||||
|         # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. | ||||
|         # shellcheck disable=SC2039,SC3045 | ||||
|         ulimit -n "$MAX_FD" || | ||||
|             warn "Could not set maximum file descriptor limit to $MAX_FD" | ||||
|     esac | ||||
| fi | ||||
| 
 | ||||
| # Collect all arguments for the java command, stacking in reverse order: | ||||
| #   * args from the command line | ||||
| #   * the main class name | ||||
| #   * -classpath | ||||
| #   * -D...appname settings | ||||
| #   * --module-path (only if needed) | ||||
| #   * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. | ||||
| 
 | ||||
| # For Cygwin or MSYS, switch paths to Windows format before running java | ||||
| if "$cygwin" || "$msys" ; then | ||||
|     APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) | ||||
|     CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) | ||||
| 
 | ||||
|     JAVACMD=$( cygpath --unix "$JAVACMD" ) | ||||
| 
 | ||||
|     # Now convert the arguments - kludge to limit ourselves to /bin/sh | ||||
|     for arg do | ||||
|         if | ||||
|             case $arg in                                #( | ||||
|               -*)   false ;;                            # don't mess with options #( | ||||
|               /?*)  t=${arg#/} t=/${t%%/*}              # looks like a POSIX filepath | ||||
|                     [ -e "$t" ] ;;                      #( | ||||
|               *)    false ;; | ||||
|             esac | ||||
|         then | ||||
|             arg=$( cygpath --path --ignore --mixed "$arg" ) | ||||
|         fi | ||||
|         # Roll the args list around exactly as many times as the number of | ||||
|         # args, so each arg winds up back in the position where it started, but | ||||
|         # possibly modified. | ||||
|         # | ||||
|         # NB: a `for` loop captures its iteration list before it begins, so | ||||
|         # changing the positional parameters here affects neither the number of | ||||
|         # iterations, nor the values presented in `arg`. | ||||
|         shift                   # remove old arg | ||||
|         set -- "$@" "$arg"      # push replacement arg | ||||
|     done | ||||
| fi | ||||
| 
 | ||||
| 
 | ||||
| # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' | ||||
| 
 | ||||
| # Collect all arguments for the java command: | ||||
| #   * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, | ||||
| #     and any embedded shellness will be escaped. | ||||
| #   * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be | ||||
| #     treated as '${Hostname}' itself on the command line. | ||||
| 
 | ||||
| set -- \ | ||||
|         "-Dorg.gradle.appname=$APP_BASE_NAME" \ | ||||
|         -classpath "$CLASSPATH" \ | ||||
|         org.gradle.wrapper.GradleWrapperMain \ | ||||
|         "$@" | ||||
| 
 | ||||
| # Stop when "xargs" is not available. | ||||
| if ! command -v xargs >/dev/null 2>&1 | ||||
| then | ||||
|     die "xargs is not available" | ||||
| fi | ||||
| 
 | ||||
| # Use "xargs" to parse quoted args. | ||||
| # | ||||
| # With -n1 it outputs one arg per line, with the quotes and backslashes removed. | ||||
| # | ||||
| # In Bash we could simply go: | ||||
| # | ||||
| #   readarray ARGS < <( xargs -n1 <<<"$var" ) && | ||||
| #   set -- "${ARGS[@]}" "$@" | ||||
| # | ||||
| # but POSIX shell has neither arrays nor command substitution, so instead we | ||||
| # post-process each arg (as a line of input to sed) to backslash-escape any | ||||
| # character that might be a shell metacharacter, then use eval to reverse | ||||
| # that process (while maintaining the separation between arguments), and wrap | ||||
| # the whole thing up as a single "set" statement. | ||||
| # | ||||
| # This will of course break if any of these variables contains a newline or | ||||
| # an unmatched quote. | ||||
| # | ||||
| 
 | ||||
| eval "set -- $( | ||||
|         printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | | ||||
|         xargs -n1 | | ||||
|         sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | | ||||
|         tr '\n' ' ' | ||||
|     )" '"$@"' | ||||
| 
 | ||||
| exec "$JAVACMD" "$@" | ||||
							
								
								
									
										1
									
								
								.github/workflow-samples/no-ge/build.gradle
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.github/workflow-samples/no-ge/build.gradle
									
									
									
									
										vendored
									
									
								
							| @ -1 +0,0 @@ | ||||
| // Required to keep dependabot happy | ||||
| @ -1 +0,0 @@ | ||||
| rootProject.name = 'no-ge' | ||||
| @ -1 +0,0 @@ | ||||
| // Required to keep dependabot happy | ||||
							
								
								
									
										91
									
								
								.github/workflows/ci-full-check.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										91
									
								
								.github/workflows/ci-full-check.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,91 +0,0 @@ | ||||
| name: CI-full-check | ||||
| 
 | ||||
| on: | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| jobs: | ||||
|   action-inputs: | ||||
|     uses: ./.github/workflows/integ-test-action-inputs.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   caching-config: | ||||
|     uses: ./.github/workflows/integ-test-caching-config.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   dependency-graph: | ||||
|     uses: ./.github/workflows/integ-test-dependency-graph.yml | ||||
|     permissions: | ||||
|       contents: write | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   dependency-graph-failures: | ||||
|     uses: ./.github/workflows/integ-test-dependency-graph-failures.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   execution-with-caching: | ||||
|     uses: ./.github/workflows/integ-test-execution-with-caching.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   execution: | ||||
|     uses: ./.github/workflows/integ-test-execution.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   develocity-injection: | ||||
|     uses: ./.github/workflows/integ-test-inject-develocity.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
|     secrets: | ||||
|       DEVELOCITY_ACCESS_KEY: ${{ secrets.GE_SOLUTIONS_ACCESS_TOKEN }} | ||||
| 
 | ||||
|   provision-gradle-versions: | ||||
|     uses: ./.github/workflows/integ-test-provision-gradle-versions.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   restore-configuration-cache: | ||||
|     uses: ./.github/workflows/integ-test-restore-configuration-cache.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
|     secrets: | ||||
|       GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | ||||
| 
 | ||||
|   restore-custom-gradle-home: | ||||
|     uses: ./.github/workflows/integ-test-restore-custom-gradle-home.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   restore-containerized-gradle-home: | ||||
|     uses: ./.github/workflows/integ-test-restore-containerized-gradle-home.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   restore-gradle-home: | ||||
|     uses: ./.github/workflows/integ-test-restore-gradle-home.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   restore-java-toolchain: | ||||
|     uses: ./.github/workflows/integ-test-restore-java-toolchain.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   sample-kotlin-dsl: | ||||
|     uses: ./.github/workflows/integ-test-sample-kotlin-dsl.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   sample-gradle-plugin: | ||||
|     uses: ./.github/workflows/integ-test-sample-gradle-plugin.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
| 
 | ||||
|   toolchain-detection: | ||||
|     uses: ./.github/workflows/integ-test-detect-java-toolchains.yml | ||||
|     with: | ||||
|       cache-key-prefix: ${{github.run_number}}- | ||||
							
								
								
									
										88
									
								
								.github/workflows/ci-quick-check.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										88
									
								
								.github/workflows/ci-quick-check.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,88 +0,0 @@ | ||||
| name: CI-quick-check | ||||
| 
 | ||||
| on: | ||||
|   workflow_dispatch: | ||||
|   push: | ||||
| 
 | ||||
| jobs: | ||||
|   action-inputs: | ||||
|     uses: ./.github/workflows/integ-test-action-inputs.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   caching-config: | ||||
|     uses: ./.github/workflows/integ-test-caching-config.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   dependency-graph: | ||||
|     uses: ./.github/workflows/integ-test-dependency-graph.yml | ||||
|     permissions: | ||||
|       contents: write | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   dependency-graph-failures: | ||||
|     uses: ./.github/workflows/integ-test-dependency-graph-failures.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   execution-with-caching: | ||||
|     uses: ./.github/workflows/integ-test-execution-with-caching.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   execution: | ||||
|     uses: ./.github/workflows/integ-test-execution.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   develocity-injection: | ||||
|     uses: ./.github/workflows/integ-test-inject-develocity.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
|     secrets: | ||||
|       DEVELOCITY_ACCESS_KEY: ${{ secrets.GE_SOLUTIONS_ACCESS_TOKEN }} | ||||
| 
 | ||||
|   provision-gradle-versions: | ||||
|     uses: ./.github/workflows/integ-test-provision-gradle-versions.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   restore-configuration-cache: | ||||
|     uses: ./.github/workflows/integ-test-restore-configuration-cache.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
|     secrets: | ||||
|       GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | ||||
| 
 | ||||
|   restore-containerized-gradle-home: | ||||
|     uses: ./.github/workflows/integ-test-restore-containerized-gradle-home.yml | ||||
| 
 | ||||
|   restore-custom-gradle-home: | ||||
|     uses: ./.github/workflows/integ-test-restore-custom-gradle-home.yml | ||||
| 
 | ||||
|   restore-gradle-home: | ||||
|     uses: ./.github/workflows/integ-test-restore-gradle-home.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   restore-java-toolchain: | ||||
|     uses: ./.github/workflows/integ-test-restore-java-toolchain.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   sample-kotlin-dsl: | ||||
|     uses: ./.github/workflows/integ-test-sample-kotlin-dsl.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   sample-gradle-plugin: | ||||
|     uses: ./.github/workflows/integ-test-sample-gradle-plugin.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
| 
 | ||||
|   toolchain-detection: | ||||
|     uses: ./.github/workflows/integ-test-detect-java-toolchains.yml | ||||
|     with: | ||||
|       runner-os: '["ubuntu-latest"]' | ||||
							
								
								
									
										43
									
								
								.github/workflows/demo-failure-cases.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										43
									
								
								.github/workflows/demo-failure-cases.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,43 +0,0 @@ | ||||
| name: demo-failure-cases | ||||
| 
 | ||||
| on: | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| jobs: | ||||
| 
 | ||||
|   failing-build: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Test build failure | ||||
|       uses: ./ | ||||
|       continue-on-error: true | ||||
|       with: | ||||
|         build-root-directory: .github/workflow-samples/kotlin-dsl | ||||
|         arguments: not-a-valid-task | ||||
| 
 | ||||
|   wrapper-missing: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Test wrapper missing | ||||
|       uses: ./ | ||||
|       continue-on-error: true | ||||
|       with: | ||||
|         build-root-directory: .github/workflow-samples/no-wrapper | ||||
|         arguments: help | ||||
| 
 | ||||
|   bad-configuration: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Test bad config value | ||||
|       uses: ./ | ||||
|       continue-on-error: true | ||||
|       with: | ||||
|         build-root-directory: .github/workflow-samples/no-wrapper | ||||
|         arguments: help | ||||
|         cache-disabled: yes | ||||
							
								
								
									
										71
									
								
								.github/workflows/demo-job-summary.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										71
									
								
								.github/workflows/demo-job-summary.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,71 +0,0 @@ | ||||
| name: Demo Job Summary, for Gradle builds | ||||
| 
 | ||||
| on: | ||||
|   workflow_dispatch: | ||||
|   push: | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   many-gradle-builds: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|     - name: Build kotlin-dsl project | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew assemble | ||||
|     - name: Build kotlin-dsl project without Build Scan® | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew assemble check --no-scan | ||||
|     - name: Build kotlin-dsl project with Build Scan® publish failure | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew check -Dgradle.enterprise.url=https://not.valid.server | ||||
|     - name: Build groovy-dsl project | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew assemble | ||||
|     - name: Build kotlin-dsl project with multiple gradle invocations | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: |  | ||||
|          ./gradlew tasks --no-daemon | ||||
|          ./gradlew help check | ||||
|     - name: Fail groovy-dsl project | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       continue-on-error: true | ||||
|       run: ./gradlew not-a-real-task | ||||
| 
 | ||||
|   successful-builds-with-no-summary: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         add-job-summary: on-failure | ||||
|     - name: Build kotlin-dsl project | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew assemble | ||||
|     - name: Build kotlin-dsl project without Build Scan® | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew assemble check --no-scan | ||||
| 
 | ||||
|   pre-existing-gradle-home: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Pre-create Gradle User Home | ||||
|       shell: bash | ||||
|       run: | | ||||
|         mkdir ~/.gradle | ||||
|         mkdir ~/.gradle/caches | ||||
|         touch ~/.gradle/caches/dummy.txt | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|     - name: Run build | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew assemble | ||||
							
								
								
									
										51
									
								
								.github/workflows/demo-pr-build-scan-comment.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										51
									
								
								.github/workflows/demo-pr-build-scan-comment.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,51 +0,0 @@ | ||||
| name: Demo adding Build Scan® comment to PR | ||||
| on: | ||||
|   pull_request: | ||||
|     types: [assigned, review_requested] | ||||
| 
 | ||||
| permissions: | ||||
|   pull-requests: write | ||||
| 
 | ||||
| jobs: | ||||
|   successful-build-with-always-comment: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout project sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         add-job-summary-as-pr-comment: always | ||||
|     - name: Run build with Gradle wrapper | ||||
|       id: gradle | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew build --scan | ||||
| 
 | ||||
|   successful-build-with-comment-on-failure: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout project sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         add-job-summary-as-pr-comment: on-failure | ||||
|     - name: Run build with Gradle wrapper | ||||
|       id: gradle | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew build --scan | ||||
| 
 | ||||
|   failing-build-with-comment-on-failure: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout project sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         add-job-summary-as-pr-comment: on-failure | ||||
|     - name: Run build with Gradle wrapper | ||||
|       id: gradle | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew no-a-real-task --scan | ||||
|       continue-on-error: true | ||||
							
								
								
									
										23
									
								
								.github/workflows/dev.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								.github/workflows/dev.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,23 @@ | ||||
| name: Verify generated outputs | ||||
| 
 | ||||
| on: | ||||
|   pull_request: | ||||
|   push: | ||||
| 
 | ||||
| jobs: | ||||
|   check: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Build | ||||
|       run: | | ||||
|         npm install | ||||
|         npm run all | ||||
|     - name: Check for uncommitted changes | ||||
|       # Ensure no changes, but ignore node_modules dir since dev/fresh ci deps installed. | ||||
|       run: | | ||||
|         git diff --exit-code --stat -- . ':!node_modules' \ | ||||
|         || (echo "##[error] found changed files after build. please 'npm run all'" \ | ||||
|                  "and check in all changes" \ | ||||
|             && exit 1) | ||||
							
								
								
									
										34
									
								
								.github/workflows/failure-cases.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								.github/workflows/failure-cases.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,34 @@ | ||||
| name: Execute failure cases | ||||
| 
 | ||||
| on: | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| env: | ||||
|   CACHE_KEY_PREFIX: ${{github.workflow}}#${{github.run_number}}- | ||||
| 
 | ||||
| jobs: | ||||
| 
 | ||||
|   wrapper-missing: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Test wrapper missing | ||||
|       uses: ./ | ||||
|       continue-on-error: true | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/no-wrapper | ||||
|         arguments: help | ||||
| 
 | ||||
|   bad-configuration: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Test bad config value | ||||
|       uses: ./ | ||||
|       continue-on-error: true | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/no-wrapper | ||||
|         arguments: help | ||||
|         cache-disabled: yes | ||||
							
								
								
									
										35
									
								
								.github/workflows/integ-test-action-inputs.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										35
									
								
								.github/workflows/integ-test-action-inputs.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,35 +0,0 @@ | ||||
| name: Test action inputs | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: action-inputs-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   action-inputs: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Invoke with multi-line arguments | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: .github/workflow-samples/groovy-dsl | ||||
|         arguments: | | ||||
|             --configuration-cache | ||||
|             --build-cache | ||||
|             -DsystemProperty=FOO | ||||
|             -PgradleProperty=BAR | ||||
|             test | ||||
|             jar | ||||
							
								
								
									
										148
									
								
								.github/workflows/integ-test-caching-config.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										148
									
								
								.github/workflows/integ-test-caching-config.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,148 +0,0 @@ | ||||
| name: Test caching configuration | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: action-inputs-caching-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   seed-build: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         # Add "enterprise" to main cache entry but omit "notifications" | ||||
|         gradle-home-cache-includes: | | ||||
|             caches | ||||
|             enterprise | ||||
|         # Exclude build-cache from main cache entry | ||||
|         gradle-home-cache-excludes: | | ||||
|             caches/build-cache-* | ||||
|             caches/*/executionHistory | ||||
|     - name: Build using Gradle wrapper | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache dependencies, by running build with --offline | ||||
|   verify-build: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         # Use the same configuration as used in the seed build | ||||
|         gradle-home-cache-includes: | | ||||
|             caches | ||||
|             enterprise | ||||
|         gradle-home-cache-excludes: | | ||||
|             caches/build-cache-* | ||||
|             caches/*/executionHistory | ||||
|         cache-read-only: true | ||||
|     - name: Execute Gradle build with --offline | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test --offline | ||||
| 
 | ||||
|   # Test that build scans are captured when caching is explicitly disabled | ||||
|   cache-disabled: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-disabled: true | ||||
|     - name: Run Gradle build | ||||
|       id: gradle | ||||
|       working-directory: .github/workflow-samples/no-wrapper${{ matrix.build-root-suffix }} | ||||
|       run: gradle help "-DgradleVersionCheck=${{matrix.gradle}}" | ||||
|     - name: Check Build Scan url is captured | ||||
|       if: ${{ !steps.gradle.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No Build Scan detected') | ||||
| 
 | ||||
|   # Test that build scans are captured when caching is disabled because Gradle User Home already exists | ||||
|   cache-disabled-pre-existing-gradle-home: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Create dummy Gradle User Home | ||||
|       run: mkdir -p ~/.gradle/caches | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|     - name: Run Gradle build | ||||
|       id: gradle | ||||
|       working-directory: .github/workflow-samples/no-wrapper${{ matrix.build-root-suffix }} | ||||
|       run: gradle help "-DgradleVersionCheck=${{matrix.gradle}}" | ||||
|     - name: Check Build Scan url is captured | ||||
|       if: ${{ !steps.gradle.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No Build Scan detected') | ||||
| 
 | ||||
|   # Test seed the cache with cache-write-only and verify with cache-read-only | ||||
|   seed-build-write-only: | ||||
|     env: | ||||
|       GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: ${{ inputs.cache-key-prefix }}-write-only- | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-write-only: true | ||||
|     - name: Build using Gradle wrapper | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test | ||||
| 
 | ||||
|   verify-write-only-build: | ||||
|     env: | ||||
|       GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: ${{ inputs.cache-key-prefix }}-write-only- | ||||
|     needs: seed-build-write-only | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Execute Gradle build with --offline | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test --offline | ||||
| 
 | ||||
| @ -1,91 +0,0 @@ | ||||
| name: Test dependency graph | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: dependency-graph-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   unsupported-gradle-version-warning: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle for dependency-graph generate | ||||
|       uses: ./ | ||||
|       with: | ||||
|         gradle-version: 7.0.1 | ||||
|         dependency-graph: generate | ||||
|         dependency-graph-continue-on-failure: true | ||||
|     - name: Run with unsupported Gradle version | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: | | ||||
|         if gradle help | grep -q 'warning::Dependency Graph is not supported for Gradle 7.0.1. No dependency snapshot will be generated.'; | ||||
|         then | ||||
|           echo "Got the expected warning" | ||||
|         else | ||||
|           echo "Did not get the expected warning" | ||||
|           exit 1 | ||||
|         fi | ||||
| 
 | ||||
|   unsupported-gradle-version-failure: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle for dependency-graph generate | ||||
|       uses: ./ | ||||
|       with: | ||||
|         gradle-version: 7.0.1 | ||||
|         dependency-graph: generate | ||||
|         dependency-graph-continue-on-failure: false | ||||
|     - name: Run with unsupported Gradle version | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: | | ||||
|         if gradle help; then | ||||
|           echo "Expected build to fail with Gradle 7.0.1" | ||||
|           exit 1 | ||||
|         fi | ||||
| 
 | ||||
|   insufficient-permissions-warning: | ||||
|     runs-on: ubuntu-latest | ||||
|     permissions: | ||||
|       contents: read | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle for dependency-graph generate | ||||
|       uses: ./ | ||||
|       with: | ||||
|         dependency-graph: generate-and-submit | ||||
|         dependency-graph-continue-on-failure: true | ||||
|     - name: Run with insufficient permissions | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew help | ||||
|       # This test is primarily for demonstration: it's unclear how to check for warnings emitted in the post-action | ||||
| 
 | ||||
|   SHOULD_FAIL-insufficient-permissions-failure: | ||||
|     runs-on: ubuntu-latest | ||||
|     permissions: | ||||
|       contents: read | ||||
|     continue-on-error: true | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle for dependency-graph generate | ||||
|       uses: ./ | ||||
|       with: | ||||
|         dependency-graph: generate-and-submit | ||||
|         dependency-graph-continue-on-failure: false | ||||
|     - name: Run with insufficient permissions | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew help | ||||
|       # This test is primarily for demonstration: it's unclear how to check for a failure in the post-action | ||||
							
								
								
									
										134
									
								
								.github/workflows/integ-test-dependency-graph.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										134
									
								
								.github/workflows/integ-test-dependency-graph.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,134 +0,0 @@ | ||||
| name: Test dependency graph | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| permissions: | ||||
|   contents: write | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: dependency-graph-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   groovy-generate: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle for dependency-graph generate | ||||
|       uses: ./ | ||||
|       with: | ||||
|         dependency-graph: generate-and-upload | ||||
|     - name: Run gradle build | ||||
|       run: ./gradlew build | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
| 
 | ||||
|   kotlin-generate: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle for dependency-graph generate | ||||
|       uses: ./ | ||||
|       with: | ||||
|         dependency-graph: generate-and-submit | ||||
|     - name: Run gradle build | ||||
|       run: ./gradlew build | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|    | ||||
|   submit: | ||||
|     needs: [groovy-generate] | ||||
|     runs-on: "ubuntu-latest" | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Submit dependency graphs | ||||
|       uses: ./ | ||||
|       with: | ||||
|         dependency-graph: download-and-submit | ||||
| 
 | ||||
|   multiple-builds: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle for dependency-graph generate | ||||
|       uses: ./ | ||||
|       with: | ||||
|         dependency-graph: generate-and-submit | ||||
|     - id: gradle-assemble | ||||
|       run: ./gradlew assemble | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|     - id: gradle-build | ||||
|       run: ./gradlew build | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|     - id: gradle-build-again | ||||
|       run: ./gradlew build | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|     - name: Check generated dependency graphs | ||||
|       shell: bash | ||||
|       run: | | ||||
|         echo "gradle-assemble report file: ${{ steps.gradle-assemble.outputs.dependency-graph-file }}" | ||||
|         echo "gradle-build report file: ${{ steps.gradle-build.outputs.dependency-graph-file }}" | ||||
|         echo "gradle-build-again report file: ${{ steps.gradle-build-again.outputs.dependency-graph-file }}" | ||||
|         ls -l dependency-graph-reports | ||||
|         if [ ! -e "${{ steps.gradle-assemble.outputs.dependency-graph-file }}" ]; then | ||||
|             echo "Did not find gradle-assemble dependency graph file" | ||||
|             exit 1 | ||||
|         fi | ||||
|         if [ ! -e "${{ steps.gradle-build.outputs.dependency-graph-file }}" ]; then | ||||
|             echo "Did not find gradle-build dependency graph files" | ||||
|             exit 1 | ||||
|         fi | ||||
|         if [ ! -e "${{ steps.gradle-build-again.outputs.dependency-graph-file }}" ]; then | ||||
|             echo "Did not find gradle-build-again dependency graph files" | ||||
|             exit 1 | ||||
|         fi | ||||
|          | ||||
|   config-cache: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle for dependency-graph generate | ||||
|       uses: ./ | ||||
|       with: | ||||
|         dependency-graph: generate-and-submit | ||||
|     - id: config-cache-store | ||||
|       run: ./gradlew assemble --configuration-cache | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|     - name: Check and delete generated dependency graph | ||||
|       shell: bash | ||||
|       run: | | ||||
|         if [ ! -e "${{ steps.config-cache-store.outputs.dependency-graph-file }}" ]; then | ||||
|             echo "Did not find config-cache-store dependency graph files" | ||||
|             exit 1 | ||||
|         fi | ||||
|         rm ${{ steps.config-cache-store.outputs.dependency-graph-file }} | ||||
|     - id: config-cache-reuse | ||||
|       run: ./gradlew assemble --configuration-cache | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|     - name: Check no dependency graph is generated | ||||
|       shell: bash | ||||
|       run: | | ||||
|         if [ ! -z "$(ls -A dependency-graph-reports)" ]; then | ||||
|             echo "Expected no dependency graph files to be generated" | ||||
|             ls -l dependency-graph-reports | ||||
|             exit 1 | ||||
|         fi         | ||||
| @ -1,85 +0,0 @@ | ||||
| name: Test detect java toolchains | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: detect-java-toolchain-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   # Test that pre-installed runner JDKs are detected | ||||
|   pre-installed-toolchains: | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|     - name: List detected toolchains | ||||
|       shell: bash | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: |  | ||||
|         gradle --info javaToolchains > output.txt | ||||
|         cat output.txt | ||||
|     - name: Verify detected toolchains | ||||
|       shell: bash | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: |  | ||||
|         grep -q 'Eclipse Temurin JDK 1.8' output.txt || (echo "::error::Did not detect preinstalled JDK 1.8" && exit 1) | ||||
|         grep -q 'Eclipse Temurin JDK 11' output.txt || (echo "::error::Did not detect preinstalled JDK 11" && exit 1) | ||||
|         grep -q 'Eclipse Temurin JDK 17' output.txt || (echo "::error::Did not detect preinstalled JDK 17" && exit 1) | ||||
|         grep -q 'Eclipse Temurin JDK 21' output.txt || (echo "::error::Did not detect preinstalled JDK 21" && exit 1) | ||||
| 
 | ||||
|   # Test that JDKs provisioned by setup-java are detected | ||||
|   setup-java-installed-toolchain: | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java 20 | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: 'temurin' | ||||
|         java-version: '20' | ||||
|     - name: Setup Java 16 | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: 'temurin' | ||||
|         java-version: '16' | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|     - name: List detected toolchains | ||||
|       shell: bash | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: |  | ||||
|         gradle --info javaToolchains > output.txt | ||||
|         cat output.txt | ||||
|     - name: Verify setup JDKs are detected | ||||
|       shell: bash | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: |  | ||||
|         grep -q 'Eclipse Temurin JDK 16' output.txt || (echo "::error::Did not detect setup-java installed JDK 16" && exit 1) | ||||
|         grep -q 'Eclipse Temurin JDK 20' output.txt || (echo "::error::Did not detect setup-java installed JDK 20" && exit 1) | ||||
|     - name: Verify pre-installed toolchains are detected | ||||
|       shell: bash | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: |  | ||||
|         grep -q 'Eclipse Temurin JDK 1.8' output.txt || (echo "::error::Did not detect preinstalled JDK 1.8" && exit 1) | ||||
|         grep -q 'Eclipse Temurin JDK 11' output.txt || (echo "::error::Did not detect preinstalled JDK 11" && exit 1) | ||||
|         grep -q 'Eclipse Temurin JDK 17' output.txt || (echo "::error::Did not detect preinstalled JDK 17" && exit 1) | ||||
|         grep -q 'Eclipse Temurin JDK 21' output.txt || (echo "::error::Did not detect preinstalled JDK 21" && exit 1) | ||||
| @ -1,48 +0,0 @@ | ||||
| name: Test execution with caching | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: execution-with-caching-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   seed-build: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Execute Gradle build | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         build-root-directory: .github/workflow-samples/groovy-dsl | ||||
|         arguments: test | ||||
| 
 | ||||
|   # Test that the gradle-user-home is restored | ||||
|   verify-build: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Execute Gradle build | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|         build-root-directory: .github/workflow-samples/groovy-dsl | ||||
|         arguments: test --offline -DverifyCachedBuild=true | ||||
| 
 | ||||
							
								
								
									
										80
									
								
								.github/workflows/integ-test-execution.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										80
									
								
								.github/workflows/integ-test-execution.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,80 +0,0 @@ | ||||
| name: Test execution | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: execution-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs:    | ||||
|   # Tests for executing with different Gradle versions.  | ||||
|   # Each build verifies that it is executed with the expected Gradle version. | ||||
|   gradle-execution: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|         include: | ||||
|           - os: windows-latest | ||||
|             script-suffix: '.bat' | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Test use defined Gradle version | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         gradle-version: 6.9 | ||||
|         build-root-directory: .github/workflow-samples/no-wrapper | ||||
|         arguments: help -DgradleVersionCheck=6.9 | ||||
|     - name: Test use Gradle version alias | ||||
|       uses: ./ | ||||
|       with: | ||||
|         gradle-version: release-candidate | ||||
|         build-root-directory: .github/workflow-samples/no-wrapper | ||||
|         arguments: help | ||||
| 
 | ||||
|   gradle-versions: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         gradle: [7.5.1, 6.9.2, 5.6.4, 4.10.3, 3.5.1] | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|         include: | ||||
|           - gradle: 5.6.4 | ||||
|             build-root-suffix: -gradle-5 | ||||
|           - gradle: 4.10.3 | ||||
|             build-root-suffix: -gradle-4 | ||||
|           - gradle: 3.5.1 | ||||
|             build-root-suffix: -gradle-4 | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: temurin | ||||
|         java-version: 8 | ||||
|     - name: Run Gradle build | ||||
|       uses: ./ | ||||
|       id: gradle | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         gradle-version: ${{matrix.gradle}} | ||||
|         build-root-directory: .github/workflow-samples/no-wrapper${{ matrix.build-root-suffix }} | ||||
|         arguments: help -DgradleVersionCheck=${{matrix.gradle}} | ||||
|     - name: Check Build Scan url | ||||
|       if: ${{ !steps.gradle.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No Build Scan detected')     | ||||
|    | ||||
|     | ||||
| @ -1,89 +0,0 @@ | ||||
| name: Test develocity injection | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
|     secrets: | ||||
|       DEVELOCITY_ACCESS_KEY: | ||||
|         required: true | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: provision-gradle-versions-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   inject-develocity: | ||||
|     env: | ||||
|       DEVELOCITY_INJECTION_ENABLED: true | ||||
|       DEVELOCITY_URL: https://ge.solutions-team.gradle.com | ||||
|       DEVELOCITY_PLUGIN_VERSION: 3.16.2 | ||||
|       DEVELOCITY_CCUD_PLUGIN_VERSION: 1.13 | ||||
|       GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }} # This env var has not (yet) been renamed/aliased in GE plugin 3.16.2 | ||||
|     strategy: | ||||
|       matrix: | ||||
|         gradle: [current, 7.6.2, 6.9.4, 5.6.4] | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: temurin | ||||
|         java-version: 8 | ||||
|     - name: Setup Gradle | ||||
|       id: setup-gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         gradle-version: ${{ matrix.gradle }} | ||||
|     - name: Run Gradle build | ||||
|       id: gradle | ||||
|       working-directory: .github/workflow-samples/no-ge | ||||
|       run: gradle help | ||||
|     - name: Check Build Scan url | ||||
|       if: ${{ !steps.gradle.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No Build Scan detected')    | ||||
| 
 | ||||
|   build-scan-publish: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         gradle: [current, 7.6.2, 6.9.4, 5.6.4] | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: temurin | ||||
|         java-version: 8 | ||||
|     - name: Setup Gradle | ||||
|       id: setup-gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         gradle-version: ${{ matrix.gradle }} | ||||
|         build-scan-publish: true | ||||
|         build-scan-terms-of-service-url: "https://gradle.com/terms-of-service" | ||||
|         build-scan-terms-of-service-agree: "yes" | ||||
|     - name: Run Gradle build | ||||
|       id: gradle | ||||
|       working-directory: .github/workflow-samples/no-ge | ||||
|       run: gradle help | ||||
|     - name: Check Build Scan url | ||||
|       if: ${{ !steps.gradle.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No Build Scan detected')    | ||||
| 
 | ||||
| @ -1,108 +0,0 @@ | ||||
| name: Test provision Gradle versions | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: provision-gradle-versions-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs:    | ||||
|   # Tests for executing with different Gradle versions.  | ||||
|   # Each build verifies that it is executed with the expected Gradle version. | ||||
|   provision-gradle: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|         include: | ||||
|           - os: windows-latest | ||||
|             script-suffix: '.bat' | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle with v6.9 | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         gradle-version: 6.9 | ||||
|     - name: Test uses Gradle v6.9 | ||||
|       working-directory: .github/workflow-samples/no-wrapper | ||||
|       run: gradle help "-DgradleVersionCheck=6.9" | ||||
|     - name: Setup Gradle with v7.1.1 | ||||
|       uses: ./ | ||||
|       with: | ||||
|         gradle-version: 7.1.1 | ||||
|     - name: Test uses Gradle v7.1.1 | ||||
|       working-directory: .github/workflow-samples/no-wrapper | ||||
|       run: gradle help "-DgradleVersionCheck=7.1.1" | ||||
|     - name: Setup Gradle with release-candidate | ||||
|       uses: ./ | ||||
|       with: | ||||
|         gradle-version: release-candidate | ||||
|     - name: Test use release-candidate | ||||
|       working-directory: .github/workflow-samples/no-wrapper | ||||
|       run: gradle help | ||||
|     - name: Setup Gradle with current | ||||
|       id: gradle-current | ||||
|       uses: ./ | ||||
|       with: | ||||
|         gradle-version: current | ||||
|     - name: Check current version output parameter | ||||
|       if: ${{ !startsWith(steps.gradle-current.outputs.gradle-version , '8.') }} | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('Gradle version parameter not set correctly: value was "${{ steps.gradle-current.outputs.gradle-version }}"')     | ||||
|    | ||||
|   gradle-versions: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         gradle: [7.3, 6.9, 5.6.4, 4.10.3, 3.5.1] | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|         include: | ||||
|           - gradle: 5.6.4 | ||||
|             build-root-suffix: -gradle-5 | ||||
|           - gradle: 4.10.3 | ||||
|             build-root-suffix: -gradle-4 | ||||
|           - gradle: 3.5.1 | ||||
|             build-root-suffix: -gradle-4 | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: temurin | ||||
|         java-version: 8 | ||||
|     - name: Setup Gradle | ||||
|       id: setup-gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         gradle-version: ${{ matrix.gradle }} | ||||
|     - name: Check output parameter | ||||
|       if: ${{ steps.setup-gradle.outputs.gradle-version != matrix.gradle }} | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('Gradle version parameter not set correctly: value was "${{ steps.setup-gradle.outputs.gradle-version }}"')     | ||||
|     - name: Run Gradle build | ||||
|       id: gradle | ||||
|       working-directory: .github/workflow-samples/no-wrapper${{ matrix.build-root-suffix }} | ||||
|       run: gradle help "-DgradleVersionCheck=${{matrix.gradle}}" | ||||
|     - name: Check Build Scan url | ||||
|       if: ${{ !steps.gradle.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No Build Scan detected')     | ||||
|    | ||||
|     | ||||
| @ -1,195 +0,0 @@ | ||||
| name: Test restore configuration-cache | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
|     secrets: | ||||
|       GRADLE_ENCRYPTION_KEY: | ||||
|         required: true | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-configuration-cache-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   seed-build-groovy: | ||||
|     env: | ||||
|       GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java to ensure consistency | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: 'liberica' | ||||
|         java-version: '21' | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | ||||
|         gradle-version: 8.6-rc-1 | ||||
|     - name: Groovy build with configuration-cache enabled | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: gradle test --configuration-cache | ||||
| 
 | ||||
|   verify-build-groovy: | ||||
|     env: | ||||
|       GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy | ||||
|     needs: seed-build-groovy | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java to ensure consistency | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: 'liberica' | ||||
|         java-version: '21' | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|         cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | ||||
|         gradle-version: 8.6-rc-1 | ||||
|     - name: Groovy build with configuration-cache enabled | ||||
|       id: execute | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: gradle test --configuration-cache | ||||
|     - name: Check that configuration-cache was used | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           const fs = require('fs') | ||||
|           if (fs.existsSync('.github/workflow-samples/groovy-dsl/task-configured.txt')) { | ||||
|             core.setFailed('Configuration cache was not used - task was configured unexpectedly') | ||||
|           } | ||||
| 
 | ||||
|   # Check that the build can run when no extracted cache entries are restored | ||||
|   gradle-user-home-not-fully-restored: | ||||
|     env: | ||||
|       GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-groovy | ||||
|     needs: seed-build-groovy | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java to ensure consistency | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: 'liberica' | ||||
|         java-version: '21' | ||||
|     - name: Setup Gradle with no extracted cache entries restored | ||||
|       uses: ./ | ||||
|       env:  | ||||
|         GRADLE_BUILD_ACTION_SKIP_RESTORE: "generated-gradle-jars|wrapper-zips|java-toolchains|instrumented-jars|dependencies|kotlin-dsl" | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|         cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | ||||
|         gradle-version: 8.6-rc-1 | ||||
|     - name: Check execute Gradle build with configuration cache enabled (but not restored) | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: gradle test --configuration-cache | ||||
| 
 | ||||
|   seed-build-kotlin: | ||||
|     env: | ||||
|       GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-kotlin | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java to ensure consistency | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: 'liberica' | ||||
|         java-version: '21' | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | ||||
|         gradle-version: 8.6-rc-1 | ||||
|     - name: Execute 'help' with configuration-cache enabled | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: gradle help --configuration-cache | ||||
| 
 | ||||
|   modify-build-kotlin: | ||||
|     env: | ||||
|       GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-kotlin-modified | ||||
|     needs: seed-build-kotlin | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java to ensure consistency | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: 'liberica' | ||||
|         java-version: '21' | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|         cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | ||||
|         gradle-version: 8.6-rc-1 | ||||
|     - name: Execute 'test' with configuration-cache enabled | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: gradle test --configuration-cache | ||||
| 
 | ||||
|   # Test restore configuration-cache from the third build invocation | ||||
|   verify-build-kotlin: | ||||
|     env: | ||||
|       GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-cc-kotlin-modified | ||||
|     needs: modify-build-kotlin | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java to ensure consistency | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         distribution: 'liberica' | ||||
|         java-version: '21' | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|         cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | ||||
|         gradle-version: 8.6-rc-1 | ||||
|     - name: Execute 'test' again with configuration-cache enabled | ||||
|       id: execute | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: gradle test --configuration-cache | ||||
|     - name: Check that configuration-cache was used | ||||
|       uses: actions/github-script@v7 | ||||
|       with: | ||||
|         script: | | ||||
|           const fs = require('fs') | ||||
|           if (fs.existsSync('.github/workflow-samples/kotlin-dsl/task-configured.txt')) { | ||||
|             core.setFailed('Configuration cache was not used - task was configured unexpectedly') | ||||
|           } | ||||
| 
 | ||||
| @ -1,52 +0,0 @@ | ||||
| name: Test restore custom Gradle Home | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-custom-gradle-home-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   seed-build: | ||||
|     runs-on: ubuntu-latest | ||||
|     container: fedora:latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         java-version: 11 | ||||
|         distribution: temurin | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|     - name: Build using Gradle wrapper | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache dependencies, by running build with --offline | ||||
|   dependencies-cache: | ||||
|     needs: seed-build | ||||
|     runs-on: ubuntu-latest | ||||
|     container: fedora:latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Java | ||||
|       uses: actions/setup-java@v4 | ||||
|       with: | ||||
|         java-version: 11 | ||||
|         distribution: temurin | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Execute Gradle build with --offline | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test --offline | ||||
| @ -1,67 +0,0 @@ | ||||
| name: Test restore custom Gradle Home | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-custom-gradle-home-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   seed-build: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Set Gradle User Home | ||||
|       run: | | ||||
|         mkdir -p $GITHUB_WORKSPACE/gradle-user-home | ||||
|         echo "GRADLE_USER_HOME=$GITHUB_WORKSPACE/gradle-user-home" >> $GITHUB_ENV | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|     - name: Build using Gradle wrapper | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test --info | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache dependencies, by running build with --offline | ||||
|   dependencies-cache: | ||||
|     needs: seed-build | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Set Gradle User Home | ||||
|       run: | | ||||
|         mkdir -p $GITHUB_WORKSPACE/gradle-user-home | ||||
|         echo "GRADLE_USER_HOME=$GITHUB_WORKSPACE/gradle-user-home" >> $GITHUB_ENV | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Execute Gradle build with --offline | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test --offline --info | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache and restore local build-cache | ||||
|   build-cache: | ||||
|     needs: seed-build | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Set Gradle User Home | ||||
|       run: | | ||||
|         mkdir -p $GITHUB_WORKSPACE/gradle-user-home | ||||
|         echo "GRADLE_USER_HOME=$GITHUB_WORKSPACE/gradle-user-home" >> $GITHUB_ENV | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Execute Gradle build and verify tasks from cache | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test -DverifyCachedBuild=true --info | ||||
							
								
								
									
										124
									
								
								.github/workflows/integ-test-restore-gradle-home.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										124
									
								
								.github/workflows/integ-test-restore-gradle-home.yml
									
									
									
									
										vendored
									
									
								
							| @ -1,124 +0,0 @@ | ||||
| name: Test restore Gradle Home | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-gradle-home-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_JOB: restore-gradle-home | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   seed-build: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|     - name: Build using Gradle wrapper | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache dependencies, by running build with --offline | ||||
|   dependencies-cache: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Execute Gradle build with --offline | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test --offline | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache and restore local build-cache | ||||
|   build-cache: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Execute Gradle build and verify tasks from cache | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test -DverifyCachedBuild=true | ||||
| 
 | ||||
|   # Check that the build can run when Gradle User Home is not fully restored | ||||
|   no-extracted-cache-entries-restored: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle with no extracted cache entries restored | ||||
|       uses: ./ | ||||
|       env:  | ||||
|         GRADLE_BUILD_ACTION_SKIP_RESTORE: "generated-gradle-jars|wrapper-zips|java-toolchains|instrumented-jars|dependencies|kotlin-dsl" | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Check executee Gradle build | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test | ||||
| 
 | ||||
|   # Test that a pre-existing gradle-user-home can be overwritten by the restored cache | ||||
|   pre-existing-gradle-home: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Pre-create Gradle User Home | ||||
|       shell: bash | ||||
|       run: | | ||||
|         mkdir -p ~/.gradle/caches | ||||
|         touch ~/.gradle/gradle.properties | ||||
|         touch ~/.gradle/caches/dummy.txt | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|         cache-overwrite-existing: true | ||||
|     - name: Check that pre-existing content still exists | ||||
|       shell: bash | ||||
|       run: | | ||||
|         if [ ! -e ~/.gradle/caches/dummy.txt ]; then | ||||
|           echo "::error ::Should find dummy.txt after cache restore" | ||||
|           exit 1 | ||||
|         fi | ||||
|         if [ ! -e ~/.gradle/gradle.properties ]; then | ||||
|           echo "::error ::Should find gradle.properties after cache restore" | ||||
|           exit 1 | ||||
|         fi | ||||
|     - name: Execute Gradle build with --offline | ||||
|       working-directory: .github/workflow-samples/groovy-dsl | ||||
|       run: ./gradlew test --offline | ||||
| @ -1,49 +0,0 @@ | ||||
| name: Test restore java toolchains | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: restore-java-toolchain-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   seed-build: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|     - name: Build using Gradle wrapper | ||||
|       working-directory: .github/workflow-samples/java-toolchain | ||||
|       run: ./gradlew test --info | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache the toolchain, by running build with --offline | ||||
|   toolchain-cache: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Execute Gradle build with --offline | ||||
|       working-directory: .github/workflow-samples/java-toolchain | ||||
|       run: ./gradlew test --info --offline | ||||
| @ -1,48 +0,0 @@ | ||||
| name: Test sample Gradle Plugin project | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: sample-gradle-plugin-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   seed-build: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|     - name: Build gradle-plugin project | ||||
|       working-directory: .github/workflow-samples/gradle-plugin | ||||
|       run: ./gradlew build | ||||
| 
 | ||||
|   verify-build: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Build gradle-plugin project | ||||
|       working-directory: .github/workflow-samples/gradle-plugin | ||||
|       run: ./gradlew build --offline | ||||
| @ -1,48 +0,0 @@ | ||||
| name: Test sample Kotlin DSL project | ||||
| 
 | ||||
| on: | ||||
|   workflow_call: | ||||
|     inputs: | ||||
|       cache-key-prefix: | ||||
|         type: string | ||||
|       runner-os: | ||||
|         type: string | ||||
|         default: '["ubuntu-latest", "windows-latest", "macos-latest"]' | ||||
| 
 | ||||
| env: | ||||
|   GRADLE_BUILD_ACTION_CACHE_KEY_PREFIX: sample-kotlin-dsl-${{ inputs.cache-key-prefix }} | ||||
|   GRADLE_BUILD_ACTION_CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   seed-build: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: false # For testing, allow writing cache entries on non-default branches | ||||
|     - name: Build kotlin-dsl project | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew build | ||||
| 
 | ||||
|   verify-build: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: ${{fromJSON(inputs.runner-os)}} | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: ./ | ||||
|       with: | ||||
|         cache-read-only: true | ||||
|     - name: Build kotlin-dsl project | ||||
|       working-directory: .github/workflow-samples/kotlin-dsl | ||||
|       run: ./gradlew build --offline | ||||
							
								
								
									
										84
									
								
								.github/workflows/integTest-caching.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								.github/workflows/integTest-caching.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,84 @@ | ||||
| name: Test caching | ||||
| 
 | ||||
| on: | ||||
|   pull_request: | ||||
|   push: | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| env: | ||||
|   CACHE_KEY_PREFIX: ${{github.workflow}}#${{github.run_number}}- | ||||
| 
 | ||||
| jobs: | ||||
|   # Run initial Gradle builds to push initial cache entries | ||||
|   # These builds should start fresh without cache hits, due to the seed injected into the cache key above. | ||||
|   seed-build: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: [ubuntu-latest, macos-latest, windows-latest] | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Build using Gradle wrapper | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/groovy-dsl | ||||
|         arguments: test | ||||
|     - name: Build with configuration-cache enabled | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/groovy-dsl | ||||
|         arguments: test --configuration-cache | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache dependencies, by running build with --offline | ||||
|   dependencies-cache: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: [ubuntu-latest, macos-latest, windows-latest] | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Execute Gradle build with --offline | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/groovy-dsl | ||||
|         arguments: test --offline | ||||
|         cache-read-only: true | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache and restore local build-cache | ||||
|   build-cache: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: [ubuntu-latest, macos-latest, windows-latest] | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Execute Gradle build and verify tasks from cache | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/groovy-dsl | ||||
|         arguments: test -DverifyCachedBuild=true | ||||
|         cache-read-only: true | ||||
| 
 | ||||
|   # Test that the project-dot-gradle cache will cache and restore configuration-cache | ||||
|   configuration-cache: | ||||
|     needs: seed-build | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: [ubuntu-latest, macos-latest, windows-latest] | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Execute Gradle build and verify cached configuration | ||||
|       uses: ./ | ||||
|       env:  | ||||
|         VERIFY_CACHED_CONFIGURATION: true | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/groovy-dsl | ||||
|         arguments: test --configuration-cache | ||||
|         cache-read-only: true | ||||
							
								
								
									
										107
									
								
								.github/workflows/integTest-execution.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										107
									
								
								.github/workflows/integTest-execution.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,107 @@ | ||||
| name: Test Gradle execution | ||||
| 
 | ||||
| on: | ||||
|   pull_request: | ||||
|   push: | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| env: | ||||
|   CACHE_KEY_PREFIX: ${{github.workflow}}#${{github.run_number}}- | ||||
| 
 | ||||
| jobs:    | ||||
|   # Tests for executing with different Gradle versions.  | ||||
|   # Each build verifies that it is executed with the expected Gradle version. | ||||
|   gradle-execution: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: [ubuntu-latest, macos-latest, windows-latest] | ||||
|         include: | ||||
|           - os: windows-latest | ||||
|             script-suffix: '.bat' | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Test use defined Gradle version | ||||
|       uses: ./ | ||||
|       with: | ||||
|         gradle-version: 6.9 | ||||
|         build-root-directory: __tests__/samples/no-wrapper | ||||
|         arguments: help -DgradleVersionCheck=6.9 | ||||
|     - name: Test use Gradle version alias | ||||
|       uses: ./ | ||||
|       with: | ||||
|         gradle-version: release-candidate | ||||
|         build-root-directory: __tests__/samples/no-wrapper | ||||
|         arguments: help -DgradleVersionCheck=7.2 | ||||
|     - name: Test use defined Gradle executable | ||||
|       uses: ./ | ||||
|       with: | ||||
|         gradle-executable: __tests__/samples/groovy-dsl/gradlew${{ matrix.script-suffix }} | ||||
|         build-root-directory: __tests__/samples/no-wrapper | ||||
|         arguments: help -DgradleVersionCheck=7.1.1 | ||||
| 
 | ||||
|   gradle-versions: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: [ubuntu-latest, macos-latest, windows-latest] | ||||
|         include: | ||||
|           - os: windows-latest | ||||
|             script-suffix: '.bat' | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Test Gradle 7 | ||||
|       uses: ./ | ||||
|       id: gradle7 | ||||
|       with: | ||||
|         gradle-version: 7.2 | ||||
|         build-root-directory: __tests__/samples/no-wrapper | ||||
|         arguments: help -DgradleVersionCheck=7.2 | ||||
|     - name: Check Gradle 7 scan | ||||
|       if: ${{ !steps.gradle7.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v3 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No build scan detected')     | ||||
|     - name: Test Gradle 6 | ||||
|       uses: ./ | ||||
|       id: gradle6 | ||||
|       with: | ||||
|         gradle-version: 6.9 | ||||
|         build-root-directory: __tests__/samples/no-wrapper | ||||
|         arguments: help -DgradleVersionCheck=6.9 | ||||
|     - name: Check Gradle 6 scan | ||||
|       if: ${{ !steps.gradle6.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v3 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No build scan detected')     | ||||
|     - name: Test Gradle 5 | ||||
|       uses: ./ | ||||
|       id: gradle5 | ||||
|       with: | ||||
|         gradle-version: 5.6.4 | ||||
|         build-root-directory: __tests__/samples/no-wrapper-gradle-5 | ||||
|         arguments: help -DgradleVersionCheck=5.6.4 | ||||
|     - name: Check Gradle 5 scan | ||||
|       if: ${{ !steps.gradle5.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v3 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No build scan detected')     | ||||
|     - name: Test Gradle 4 | ||||
|       uses: ./ | ||||
|       id: gradle4 | ||||
|       with: | ||||
|         gradle-version: 4.10.3 | ||||
|         build-root-directory: __tests__/samples/no-wrapper-gradle-4 | ||||
|         arguments: help -DgradleVersionCheck=4.10.3 | ||||
|     - name: Check Gradle 4 scan | ||||
|       if: ${{ !steps.gradle4.outputs.build-scan-url }} | ||||
|       uses: actions/github-script@v3 | ||||
|       with: | ||||
|         script: | | ||||
|           core.setFailed('No build scan detected')     | ||||
|     | ||||
							
								
								
									
										52
									
								
								.github/workflows/integTest-gradle-user-home.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								.github/workflows/integTest-gradle-user-home.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,52 @@ | ||||
| name: Test caching with a custom GRADLE_USER_HOME | ||||
| 
 | ||||
| on: | ||||
|   pull_request: | ||||
|   push: | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| env: | ||||
|   CACHE_KEY_PREFIX: ${{github.workflow}}#${{github.run_number}}- | ||||
|   GRADLE_USER_HOME: custom/gradle/home | ||||
| 
 | ||||
| jobs: | ||||
|   # Run initial Gradle builds to push initial cache entries | ||||
|   # These builds should start fresh without cache hits, due to the seed injected into the cache key above. | ||||
|   seed-build: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Build using Gradle wrapper | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/groovy-dsl | ||||
|         arguments: test | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache dependencies, by running build with --offline | ||||
|   dependencies-cache: | ||||
|     needs: seed-build | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Execute Gradle build with --offline | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/groovy-dsl | ||||
|         arguments: test --offline | ||||
|         cache-read-only: true | ||||
| 
 | ||||
|   # Test that the gradle-user-home cache will cache and restore local build-cache | ||||
|   build-cache: | ||||
|     needs: seed-build | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Execute Gradle build and verify tasks from cache | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/groovy-dsl | ||||
|         arguments: test -DverifyCachedBuild=true | ||||
|         cache-read-only: true | ||||
							
								
								
									
										36
									
								
								.github/workflows/integTest-kotlin-dsl.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								.github/workflows/integTest-kotlin-dsl.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,36 @@ | ||||
| name: Test caching with Kotlin DSL | ||||
| 
 | ||||
| on: | ||||
|   pull_request: | ||||
|   push: | ||||
|   workflow_dispatch: | ||||
| 
 | ||||
| env: | ||||
|   CACHE_KEY_PREFIX: ${{github.workflow}}#${{github.run_number}}- | ||||
|   CACHE_DEBUG_ENABLED: true | ||||
| 
 | ||||
| jobs: | ||||
|   # Use kotlin-dsl project to verify caching of generated jars and compiled scripts | ||||
|   seed-build: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Build kotlin-dsl project | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/kotlin-dsl | ||||
|         arguments: test | ||||
| 
 | ||||
|   # Check that the build can run --offline | ||||
|   verify-build: | ||||
|     needs: seed-build | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v2 | ||||
|     - name: Build kotlin-dsl project | ||||
|       uses: ./ | ||||
|       with: | ||||
|         build-root-directory: __tests__/samples/kotlin-dsl | ||||
|         arguments: test --offline | ||||
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -102,3 +102,5 @@ __tests__/runner/* | ||||
| .idea/ | ||||
| *.iml | ||||
| 
 | ||||
| # ASDF tool configuration | ||||
| .tool-versions | ||||
|  | ||||
							
								
								
									
										3
									
								
								.prettierignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.prettierignore
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,3 @@ | ||||
| dist/ | ||||
| lib/ | ||||
| node_modules/ | ||||
							
								
								
									
										11
									
								
								.prettierrc.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								.prettierrc.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,11 @@ | ||||
| { | ||||
|     "printWidth": 80, | ||||
|     "tabWidth": 4, | ||||
|     "useTabs": false, | ||||
|     "semi": false, | ||||
|     "singleQuote": true, | ||||
|     "trailingComma": "none", | ||||
|     "bracketSpacing": false, | ||||
|     "arrowParens": "avoid", | ||||
|     "parser": "typescript" | ||||
|   } | ||||
							
								
								
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							| @ -1,7 +1,7 @@ | ||||
| 
 | ||||
| The MIT License (MIT) | ||||
| 
 | ||||
| Copyright (c) 2023 Gradle Inc. | ||||
| Copyright (c) 2018 GitHub, Inc. and contributors | ||||
| 
 | ||||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||||
| of this software and associated documentation files (the "Software"), to deal | ||||
|  | ||||
							
								
								
									
										243
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										243
									
								
								README.md
									
									
									
									
									
								
							| @ -1,40 +1,221 @@ | ||||
| > [!IMPORTANT] | ||||
| > As of `v3` this action has been superceded by `gradle/actions/setup-gradle`. | ||||
| > Any workflow that uses `gradle/gradle-build-action@v3` will transparently delegate to `gradle/actions/setup-gradle@v3`. | ||||
| > | ||||
| > Users are encouraged to update their workflows, replacing: | ||||
| > ``` | ||||
| > uses: gradle/gradle-build-action@v3 | ||||
| > ``` | ||||
| > | ||||
| > with | ||||
| > ``` | ||||
| > uses: gradle/actions/setup-gradle@v3 | ||||
| > ``` | ||||
| > | ||||
| > See the [setup-gradle documentation](https://github.com/gradle/actions/tree/main/setup-gradle) for up-to-date documentation for `gradle/actions/setup-gradle`.  | ||||
| # Execute Gradle builds in GitHub Actions workflows | ||||
| 
 | ||||
| # Setup Gradle for use in GitHub Actions workflows | ||||
| This GitHub Action can be used to execute a Gradle build on any platform supported by GitHub Actions. | ||||
| 
 | ||||
| This GitHub Action can be used to configure Gradle on any platform supported by GitHub Actions. | ||||
| **Note:** The following documentation is for `gradle/gradle-build-action@v2`, currently in Beta release. | ||||
| You can view the documentation for the latest stable release (v1.5.1) [on the GitHub Marketplace](https://github.com/marketplace/actions/gradle-build-action?version=v1.5.1).  | ||||
| 
 | ||||
| ## Example usage | ||||
| ## Usage | ||||
| 
 | ||||
| The following workflow will run `./gradlew build` on ubuntu, macos and windows.  | ||||
| The only prerequisite is to have Java installed: you define the version of Java you need to run the build using the `actions/setup-java` action. | ||||
| 
 | ||||
| ```yaml | ||||
| name: Build | ||||
| 
 | ||||
| on: [ push ] | ||||
| 
 | ||||
| # .github/workflows/gradle-build-pr.yml | ||||
| name: Run Gradle on PRs | ||||
| on: pull_request | ||||
| jobs: | ||||
|   build: | ||||
|     runs-on: ubuntu-latest | ||||
|   gradle: | ||||
|     strategy: | ||||
|       matrix: | ||||
|         os: [ubuntu-latest, macos-latest, windows-latest] | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
|     - name: Checkout sources | ||||
|       uses: actions/checkout@v4 | ||||
|     - name: Setup Gradle | ||||
|       uses: gradle/actions/setup-gradle@v3 | ||||
|     - name: Build with Gradle | ||||
|       run: ./gradlew build | ||||
|     - uses: actions/checkout@v2 | ||||
|     - uses: actions/setup-java@v1 | ||||
|       with: | ||||
|         java-version: 11 | ||||
|     - uses: gradle/gradle-build-action@v2 | ||||
|       with: | ||||
|         arguments: build | ||||
| ``` | ||||
| 
 | ||||
| See the [full setup-gradle documentation](https://github.com/gradle/actions/tree/main/setup-gradle) for more advanced usage scenarios.  | ||||
| It is possible to configure multiple Gradle executions to run sequentially in the same job.  | ||||
| Each invocation will start its run with the filesystem state remaining from the previous execution. | ||||
| 
 | ||||
| ```yaml | ||||
| - uses: gradle/gradle-build-action@v2 | ||||
|   with: | ||||
|     arguments: assemble | ||||
| - uses: gradle/gradle-build-action@v2 | ||||
|   with: | ||||
|     arguments: check | ||||
| ``` | ||||
| 
 | ||||
| ## Gradle Execution | ||||
| 
 | ||||
| ### Command-line arguments | ||||
| 
 | ||||
| The `arguments` input can used to pass arbitrary arguments to the `gradle` command line. | ||||
| 
 | ||||
| Here are some valid examples: | ||||
| ```yaml | ||||
| arguments: build | ||||
| arguments: check --scan | ||||
| arguments: some arbitrary tasks | ||||
| arguments: build -PgradleProperty=foo | ||||
| arguments: build -DsystemProperty=bar | ||||
| .... | ||||
| ``` | ||||
| 
 | ||||
| See `gradle --help` for more information. | ||||
| 
 | ||||
| If you need to pass environment variables, use the GitHub Actions workflow syntax: | ||||
| 
 | ||||
| ```yaml | ||||
| - uses: gradle/gradle-build-action@v2 | ||||
|   env: | ||||
|     CI: true | ||||
|   with: | ||||
|     arguments: build | ||||
| ``` | ||||
| 
 | ||||
| ### Gradle build located in a subdirectory | ||||
| 
 | ||||
| By default, the action will execute Gradle in the root directory of your project.  | ||||
| Use the `build-root-directory` input to target a Gradle build in a subdirectory. | ||||
| 
 | ||||
| ```yaml | ||||
| - uses: gradle/gradle-build-action@v2 | ||||
|   with: | ||||
|     build-root-directory: some/subdirectory | ||||
| ``` | ||||
| 
 | ||||
| ### Using a specific Gradle executable | ||||
| 
 | ||||
| The action will first look for a Gradle wrapper script in the root directory of your project.  | ||||
| If not found, `gradle` will be executed from the PATH. | ||||
| Use the `gradle-executable` input to execute using a specific Gradle installation. | ||||
| 
 | ||||
| ```yaml | ||||
|  - uses: gradle/gradle-build-action@v2 | ||||
|    with: | ||||
|      gradle-executable: /path/to/installed/gradle | ||||
| ``` | ||||
| 
 | ||||
| This mechanism can also be used to target a Gradle wrapper script that is located in a non-default location. | ||||
| 
 | ||||
| ### Download, install and use a specific Gradle version | ||||
| 
 | ||||
| The `gradle-build-action` is able to download and install a specific Gradle version to execute. | ||||
| 
 | ||||
| ```yaml | ||||
|  - uses: gradle/gradle-build-action@v2 | ||||
|    with: | ||||
|      gradle-version: 6.5 | ||||
| ``` | ||||
| 
 | ||||
| `gradle-version` can be set to any valid Gradle version. | ||||
| 
 | ||||
| Moreover, you can use the following aliases: | ||||
| 
 | ||||
| | Alias | Selects | | ||||
| | --- |---| | ||||
| | `wrapper`           | The Gradle wrapper's version (default, useful for matrix builds) | | ||||
| | `current`           | The current [stable release](https://gradle.org/install/) | | ||||
| | `release-candidate` | The current [release candidate](https://gradle.org/release-candidate/) if any, otherwise fallback to `current` | | ||||
| | `nightly`           | The latest [nightly](https://gradle.org/nightly/), fails if none. | | ||||
| | `release-nightly`   | The latest [release nightly](https://gradle.org/release-nightly/), fails if none.      | | ||||
| 
 | ||||
| This can be handy to automatically verify your build works with the latest release candidate of Gradle: | ||||
| 
 | ||||
| ```yaml | ||||
| # .github/workflows/test-gradle-rc.yml | ||||
| name: Test latest Gradle RC | ||||
| on: | ||||
|   schedule: | ||||
|     - cron: 0 0 * * * # daily | ||||
| jobs: | ||||
|   gradle-rc: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - uses: actions/checkout@v2 | ||||
|     - uses: actions/setup-java@v1 | ||||
|       with: | ||||
|         java-version: 11 | ||||
|     - uses: gradle/gradle-build-action@v2 | ||||
|       with: | ||||
|         gradle-version: release-candidate | ||||
|         arguments: build --dry-run # just test build configuration | ||||
| ``` | ||||
| 
 | ||||
| ## Caching | ||||
| 
 | ||||
| By default, this action aims to cache any and all reusable state that may be speed up a subsequent build invocation.  | ||||
| 
 | ||||
| The state that is cached includes: | ||||
| - Any distributions downloaded to satisfy a `gradle-version` parameter ; | ||||
| - A subset of the Gradle User Home directory, including downloaded dependencies, wrapper distributions, and the local build cache ; | ||||
| - Any [configuration-cache](https://docs.gradle.org/nightly/userguide/configuration_cache.html) data stored in the project `.gradle` directory. | ||||
| 
 | ||||
| To reduce the space required for caching, this action makes a best effort to reduce duplication in cache entries. | ||||
| 
 | ||||
| Caching is enabled by default. You can disable caching for the action as follows: | ||||
| ```yaml | ||||
| cache-disabled: true | ||||
| ``` | ||||
| 
 | ||||
| At this time it is not possible to fine-tune the caching performed by this action.  | ||||
| If you have a legitimate use case for fine-grained caching or restricting which files are cached, please raise an issue. | ||||
| 
 | ||||
| ### Cache keys | ||||
| 
 | ||||
| For cached distributions, the cache key is unique to the downloaded distribution. This will not change over time. | ||||
| 
 | ||||
| The state of the Gradle User Home and configuration-cache are highly dependent on the Gradle execution, so the cache key is composed of the current commit hash and the GitHub actions job id. | ||||
| As such, the cache key is likely to change on each subsequent run of GitHub actions.  | ||||
| This allows the most recent state to always be available in the GitHub actions cache. | ||||
| 
 | ||||
| To reduce duplication between cache entries, certain artifacts are cached independently based on their identity. | ||||
| Artifacts that are cached independently include downloaded dependencies, downloaded wrapper distributions and generated Gradle API jars. | ||||
| For example, this means that all jobs executing a particular version of the Gradle wrapper will share common entries for wrapper distributions and for generated Gradle API jars. | ||||
| 
 | ||||
| ### Using the caches read-only | ||||
| 
 | ||||
| Cache storage space is limited for GitHub actions, and writing new cache entries can trigger the deletion of exising entries. | ||||
| In some circumstances, it makes sense for a Gradle invocation to read any existing cache entries but not to write changes back. | ||||
| For example, you may want to write cache entries for builds on your `main` branch, but not for any PR build invocations. | ||||
| 
 | ||||
| You can enable read-only caching for any of the caches as follows: | ||||
| 
 | ||||
| ```yaml | ||||
| cache-read-only: true | ||||
| ``` | ||||
| 
 | ||||
| ## Build scans | ||||
| 
 | ||||
| If your build publishes a [build scan](https://gradle.com/build-scans/) the `gradle-build-action` action will: | ||||
| - Add a notice with the link to the GitHub Actions user interface | ||||
| - Emit the link to the published build scan as an output named `build-scan-url`. | ||||
| 
 | ||||
| You can then use that link in subsequent actions of your workflow. For example: | ||||
| 
 | ||||
| ```yaml | ||||
| # .github/workflows/gradle-build-pr.yml | ||||
| name: Run Gradle on PRs | ||||
| on: pull_request | ||||
| jobs: | ||||
|   gradle: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - uses: actions/checkout@v2 | ||||
|     - uses: actions/setup-java@v1 | ||||
|       with: | ||||
|         java-version: 11 | ||||
|     - uses: gradle/gradle-build-action@v2 | ||||
|       id: gradle | ||||
|       with: | ||||
|         arguments: build | ||||
|     - name: "Comment build scan url" | ||||
|       uses: actions/github-script@v3 | ||||
|       if: github.event_name == 'pull_request' && failure() | ||||
|       with: | ||||
|         github-token: ${{secrets.GITHUB_TOKEN}} | ||||
|         script: | | ||||
|           github.issues.createComment({ | ||||
|             issue_number: context.issue.number, | ||||
|             owner: context.repo.owner, | ||||
|             repo: context.repo.repo, | ||||
|             body: '❌ ${{ github.workflow }} failed: ${{ steps.gradle.outputs.build-scan-url }}' | ||||
|           }) | ||||
| ``` | ||||
|  | ||||
							
								
								
									
										21
									
								
								__tests__/cache-utils.test.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								__tests__/cache-utils.test.ts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,21 @@ | ||||
| import * as cacheUtils from '../src/cache-utils' | ||||
| import * as path from 'path' | ||||
| 
 | ||||
| describe('cacheUtils-utils', () => { | ||||
|     describe('can hash', () => { | ||||
|         it('a string', async () => { | ||||
|             const hash = cacheUtils.hashStrings(['foo']) | ||||
|             expect(hash).toBe('acbd18db4cc2f85cedef654fccc4a4d8') | ||||
|         }) | ||||
|         it('multiple strings', async () => { | ||||
|             const hash = cacheUtils.hashStrings(['foo', 'bar', 'baz']) | ||||
|             expect(hash).toBe('6df23dc03f9b54cc38a0fc1483df6e21') | ||||
|         }) | ||||
|         it('normalized filenames', async () => { | ||||
|             const fileNames = ['/foo/bar/baz.zip', '../boo.html'] | ||||
|             const posixHash = cacheUtils.hashFileNames(fileNames) | ||||
|             const windowsHash = cacheUtils.hashFileNames(fileNames) | ||||
|             expect(posixHash).toBe(windowsHash) | ||||
|         }) | ||||
|     }) | ||||
| }) | ||||
| @ -1,8 +1,5 @@ | ||||
| distributionBase=GRADLE_USER_HOME | ||||
| distributionPath=wrapper/dists | ||||
| distributionSha256Sum=544c35d6bd849ae8a5ed0bcea39ba677dc40f49df7d1835561582da2009b961d | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip | ||||
| networkTimeout=10000 | ||||
| validateDistributionUrl=true | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-bin.zip | ||||
| zipStoreBase=GRADLE_USER_HOME | ||||
| zipStorePath=wrapper/dists | ||||
							
								
								
									
										6
									
								
								__tests__/data/crypto-utils-test/.gitattributes
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								__tests__/data/crypto-utils-test/.gitattributes
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | ||||
| # | ||||
| # https://help.github.com/articles/dealing-with-line-endings/ | ||||
| # | ||||
| # These are explicitly windows files and should use crlf | ||||
| *.bat           text eol=crlf | ||||
| 
 | ||||
							
								
								
									
										11
									
								
								__tests__/data/crypto-utils-test/build.gradle
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								__tests__/data/crypto-utils-test/build.gradle
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,11 @@ | ||||
| plugins { | ||||
|     id 'java' | ||||
| } | ||||
| 
 | ||||
| repositories { | ||||
|     mavenCentral() | ||||
| } | ||||
| 
 | ||||
| dependencies { | ||||
|     testImplementation('junit:junit:4.12') | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								__tests__/data/crypto-utils-test/gradle/wrapper/gradle-wrapper.jar
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__tests__/data/crypto-utils-test/gradle/wrapper/gradle-wrapper.jar
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,8 +1,5 @@ | ||||
| distributionBase=GRADLE_USER_HOME | ||||
| distributionPath=wrapper/dists | ||||
| distributionSha256Sum=544c35d6bd849ae8a5ed0bcea39ba677dc40f49df7d1835561582da2009b961d | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip | ||||
| networkTimeout=10000 | ||||
| validateDistributionUrl=true | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-bin.zip | ||||
| zipStoreBase=GRADLE_USER_HOME | ||||
| zipStorePath=wrapper/dists | ||||
							
								
								
									
										185
									
								
								__tests__/data/crypto-utils-test/gradlew
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										185
									
								
								__tests__/data/crypto-utils-test/gradlew
									
									
									
									
										vendored
									
									
										Executable file
									
								
							| @ -0,0 +1,185 @@ | ||||
| #!/usr/bin/env sh | ||||
| 
 | ||||
| # | ||||
| # Copyright 2015 the original author or authors. | ||||
| # | ||||
| # Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| # you may not use this file except in compliance with the License. | ||||
| # You may obtain a copy of the License at | ||||
| # | ||||
| #      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| # | ||||
| # Unless required by applicable law or agreed to in writing, software | ||||
| # distributed under the License is distributed on an "AS IS" BASIS, | ||||
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| # See the License for the specific language governing permissions and | ||||
| # limitations under the License. | ||||
| # | ||||
| 
 | ||||
| ############################################################################## | ||||
| ## | ||||
| ##  Gradle start up script for UN*X | ||||
| ## | ||||
| ############################################################################## | ||||
| 
 | ||||
| # Attempt to set APP_HOME | ||||
| # Resolve links: $0 may be a link | ||||
| PRG="$0" | ||||
| # Need this for relative symlinks. | ||||
| while [ -h "$PRG" ] ; do | ||||
|     ls=`ls -ld "$PRG"` | ||||
|     link=`expr "$ls" : '.*-> \(.*\)$'` | ||||
|     if expr "$link" : '/.*' > /dev/null; then | ||||
|         PRG="$link" | ||||
|     else | ||||
|         PRG=`dirname "$PRG"`"/$link" | ||||
|     fi | ||||
| done | ||||
| SAVED="`pwd`" | ||||
| cd "`dirname \"$PRG\"`/" >/dev/null | ||||
| APP_HOME="`pwd -P`" | ||||
| cd "$SAVED" >/dev/null | ||||
| 
 | ||||
| APP_NAME="Gradle" | ||||
| APP_BASE_NAME=`basename "$0"` | ||||
| 
 | ||||
| # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' | ||||
| 
 | ||||
| # Use the maximum available, or set MAX_FD != -1 to use that value. | ||||
| MAX_FD="maximum" | ||||
| 
 | ||||
| warn () { | ||||
|     echo "$*" | ||||
| } | ||||
| 
 | ||||
| die () { | ||||
|     echo | ||||
|     echo "$*" | ||||
|     echo | ||||
|     exit 1 | ||||
| } | ||||
| 
 | ||||
| # OS specific support (must be 'true' or 'false'). | ||||
| cygwin=false | ||||
| msys=false | ||||
| darwin=false | ||||
| nonstop=false | ||||
| case "`uname`" in | ||||
|   CYGWIN* ) | ||||
|     cygwin=true | ||||
|     ;; | ||||
|   Darwin* ) | ||||
|     darwin=true | ||||
|     ;; | ||||
|   MINGW* ) | ||||
|     msys=true | ||||
|     ;; | ||||
|   NONSTOP* ) | ||||
|     nonstop=true | ||||
|     ;; | ||||
| esac | ||||
| 
 | ||||
| CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| # Determine the Java command to use to start the JVM. | ||||
| if [ -n "$JAVA_HOME" ] ; then | ||||
|     if [ -x "$JAVA_HOME/jre/sh/java" ] ; then | ||||
|         # IBM's JDK on AIX uses strange locations for the executables | ||||
|         JAVACMD="$JAVA_HOME/jre/sh/java" | ||||
|     else | ||||
|         JAVACMD="$JAVA_HOME/bin/java" | ||||
|     fi | ||||
|     if [ ! -x "$JAVACMD" ] ; then | ||||
|         die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
|     fi | ||||
| else | ||||
|     JAVACMD="java" | ||||
|     which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
| fi | ||||
| 
 | ||||
| # Increase the maximum file descriptors if we can. | ||||
| if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then | ||||
|     MAX_FD_LIMIT=`ulimit -H -n` | ||||
|     if [ $? -eq 0 ] ; then | ||||
|         if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then | ||||
|             MAX_FD="$MAX_FD_LIMIT" | ||||
|         fi | ||||
|         ulimit -n $MAX_FD | ||||
|         if [ $? -ne 0 ] ; then | ||||
|             warn "Could not set maximum file descriptor limit: $MAX_FD" | ||||
|         fi | ||||
|     else | ||||
|         warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" | ||||
|     fi | ||||
| fi | ||||
| 
 | ||||
| # For Darwin, add options to specify how the application appears in the dock | ||||
| if $darwin; then | ||||
|     GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" | ||||
| fi | ||||
| 
 | ||||
| # For Cygwin or MSYS, switch paths to Windows format before running java | ||||
| if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then | ||||
|     APP_HOME=`cygpath --path --mixed "$APP_HOME"` | ||||
|     CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` | ||||
|      | ||||
|     JAVACMD=`cygpath --unix "$JAVACMD"` | ||||
| 
 | ||||
|     # We build the pattern for arguments to be converted via cygpath | ||||
|     ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` | ||||
|     SEP="" | ||||
|     for dir in $ROOTDIRSRAW ; do | ||||
|         ROOTDIRS="$ROOTDIRS$SEP$dir" | ||||
|         SEP="|" | ||||
|     done | ||||
|     OURCYGPATTERN="(^($ROOTDIRS))" | ||||
|     # Add a user-defined pattern to the cygpath arguments | ||||
|     if [ "$GRADLE_CYGPATTERN" != "" ] ; then | ||||
|         OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" | ||||
|     fi | ||||
|     # Now convert the arguments - kludge to limit ourselves to /bin/sh | ||||
|     i=0 | ||||
|     for arg in "$@" ; do | ||||
|         CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` | ||||
|         CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option | ||||
| 
 | ||||
|         if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition | ||||
|             eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` | ||||
|         else | ||||
|             eval `echo args$i`="\"$arg\"" | ||||
|         fi | ||||
|         i=`expr $i + 1` | ||||
|     done | ||||
|     case $i in | ||||
|         0) set -- ;; | ||||
|         1) set -- "$args0" ;; | ||||
|         2) set -- "$args0" "$args1" ;; | ||||
|         3) set -- "$args0" "$args1" "$args2" ;; | ||||
|         4) set -- "$args0" "$args1" "$args2" "$args3" ;; | ||||
|         5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; | ||||
|         6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; | ||||
|         7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; | ||||
|         8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; | ||||
|         9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; | ||||
|     esac | ||||
| fi | ||||
| 
 | ||||
| # Escape application args | ||||
| save () { | ||||
|     for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done | ||||
|     echo " " | ||||
| } | ||||
| APP_ARGS=`save "$@"` | ||||
| 
 | ||||
| # Collect all arguments for the java command, following the shell quoting and substitution rules | ||||
| eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" | ||||
| 
 | ||||
| exec "$JAVACMD" "$@" | ||||
| @ -1,92 +1,104 @@ | ||||
| @rem | ||||
| @rem Copyright 2015 the original author or authors. | ||||
| @rem | ||||
| @rem Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| @rem you may not use this file except in compliance with the License. | ||||
| @rem You may obtain a copy of the License at | ||||
| @rem | ||||
| @rem      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| @rem | ||||
| @rem Unless required by applicable law or agreed to in writing, software | ||||
| @rem distributed under the License is distributed on an "AS IS" BASIS, | ||||
| @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| @rem See the License for the specific language governing permissions and | ||||
| @rem limitations under the License. | ||||
| @rem | ||||
| 
 | ||||
| @if "%DEBUG%"=="" @echo off | ||||
| @rem ########################################################################## | ||||
| @rem | ||||
| @rem  Gradle startup script for Windows | ||||
| @rem | ||||
| @rem ########################################################################## | ||||
| 
 | ||||
| @rem Set local scope for the variables with windows NT shell | ||||
| if "%OS%"=="Windows_NT" setlocal | ||||
| 
 | ||||
| set DIRNAME=%~dp0 | ||||
| if "%DIRNAME%"=="" set DIRNAME=. | ||||
| @rem This is normally unused | ||||
| set APP_BASE_NAME=%~n0 | ||||
| set APP_HOME=%DIRNAME% | ||||
| 
 | ||||
| @rem Resolve any "." and ".." in APP_HOME to make it shorter. | ||||
| for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi | ||||
| 
 | ||||
| @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" | ||||
| 
 | ||||
| @rem Find java.exe | ||||
| if defined JAVA_HOME goto findJavaFromJavaHome | ||||
| 
 | ||||
| set JAVA_EXE=java.exe | ||||
| %JAVA_EXE% -version >NUL 2>&1 | ||||
| if %ERRORLEVEL% equ 0 goto execute | ||||
| 
 | ||||
| echo. 1>&2 | ||||
| echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 | ||||
| echo. 1>&2 | ||||
| echo Please set the JAVA_HOME variable in your environment to match the 1>&2 | ||||
| echo location of your Java installation. 1>&2 | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :findJavaFromJavaHome | ||||
| set JAVA_HOME=%JAVA_HOME:"=% | ||||
| set JAVA_EXE=%JAVA_HOME%/bin/java.exe | ||||
| 
 | ||||
| if exist "%JAVA_EXE%" goto execute | ||||
| 
 | ||||
| echo. 1>&2 | ||||
| echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 | ||||
| echo. 1>&2 | ||||
| echo Please set the JAVA_HOME variable in your environment to match the 1>&2 | ||||
| echo location of your Java installation. 1>&2 | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :execute | ||||
| @rem Setup the command line | ||||
| 
 | ||||
| set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| @rem Execute Gradle | ||||
| "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* | ||||
| 
 | ||||
| :end | ||||
| @rem End local scope for the variables with windows NT shell | ||||
| if %ERRORLEVEL% equ 0 goto mainEnd | ||||
| 
 | ||||
| :fail | ||||
| rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of | ||||
| rem the _cmd.exe /c_ return code! | ||||
| set EXIT_CODE=%ERRORLEVEL% | ||||
| if %EXIT_CODE% equ 0 set EXIT_CODE=1 | ||||
| if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% | ||||
| exit /b %EXIT_CODE% | ||||
| 
 | ||||
| :mainEnd | ||||
| if "%OS%"=="Windows_NT" endlocal | ||||
| 
 | ||||
| :omega | ||||
| @rem | ||||
| @rem Copyright 2015 the original author or authors. | ||||
| @rem | ||||
| @rem Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| @rem you may not use this file except in compliance with the License. | ||||
| @rem You may obtain a copy of the License at | ||||
| @rem | ||||
| @rem      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| @rem | ||||
| @rem Unless required by applicable law or agreed to in writing, software | ||||
| @rem distributed under the License is distributed on an "AS IS" BASIS, | ||||
| @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| @rem See the License for the specific language governing permissions and | ||||
| @rem limitations under the License. | ||||
| @rem | ||||
| 
 | ||||
| @if "%DEBUG%" == "" @echo off | ||||
| @rem ########################################################################## | ||||
| @rem | ||||
| @rem  Gradle startup script for Windows | ||||
| @rem | ||||
| @rem ########################################################################## | ||||
| 
 | ||||
| @rem Set local scope for the variables with windows NT shell | ||||
| if "%OS%"=="Windows_NT" setlocal | ||||
| 
 | ||||
| set DIRNAME=%~dp0 | ||||
| if "%DIRNAME%" == "" set DIRNAME=. | ||||
| set APP_BASE_NAME=%~n0 | ||||
| set APP_HOME=%DIRNAME% | ||||
| 
 | ||||
| @rem Resolve any "." and ".." in APP_HOME to make it shorter. | ||||
| for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi | ||||
| 
 | ||||
| @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" | ||||
| 
 | ||||
| @rem Find java.exe | ||||
| if defined JAVA_HOME goto findJavaFromJavaHome | ||||
| 
 | ||||
| set JAVA_EXE=java.exe | ||||
| %JAVA_EXE% -version >NUL 2>&1 | ||||
| if "%ERRORLEVEL%" == "0" goto init | ||||
| 
 | ||||
| echo. | ||||
| echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
| echo. | ||||
| echo Please set the JAVA_HOME variable in your environment to match the | ||||
| echo location of your Java installation. | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :findJavaFromJavaHome | ||||
| set JAVA_HOME=%JAVA_HOME:"=% | ||||
| set JAVA_EXE=%JAVA_HOME%/bin/java.exe | ||||
| 
 | ||||
| if exist "%JAVA_EXE%" goto init | ||||
| 
 | ||||
| echo. | ||||
| echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% | ||||
| echo. | ||||
| echo Please set the JAVA_HOME variable in your environment to match the | ||||
| echo location of your Java installation. | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :init | ||||
| @rem Get command-line arguments, handling Windows variants | ||||
| 
 | ||||
| if not "%OS%" == "Windows_NT" goto win9xME_args | ||||
| 
 | ||||
| :win9xME_args | ||||
| @rem Slurp the command line arguments. | ||||
| set CMD_LINE_ARGS= | ||||
| set _SKIP=2 | ||||
| 
 | ||||
| :win9xME_args_slurp | ||||
| if "x%~1" == "x" goto execute | ||||
| 
 | ||||
| set CMD_LINE_ARGS=%* | ||||
| 
 | ||||
| :execute | ||||
| @rem Setup the command line | ||||
| 
 | ||||
| set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| @rem Execute Gradle | ||||
| "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% | ||||
| 
 | ||||
| :end | ||||
| @rem End local scope for the variables with windows NT shell | ||||
| if "%ERRORLEVEL%"=="0" goto mainEnd | ||||
| 
 | ||||
| :fail | ||||
| rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of | ||||
| rem the _cmd.exe /c_ return code! | ||||
| if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 | ||||
| exit /b 1 | ||||
| 
 | ||||
| :mainEnd | ||||
| if "%OS%"=="Windows_NT" endlocal | ||||
| 
 | ||||
| :omega | ||||
| @ -4,9 +4,7 @@ | ||||
|  * The settings file is used to specify which projects to include in your build. | ||||
|  * | ||||
|  * Detailed information about configuring a multi-project build in Gradle can be found | ||||
|  * in the user manual at https://docs.gradle.org/7.3/userguide/multi_project_builds.html | ||||
|  * This project uses @Incubating APIs which are subject to change. | ||||
|  * in the user manual at https://docs.gradle.org/6.5/userguide/multi_project_builds.html | ||||
|  */ | ||||
| 
 | ||||
| rootProject.name = 'gradle-plugin' | ||||
| include('plugin') | ||||
| rootProject.name = 'basic' | ||||
							
								
								
									
										5
									
								
								__tests__/samples/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								__tests__/samples/.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,5 @@ | ||||
| # Ignore Gradle project-specific cache directory | ||||
| .gradle | ||||
| 
 | ||||
| # Ignore Gradle build output directory | ||||
| build | ||||
| @ -7,13 +7,14 @@ repositories { | ||||
| } | ||||
| 
 | ||||
| dependencies { | ||||
|     testImplementation('junit:junit:4.13.2') | ||||
|     testImplementation('junit:junit:4.12') | ||||
| } | ||||
| 
 | ||||
| tasks.named("test").configure { | ||||
|     // Write marker file so we can detect if task was configured | ||||
|     file("task-configured.txt").text = "true" | ||||
| 
 | ||||
|     // Use an environment variable to bypass config-cache checks | ||||
|     if (System.getenv('VERIFY_CACHED_CONFIGURATION') != null) { | ||||
|         throw new RuntimeException("Configuration was not cached: unexpected configuration of test task") | ||||
|     } | ||||
|     doLast { | ||||
|         if (System.properties.verifyCachedBuild) { | ||||
|             throw new RuntimeException("Build was not cached: unexpected execution of test task") | ||||
							
								
								
									
										
											BIN
										
									
								
								__tests__/samples/groovy-dsl/gradle/wrapper/gradle-wrapper.jar
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__tests__/samples/groovy-dsl/gradle/wrapper/gradle-wrapper.jar
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,8 +1,5 @@ | ||||
| distributionBase=GRADLE_USER_HOME | ||||
| distributionPath=wrapper/dists | ||||
| distributionSha256Sum=544c35d6bd849ae8a5ed0bcea39ba677dc40f49df7d1835561582da2009b961d | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip | ||||
| networkTimeout=10000 | ||||
| validateDistributionUrl=true | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-bin.zip | ||||
| zipStoreBase=GRADLE_USER_HOME | ||||
| zipStorePath=wrapper/dists | ||||
							
								
								
									
										185
									
								
								__tests__/samples/groovy-dsl/gradlew
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										185
									
								
								__tests__/samples/groovy-dsl/gradlew
									
									
									
									
										vendored
									
									
										Executable file
									
								
							| @ -0,0 +1,185 @@ | ||||
| #!/usr/bin/env sh | ||||
| 
 | ||||
| # | ||||
| # Copyright 2015 the original author or authors. | ||||
| # | ||||
| # Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| # you may not use this file except in compliance with the License. | ||||
| # You may obtain a copy of the License at | ||||
| # | ||||
| #      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| # | ||||
| # Unless required by applicable law or agreed to in writing, software | ||||
| # distributed under the License is distributed on an "AS IS" BASIS, | ||||
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| # See the License for the specific language governing permissions and | ||||
| # limitations under the License. | ||||
| # | ||||
| 
 | ||||
| ############################################################################## | ||||
| ## | ||||
| ##  Gradle start up script for UN*X | ||||
| ## | ||||
| ############################################################################## | ||||
| 
 | ||||
| # Attempt to set APP_HOME | ||||
| # Resolve links: $0 may be a link | ||||
| PRG="$0" | ||||
| # Need this for relative symlinks. | ||||
| while [ -h "$PRG" ] ; do | ||||
|     ls=`ls -ld "$PRG"` | ||||
|     link=`expr "$ls" : '.*-> \(.*\)$'` | ||||
|     if expr "$link" : '/.*' > /dev/null; then | ||||
|         PRG="$link" | ||||
|     else | ||||
|         PRG=`dirname "$PRG"`"/$link" | ||||
|     fi | ||||
| done | ||||
| SAVED="`pwd`" | ||||
| cd "`dirname \"$PRG\"`/" >/dev/null | ||||
| APP_HOME="`pwd -P`" | ||||
| cd "$SAVED" >/dev/null | ||||
| 
 | ||||
| APP_NAME="Gradle" | ||||
| APP_BASE_NAME=`basename "$0"` | ||||
| 
 | ||||
| # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' | ||||
| 
 | ||||
| # Use the maximum available, or set MAX_FD != -1 to use that value. | ||||
| MAX_FD="maximum" | ||||
| 
 | ||||
| warn () { | ||||
|     echo "$*" | ||||
| } | ||||
| 
 | ||||
| die () { | ||||
|     echo | ||||
|     echo "$*" | ||||
|     echo | ||||
|     exit 1 | ||||
| } | ||||
| 
 | ||||
| # OS specific support (must be 'true' or 'false'). | ||||
| cygwin=false | ||||
| msys=false | ||||
| darwin=false | ||||
| nonstop=false | ||||
| case "`uname`" in | ||||
|   CYGWIN* ) | ||||
|     cygwin=true | ||||
|     ;; | ||||
|   Darwin* ) | ||||
|     darwin=true | ||||
|     ;; | ||||
|   MINGW* ) | ||||
|     msys=true | ||||
|     ;; | ||||
|   NONSTOP* ) | ||||
|     nonstop=true | ||||
|     ;; | ||||
| esac | ||||
| 
 | ||||
| CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| # Determine the Java command to use to start the JVM. | ||||
| if [ -n "$JAVA_HOME" ] ; then | ||||
|     if [ -x "$JAVA_HOME/jre/sh/java" ] ; then | ||||
|         # IBM's JDK on AIX uses strange locations for the executables | ||||
|         JAVACMD="$JAVA_HOME/jre/sh/java" | ||||
|     else | ||||
|         JAVACMD="$JAVA_HOME/bin/java" | ||||
|     fi | ||||
|     if [ ! -x "$JAVACMD" ] ; then | ||||
|         die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
|     fi | ||||
| else | ||||
|     JAVACMD="java" | ||||
|     which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
| fi | ||||
| 
 | ||||
| # Increase the maximum file descriptors if we can. | ||||
| if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then | ||||
|     MAX_FD_LIMIT=`ulimit -H -n` | ||||
|     if [ $? -eq 0 ] ; then | ||||
|         if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then | ||||
|             MAX_FD="$MAX_FD_LIMIT" | ||||
|         fi | ||||
|         ulimit -n $MAX_FD | ||||
|         if [ $? -ne 0 ] ; then | ||||
|             warn "Could not set maximum file descriptor limit: $MAX_FD" | ||||
|         fi | ||||
|     else | ||||
|         warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" | ||||
|     fi | ||||
| fi | ||||
| 
 | ||||
| # For Darwin, add options to specify how the application appears in the dock | ||||
| if $darwin; then | ||||
|     GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" | ||||
| fi | ||||
| 
 | ||||
| # For Cygwin or MSYS, switch paths to Windows format before running java | ||||
| if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then | ||||
|     APP_HOME=`cygpath --path --mixed "$APP_HOME"` | ||||
|     CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` | ||||
|      | ||||
|     JAVACMD=`cygpath --unix "$JAVACMD"` | ||||
| 
 | ||||
|     # We build the pattern for arguments to be converted via cygpath | ||||
|     ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` | ||||
|     SEP="" | ||||
|     for dir in $ROOTDIRSRAW ; do | ||||
|         ROOTDIRS="$ROOTDIRS$SEP$dir" | ||||
|         SEP="|" | ||||
|     done | ||||
|     OURCYGPATTERN="(^($ROOTDIRS))" | ||||
|     # Add a user-defined pattern to the cygpath arguments | ||||
|     if [ "$GRADLE_CYGPATTERN" != "" ] ; then | ||||
|         OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" | ||||
|     fi | ||||
|     # Now convert the arguments - kludge to limit ourselves to /bin/sh | ||||
|     i=0 | ||||
|     for arg in "$@" ; do | ||||
|         CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` | ||||
|         CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option | ||||
| 
 | ||||
|         if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition | ||||
|             eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` | ||||
|         else | ||||
|             eval `echo args$i`="\"$arg\"" | ||||
|         fi | ||||
|         i=`expr $i + 1` | ||||
|     done | ||||
|     case $i in | ||||
|         0) set -- ;; | ||||
|         1) set -- "$args0" ;; | ||||
|         2) set -- "$args0" "$args1" ;; | ||||
|         3) set -- "$args0" "$args1" "$args2" ;; | ||||
|         4) set -- "$args0" "$args1" "$args2" "$args3" ;; | ||||
|         5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; | ||||
|         6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; | ||||
|         7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; | ||||
|         8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; | ||||
|         9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; | ||||
|     esac | ||||
| fi | ||||
| 
 | ||||
| # Escape application args | ||||
| save () { | ||||
|     for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done | ||||
|     echo " " | ||||
| } | ||||
| APP_ARGS=`save "$@"` | ||||
| 
 | ||||
| # Collect all arguments for the java command, following the shell quoting and substitution rules | ||||
| eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" | ||||
| 
 | ||||
| exec "$JAVACMD" "$@" | ||||
| @ -1,92 +1,104 @@ | ||||
| @rem | ||||
| @rem Copyright 2015 the original author or authors. | ||||
| @rem | ||||
| @rem Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| @rem you may not use this file except in compliance with the License. | ||||
| @rem You may obtain a copy of the License at | ||||
| @rem | ||||
| @rem      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| @rem | ||||
| @rem Unless required by applicable law or agreed to in writing, software | ||||
| @rem distributed under the License is distributed on an "AS IS" BASIS, | ||||
| @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| @rem See the License for the specific language governing permissions and | ||||
| @rem limitations under the License. | ||||
| @rem | ||||
| 
 | ||||
| @if "%DEBUG%"=="" @echo off | ||||
| @rem ########################################################################## | ||||
| @rem | ||||
| @rem  Gradle startup script for Windows | ||||
| @rem | ||||
| @rem ########################################################################## | ||||
| 
 | ||||
| @rem Set local scope for the variables with windows NT shell | ||||
| if "%OS%"=="Windows_NT" setlocal | ||||
| 
 | ||||
| set DIRNAME=%~dp0 | ||||
| if "%DIRNAME%"=="" set DIRNAME=. | ||||
| @rem This is normally unused | ||||
| set APP_BASE_NAME=%~n0 | ||||
| set APP_HOME=%DIRNAME% | ||||
| 
 | ||||
| @rem Resolve any "." and ".." in APP_HOME to make it shorter. | ||||
| for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi | ||||
| 
 | ||||
| @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" | ||||
| 
 | ||||
| @rem Find java.exe | ||||
| if defined JAVA_HOME goto findJavaFromJavaHome | ||||
| 
 | ||||
| set JAVA_EXE=java.exe | ||||
| %JAVA_EXE% -version >NUL 2>&1 | ||||
| if %ERRORLEVEL% equ 0 goto execute | ||||
| 
 | ||||
| echo. 1>&2 | ||||
| echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 | ||||
| echo. 1>&2 | ||||
| echo Please set the JAVA_HOME variable in your environment to match the 1>&2 | ||||
| echo location of your Java installation. 1>&2 | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :findJavaFromJavaHome | ||||
| set JAVA_HOME=%JAVA_HOME:"=% | ||||
| set JAVA_EXE=%JAVA_HOME%/bin/java.exe | ||||
| 
 | ||||
| if exist "%JAVA_EXE%" goto execute | ||||
| 
 | ||||
| echo. 1>&2 | ||||
| echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 | ||||
| echo. 1>&2 | ||||
| echo Please set the JAVA_HOME variable in your environment to match the 1>&2 | ||||
| echo location of your Java installation. 1>&2 | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :execute | ||||
| @rem Setup the command line | ||||
| 
 | ||||
| set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| @rem Execute Gradle | ||||
| "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* | ||||
| 
 | ||||
| :end | ||||
| @rem End local scope for the variables with windows NT shell | ||||
| if %ERRORLEVEL% equ 0 goto mainEnd | ||||
| 
 | ||||
| :fail | ||||
| rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of | ||||
| rem the _cmd.exe /c_ return code! | ||||
| set EXIT_CODE=%ERRORLEVEL% | ||||
| if %EXIT_CODE% equ 0 set EXIT_CODE=1 | ||||
| if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% | ||||
| exit /b %EXIT_CODE% | ||||
| 
 | ||||
| :mainEnd | ||||
| if "%OS%"=="Windows_NT" endlocal | ||||
| 
 | ||||
| :omega | ||||
| @rem | ||||
| @rem Copyright 2015 the original author or authors. | ||||
| @rem | ||||
| @rem Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| @rem you may not use this file except in compliance with the License. | ||||
| @rem You may obtain a copy of the License at | ||||
| @rem | ||||
| @rem      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| @rem | ||||
| @rem Unless required by applicable law or agreed to in writing, software | ||||
| @rem distributed under the License is distributed on an "AS IS" BASIS, | ||||
| @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| @rem See the License for the specific language governing permissions and | ||||
| @rem limitations under the License. | ||||
| @rem | ||||
| 
 | ||||
| @if "%DEBUG%" == "" @echo off | ||||
| @rem ########################################################################## | ||||
| @rem | ||||
| @rem  Gradle startup script for Windows | ||||
| @rem | ||||
| @rem ########################################################################## | ||||
| 
 | ||||
| @rem Set local scope for the variables with windows NT shell | ||||
| if "%OS%"=="Windows_NT" setlocal | ||||
| 
 | ||||
| set DIRNAME=%~dp0 | ||||
| if "%DIRNAME%" == "" set DIRNAME=. | ||||
| set APP_BASE_NAME=%~n0 | ||||
| set APP_HOME=%DIRNAME% | ||||
| 
 | ||||
| @rem Resolve any "." and ".." in APP_HOME to make it shorter. | ||||
| for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi | ||||
| 
 | ||||
| @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" | ||||
| 
 | ||||
| @rem Find java.exe | ||||
| if defined JAVA_HOME goto findJavaFromJavaHome | ||||
| 
 | ||||
| set JAVA_EXE=java.exe | ||||
| %JAVA_EXE% -version >NUL 2>&1 | ||||
| if "%ERRORLEVEL%" == "0" goto init | ||||
| 
 | ||||
| echo. | ||||
| echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
| echo. | ||||
| echo Please set the JAVA_HOME variable in your environment to match the | ||||
| echo location of your Java installation. | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :findJavaFromJavaHome | ||||
| set JAVA_HOME=%JAVA_HOME:"=% | ||||
| set JAVA_EXE=%JAVA_HOME%/bin/java.exe | ||||
| 
 | ||||
| if exist "%JAVA_EXE%" goto init | ||||
| 
 | ||||
| echo. | ||||
| echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% | ||||
| echo. | ||||
| echo Please set the JAVA_HOME variable in your environment to match the | ||||
| echo location of your Java installation. | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :init | ||||
| @rem Get command-line arguments, handling Windows variants | ||||
| 
 | ||||
| if not "%OS%" == "Windows_NT" goto win9xME_args | ||||
| 
 | ||||
| :win9xME_args | ||||
| @rem Slurp the command line arguments. | ||||
| set CMD_LINE_ARGS= | ||||
| set _SKIP=2 | ||||
| 
 | ||||
| :win9xME_args_slurp | ||||
| if "x%~1" == "x" goto execute | ||||
| 
 | ||||
| set CMD_LINE_ARGS=%* | ||||
| 
 | ||||
| :execute | ||||
| @rem Setup the command line | ||||
| 
 | ||||
| set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| @rem Execute Gradle | ||||
| "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% | ||||
| 
 | ||||
| :end | ||||
| @rem End local scope for the variables with windows NT shell | ||||
| if "%ERRORLEVEL%"=="0" goto mainEnd | ||||
| 
 | ||||
| :fail | ||||
| rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of | ||||
| rem the _cmd.exe /c_ return code! | ||||
| if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 | ||||
| exit /b 1 | ||||
| 
 | ||||
| :mainEnd | ||||
| if "%OS%"=="Windows_NT" endlocal | ||||
| 
 | ||||
| :omega | ||||
							
								
								
									
										1
									
								
								__tests__/samples/groovy-dsl/settings.gradle
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								__tests__/samples/groovy-dsl/settings.gradle
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| rootProject.name = 'basic' | ||||
							
								
								
									
										18
									
								
								__tests__/samples/kotlin-dsl/build.gradle.kts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								__tests__/samples/kotlin-dsl/build.gradle.kts
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,18 @@ | ||||
| plugins { | ||||
|     `java-library` | ||||
| } | ||||
| 
 | ||||
| repositories { | ||||
|     mavenCentral() | ||||
| } | ||||
| 
 | ||||
| dependencies { | ||||
|     api("org.apache.commons:commons-math3:3.6.1") | ||||
|     implementation("com.google.guava:guava:30.1.1-jre") | ||||
| 
 | ||||
|     testImplementation("org.junit.jupiter:junit-jupiter:5.7.2") | ||||
| } | ||||
| 
 | ||||
| tasks.test { | ||||
|     useJUnitPlatform() | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								__tests__/samples/kotlin-dsl/gradle/wrapper/gradle-wrapper.jar
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								__tests__/samples/kotlin-dsl/gradle/wrapper/gradle-wrapper.jar
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| @ -1,8 +1,5 @@ | ||||
| distributionBase=GRADLE_USER_HOME | ||||
| distributionPath=wrapper/dists | ||||
| distributionSha256Sum=544c35d6bd849ae8a5ed0bcea39ba677dc40f49df7d1835561582da2009b961d | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip | ||||
| networkTimeout=10000 | ||||
| validateDistributionUrl=true | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip | ||||
| zipStoreBase=GRADLE_USER_HOME | ||||
| zipStorePath=wrapper/dists | ||||
| @ -55,7 +55,7 @@ | ||||
| #       Darwin, MinGW, and NonStop. | ||||
| # | ||||
| #   (3) This script is generated from the Groovy template | ||||
| #       https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt | ||||
| #       https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt | ||||
| #       within the Gradle project. | ||||
| # | ||||
| #       You can find Gradle at https://github.com/gradle/gradle/. | ||||
| @ -80,11 +80,13 @@ do | ||||
|     esac | ||||
| done | ||||
| 
 | ||||
| # This is normally unused | ||||
| # shellcheck disable=SC2034 | ||||
| APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit | ||||
| 
 | ||||
| APP_NAME="Gradle" | ||||
| APP_BASE_NAME=${0##*/} | ||||
| # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) | ||||
| APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit | ||||
| 
 | ||||
| # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' | ||||
| 
 | ||||
| # Use the maximum available, or set MAX_FD != -1 to use that value. | ||||
| MAX_FD=maximum | ||||
| @ -131,29 +133,22 @@ location of your Java installation." | ||||
|     fi | ||||
| else | ||||
|     JAVACMD=java | ||||
|     if ! command -v java >/dev/null 2>&1 | ||||
|     then | ||||
|         die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
|     which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
| 
 | ||||
| Please set the JAVA_HOME variable in your environment to match the | ||||
| location of your Java installation." | ||||
|     fi | ||||
| fi | ||||
| 
 | ||||
| # Increase the maximum file descriptors if we can. | ||||
| if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then | ||||
|     case $MAX_FD in #( | ||||
|       max*) | ||||
|         # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. | ||||
|         # shellcheck disable=SC2039,SC3045 | ||||
|         MAX_FD=$( ulimit -H -n ) || | ||||
|             warn "Could not query maximum file descriptor limit" | ||||
|     esac | ||||
|     case $MAX_FD in  #( | ||||
|       '' | soft) :;; #( | ||||
|       *) | ||||
|         # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. | ||||
|         # shellcheck disable=SC2039,SC3045 | ||||
|         ulimit -n "$MAX_FD" || | ||||
|             warn "Could not set maximum file descriptor limit to $MAX_FD" | ||||
|     esac | ||||
| @ -198,15 +193,11 @@ if "$cygwin" || "$msys" ; then | ||||
|     done | ||||
| fi | ||||
| 
 | ||||
| 
 | ||||
| # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' | ||||
| 
 | ||||
| # Collect all arguments for the java command: | ||||
| #   * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, | ||||
| #     and any embedded shellness will be escaped. | ||||
| #   * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be | ||||
| #     treated as '${Hostname}' itself on the command line. | ||||
| # Collect all arguments for the java command; | ||||
| #   * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of | ||||
| #     shell script including quotes and variable substitutions, so put them in | ||||
| #     double quotes to make sure that they get re-expanded; and | ||||
| #   * put everything else in single quotes, so that it's not re-expanded. | ||||
| 
 | ||||
| set -- \ | ||||
|         "-Dorg.gradle.appname=$APP_BASE_NAME" \ | ||||
| @ -214,12 +205,6 @@ set -- \ | ||||
|         org.gradle.wrapper.GradleWrapperMain \ | ||||
|         "$@" | ||||
| 
 | ||||
| # Stop when "xargs" is not available. | ||||
| if ! command -v xargs >/dev/null 2>&1 | ||||
| then | ||||
|     die "xargs is not available" | ||||
| fi | ||||
| 
 | ||||
| # Use "xargs" to parse quoted args. | ||||
| # | ||||
| # With -n1 it outputs one arg per line, with the quotes and backslashes removed. | ||||
| @ -1,92 +1,89 @@ | ||||
| @rem | ||||
| @rem Copyright 2015 the original author or authors. | ||||
| @rem | ||||
| @rem Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| @rem you may not use this file except in compliance with the License. | ||||
| @rem You may obtain a copy of the License at | ||||
| @rem | ||||
| @rem      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| @rem | ||||
| @rem Unless required by applicable law or agreed to in writing, software | ||||
| @rem distributed under the License is distributed on an "AS IS" BASIS, | ||||
| @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| @rem See the License for the specific language governing permissions and | ||||
| @rem limitations under the License. | ||||
| @rem | ||||
| 
 | ||||
| @if "%DEBUG%"=="" @echo off | ||||
| @rem ########################################################################## | ||||
| @rem | ||||
| @rem  Gradle startup script for Windows | ||||
| @rem | ||||
| @rem ########################################################################## | ||||
| 
 | ||||
| @rem Set local scope for the variables with windows NT shell | ||||
| if "%OS%"=="Windows_NT" setlocal | ||||
| 
 | ||||
| set DIRNAME=%~dp0 | ||||
| if "%DIRNAME%"=="" set DIRNAME=. | ||||
| @rem This is normally unused | ||||
| set APP_BASE_NAME=%~n0 | ||||
| set APP_HOME=%DIRNAME% | ||||
| 
 | ||||
| @rem Resolve any "." and ".." in APP_HOME to make it shorter. | ||||
| for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi | ||||
| 
 | ||||
| @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" | ||||
| 
 | ||||
| @rem Find java.exe | ||||
| if defined JAVA_HOME goto findJavaFromJavaHome | ||||
| 
 | ||||
| set JAVA_EXE=java.exe | ||||
| %JAVA_EXE% -version >NUL 2>&1 | ||||
| if %ERRORLEVEL% equ 0 goto execute | ||||
| 
 | ||||
| echo. 1>&2 | ||||
| echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 | ||||
| echo. 1>&2 | ||||
| echo Please set the JAVA_HOME variable in your environment to match the 1>&2 | ||||
| echo location of your Java installation. 1>&2 | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :findJavaFromJavaHome | ||||
| set JAVA_HOME=%JAVA_HOME:"=% | ||||
| set JAVA_EXE=%JAVA_HOME%/bin/java.exe | ||||
| 
 | ||||
| if exist "%JAVA_EXE%" goto execute | ||||
| 
 | ||||
| echo. 1>&2 | ||||
| echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 | ||||
| echo. 1>&2 | ||||
| echo Please set the JAVA_HOME variable in your environment to match the 1>&2 | ||||
| echo location of your Java installation. 1>&2 | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :execute | ||||
| @rem Setup the command line | ||||
| 
 | ||||
| set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| @rem Execute Gradle | ||||
| "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* | ||||
| 
 | ||||
| :end | ||||
| @rem End local scope for the variables with windows NT shell | ||||
| if %ERRORLEVEL% equ 0 goto mainEnd | ||||
| 
 | ||||
| :fail | ||||
| rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of | ||||
| rem the _cmd.exe /c_ return code! | ||||
| set EXIT_CODE=%ERRORLEVEL% | ||||
| if %EXIT_CODE% equ 0 set EXIT_CODE=1 | ||||
| if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% | ||||
| exit /b %EXIT_CODE% | ||||
| 
 | ||||
| :mainEnd | ||||
| if "%OS%"=="Windows_NT" endlocal | ||||
| 
 | ||||
| :omega | ||||
| @rem | ||||
| @rem Copyright 2015 the original author or authors. | ||||
| @rem | ||||
| @rem Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| @rem you may not use this file except in compliance with the License. | ||||
| @rem You may obtain a copy of the License at | ||||
| @rem | ||||
| @rem      https://www.apache.org/licenses/LICENSE-2.0 | ||||
| @rem | ||||
| @rem Unless required by applicable law or agreed to in writing, software | ||||
| @rem distributed under the License is distributed on an "AS IS" BASIS, | ||||
| @rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
| @rem See the License for the specific language governing permissions and | ||||
| @rem limitations under the License. | ||||
| @rem | ||||
| 
 | ||||
| @if "%DEBUG%" == "" @echo off | ||||
| @rem ########################################################################## | ||||
| @rem | ||||
| @rem  Gradle startup script for Windows | ||||
| @rem | ||||
| @rem ########################################################################## | ||||
| 
 | ||||
| @rem Set local scope for the variables with windows NT shell | ||||
| if "%OS%"=="Windows_NT" setlocal | ||||
| 
 | ||||
| set DIRNAME=%~dp0 | ||||
| if "%DIRNAME%" == "" set DIRNAME=. | ||||
| set APP_BASE_NAME=%~n0 | ||||
| set APP_HOME=%DIRNAME% | ||||
| 
 | ||||
| @rem Resolve any "." and ".." in APP_HOME to make it shorter. | ||||
| for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi | ||||
| 
 | ||||
| @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. | ||||
| set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" | ||||
| 
 | ||||
| @rem Find java.exe | ||||
| if defined JAVA_HOME goto findJavaFromJavaHome | ||||
| 
 | ||||
| set JAVA_EXE=java.exe | ||||
| %JAVA_EXE% -version >NUL 2>&1 | ||||
| if "%ERRORLEVEL%" == "0" goto execute | ||||
| 
 | ||||
| echo. | ||||
| echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. | ||||
| echo. | ||||
| echo Please set the JAVA_HOME variable in your environment to match the | ||||
| echo location of your Java installation. | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :findJavaFromJavaHome | ||||
| set JAVA_HOME=%JAVA_HOME:"=% | ||||
| set JAVA_EXE=%JAVA_HOME%/bin/java.exe | ||||
| 
 | ||||
| if exist "%JAVA_EXE%" goto execute | ||||
| 
 | ||||
| echo. | ||||
| echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% | ||||
| echo. | ||||
| echo Please set the JAVA_HOME variable in your environment to match the | ||||
| echo location of your Java installation. | ||||
| 
 | ||||
| goto fail | ||||
| 
 | ||||
| :execute | ||||
| @rem Setup the command line | ||||
| 
 | ||||
| set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar | ||||
| 
 | ||||
| 
 | ||||
| @rem Execute Gradle | ||||
| "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* | ||||
| 
 | ||||
| :end | ||||
| @rem End local scope for the variables with windows NT shell | ||||
| if "%ERRORLEVEL%"=="0" goto mainEnd | ||||
| 
 | ||||
| :fail | ||||
| rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of | ||||
| rem the _cmd.exe /c_ return code! | ||||
| if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 | ||||
| exit /b 1 | ||||
| 
 | ||||
| :mainEnd | ||||
| if "%OS%"=="Windows_NT" endlocal | ||||
| 
 | ||||
| :omega | ||||
| @ -1,6 +1,5 @@ | ||||
| plugins { | ||||
|     id("com.gradle.enterprise") version "3.16.2" | ||||
|     id("com.gradle.common-custom-user-data-gradle-plugin") version "1.13" | ||||
|     id("com.gradle.enterprise") version("3.7") | ||||
| } | ||||
| 
 | ||||
| gradleEnterprise { | ||||
| @ -1,5 +1,5 @@ | ||||
| plugins { | ||||
|     id "com.gradle.build-scan" version "3.16.2" | ||||
|     id("com.gradle.build-scan") version("3.7") | ||||
| } | ||||
| 
 | ||||
| gradleEnterprise { | ||||
| @ -1,5 +1,5 @@ | ||||
| plugins { | ||||
|     id "com.gradle.enterprise" version "3.16.2" | ||||
|     id("com.gradle.enterprise") version("3.7") | ||||
| } | ||||
| 
 | ||||
| gradleEnterprise { | ||||
							
								
								
									
										273
									
								
								action.yml
									
									
									
									
									
								
							
							
						
						
									
										273
									
								
								action.yml
									
									
									
									
									
								
							| @ -1,268 +1,45 @@ | ||||
| name: setup-gradle | ||||
| description: 'Configures Gradle for GitHub actions, caching state and generating a dependency graph via Dependency Submission.' | ||||
| name: "Gradle Build Action" | ||||
| description: 'Executes a Gradle build, caching useful state in the GitHub actions cache' | ||||
| 
 | ||||
| # https://help.github.com/en/articles/metadata-syntax-for-github-actions | ||||
| 
 | ||||
| inputs: | ||||
|   gradle-version: | ||||
|     description: | | ||||
|       Gradle version to use. If specified, this Gradle version will be downloaded, added to the PATH and used for invoking Gradle. | ||||
|       If not provided, it is assumed that the project uses the Gradle Wrapper. | ||||
|   gradle-executable: | ||||
|     description: Path to the Gradle executable | ||||
|     required: false | ||||
|   gradle-version: | ||||
|     description: Gradle version to use | ||||
|     required: false | ||||
|   build-root-directory: | ||||
|     description: Path to the root directory of the build | ||||
|     required: false | ||||
|   arguments: | ||||
|     description: Gradle command line arguments, see gradle --help | ||||
|     required: false | ||||
| 
 | ||||
|   # Cache configuration | ||||
|   cache-disabled: | ||||
|     description: When 'true', all caching is disabled. No entries will be written to or read from the cache. | ||||
|     required: false | ||||
|     default: false | ||||
| 
 | ||||
|   cache-read-only: | ||||
|     description: | | ||||
|       When 'true', existing entries will be read from the cache but no entries will be written. | ||||
|       By default this value is 'false' for workflows on the GitHub default branch and 'true' for workflows on other branches. | ||||
|     description: When 'true', existing entries will be read from the cache but no entries will be written | ||||
|     required: false | ||||
|     default: ${{ github.event.repository != null && github.ref_name != github.event.repository.default_branch }} | ||||
| 
 | ||||
|   cache-write-only: | ||||
|     description: | | ||||
|       When 'true', entries will not be restored from the cache but will be saved at the end of the Job. | ||||
|       Setting this to 'true' implies cache-read-only will be 'false'. | ||||
|     required: false | ||||
|     default: false | ||||
| 
 | ||||
|   cache-overwrite-existing: | ||||
|     description: When 'true', a pre-existing Gradle User Home will not prevent the cache from being restored. | ||||
|     required: false | ||||
|     default: false | ||||
| 
 | ||||
|   cache-encryption-key: | ||||
|     description: | | ||||
|       A base64 encoded AES key used to encrypt the configuration-cache data. The key is exported as 'GRADLE_ENCRYPTION_KEY' for later steps. | ||||
|       A suitable key can be generated with `openssl rand -base64 16`. | ||||
|       Configuration-cache data will not be saved/restored without an encryption key being provided. | ||||
|     required: false | ||||
| 
 | ||||
|   gradle-home-cache-includes: | ||||
|     description: Paths within Gradle User Home to cache. | ||||
|     required: false | ||||
|     default: | | ||||
|         caches | ||||
|         notifications | ||||
| 
 | ||||
|   gradle-home-cache-excludes: | ||||
|     description: Paths within Gradle User Home to exclude from cache. | ||||
|     required: false | ||||
| 
 | ||||
|   gradle-home-cache-cleanup: | ||||
|     description: When 'true', the action will attempt to remove any stale/unused entries from the Gradle User Home prior to saving to the GitHub Actions cache. | ||||
|     required: false | ||||
|     default: false | ||||
| 
 | ||||
|   # Job summary configuration | ||||
|   add-job-summary: | ||||
|     description: Specifies when a Job Summary should be inluded in the action results. Valid values are 'never', 'always' (default), and 'on-failure'. | ||||
|     required: false | ||||
|     default: 'always' | ||||
| 
 | ||||
|   add-job-summary-as-pr-comment: | ||||
|     description: Specifies when each Job Summary should be added as a PR comment. Valid values are 'never' (default), 'always', and 'on-failure'. No action will be taken if the workflow was not triggered from a pull request. | ||||
|     required: false | ||||
|     default: 'never' | ||||
| 
 | ||||
|   # Dependency Graph configuration | ||||
|   dependency-graph: | ||||
|     description: | | ||||
|       Specifies if a GitHub dependency snapshot should be generated for each Gradle build, and if so, how. | ||||
|       Valid values are 'disabled' (default), 'generate', 'generate-and-submit', 'generate-and-upload', 'download-and-submit' and 'clear'. | ||||
|     required: false | ||||
|     default: 'disabled' | ||||
| 
 | ||||
|   dependency-graph-continue-on-failure: | ||||
|     description: When 'false' a failure to generate or submit a dependency graph will fail the Step or Job. When 'true' a warning will be emitted but no failure will result. | ||||
|     required: false | ||||
|     default: true | ||||
| 
 | ||||
|   artifact-retention-days: | ||||
|     description: Specifies the number of days to retain any artifacts generated by the action. If not set, the default retention settings for the repository will apply. | ||||
|     required: false | ||||
| 
 | ||||
|   # Build Scan configuration | ||||
|   build-scan-publish: | ||||
|     description: | | ||||
|       Set to 'true' to automatically publish build results as a Build Scan on scans.gradle.com. | ||||
|       For publication to succeed without user input, you must also provide values for `build-scan-terms-of-use-url` and 'build-scan-terms-of-use-agree'. | ||||
|     required: false | ||||
|     default: false | ||||
| 
 | ||||
|   build-scan-terms-of-use-url: | ||||
|     description: The URL to the Build Scan® terms of use. This input must be set to 'https://gradle.com/terms-of-service' or 'https://gradle.com/help/legal-terms-of-use'. | ||||
|     required: false | ||||
| 
 | ||||
|   build-scan-terms-of-use-agree: | ||||
|     description: Indicate that you agree to the Build Scan® terms of use. This input value must be "yes". | ||||
|     required: false | ||||
| 
 | ||||
|   develocity-access-key: | ||||
|     description: Develocity access key. Should be set to a secret containing the Develocity Access key. | ||||
|     required: false | ||||
| 
 | ||||
|   develocity-token-expiry: | ||||
|     description: The Develocity short-lived access tokens expiry in hours. Default is 2 hours. | ||||
|     required: false | ||||
| 
 | ||||
|   develocity-injection-enabled: | ||||
|     description: Enables Develocity injection. | ||||
|     required: false | ||||
| 
 | ||||
|   develocity-url: | ||||
|     description: The URL for the Develocity server. | ||||
|     required: false | ||||
| 
 | ||||
|   develocity-allow-untrusted-server: | ||||
|     description: Allow communication with an untrusted server; set to _true_ if your Develocity instance is using a self-signed. | ||||
|     required: false | ||||
| 
 | ||||
|   develocity-capture-file-fingerprints: | ||||
|     description: Enables capturing the paths and content hashes of each individual input file. | ||||
|     required: false | ||||
| 
 | ||||
|   develocity-enforce-url: | ||||
|     description: Enforce the configured Develocity URL over a URL configured in the project's build; set to _true_ to enforce publication of build scans to the configured Develocity URL. | ||||
|     required: false | ||||
| 
 | ||||
|   develocity-plugin-version: | ||||
|     description: The version of the Develocity Gradle plugin to apply. | ||||
|     required: false | ||||
| 
 | ||||
|   develocity-ccud-plugin-version: | ||||
|     description: The version of the Common Custom User Data Gradle plugin to apply, if any. | ||||
|     required: false | ||||
| 
 | ||||
|   gradle-plugin-repository-url: | ||||
|     description: The URL of the repository to use when resolving the Develocity and CCUD plugins; the Gradle Plugin Portal is used by default. | ||||
|     required: false | ||||
| 
 | ||||
|   gradle-plugin-repository-username: | ||||
|     description: The username for the repository URL to use when resolving the Develocity and CCUD. | ||||
|     required: false | ||||
| 
 | ||||
|   gradle-plugin-repository-password: | ||||
|     description: The password for the repository URL to use when resolving the Develocity and CCUD plugins; Consider using secrets to pass the value to this variable. | ||||
|     required: false | ||||
| 
 | ||||
|   # Wrapper validation configuration | ||||
|   validate-wrappers: | ||||
|     description: | | ||||
|       When 'true', the action will perform the 'wrapper-validation' action automatically. | ||||
|       If the wrapper checksums are not valid, the action will fail. | ||||
|     required: false | ||||
|     default: false | ||||
| 
 | ||||
|   # DEPRECATED ACTION INPUTS | ||||
|   build-scan-terms-of-service-url: | ||||
|     description: The URL to the Build Scan® terms of use. This input must be set to 'https://gradle.com/terms-of-service'. | ||||
|     required: false | ||||
|     deprecation-message: The input has been renamed to align with the Develocity API. Use 'build-scan-terms-of-use-url' instead. | ||||
| 
 | ||||
|   build-scan-terms-of-service-agree: | ||||
|     description: Indicate that you agree to the Build Scan® terms of use. This input value must be "yes". | ||||
|     required: false | ||||
|     deprecation-message: The input has been renamed to align with the Develocity API. Use 'build-scan-terms-of-use-agree' instead. | ||||
| 
 | ||||
|   generate-job-summary: | ||||
|     description: When 'false', no Job Summary will be generated for the Job. | ||||
|     required: false | ||||
|     default: true | ||||
|     deprecation-message: Superceded by the new 'add-job-summary' and 'add-job-summary-as-pr-comment' parameters. | ||||
| 
 | ||||
|   arguments: | ||||
|     description: Gradle command line arguments (supports multi-line input) | ||||
|     required: false | ||||
|     deprecation-message: Using the action to execute Gradle directly is deprecated in favor of using the action to setup Gradle, and executing Gradle in a subsequent Step. | ||||
| 
 | ||||
|   build-root-directory: | ||||
|     description: Path to the root directory of the build. Default is the root of the GitHub workspace. | ||||
|     required: false | ||||
|     deprecation-message: Using the action to execute Gradle directly is deprecated in favor of using the action to setup Gradle, and executing Gradle in a subsequent Step. | ||||
| 
 | ||||
|   # EXPERIMENTAL ACTION INPUTS | ||||
|   # The following action properties allow fine-grained tweaking of the action caching behaviour. | ||||
|   # These properties are experimental and not (yet) designed for production use, and may change without notice in a subsequent release of `setup-gradle`. | ||||
|   # Use at your own risk! | ||||
|   gradle-home-cache-strict-match: | ||||
|     description: When 'true', the action will not attempt to restore the Gradle User Home entries from other Jobs. | ||||
|     required: false | ||||
|     default: false | ||||
| 
 | ||||
|   # INTERNAL ACTION INPUTS | ||||
|   # These inputs should not be configured directly, and are only used to pass environmental information to the action | ||||
|     # TODO: It might be useful to default to read-only for PRs, or non-main branch. | ||||
|     default: false  | ||||
|    | ||||
|   workflow-job-context: | ||||
|     description: Used to uniquely identify the current job invocation. Defaults to the matrix values for this job; this should not be overridden by users (INTERNAL). | ||||
|     description: Used to uniquely identify the current job invocation. Defaults to the matrix values for this job; this should not be overridden by users. | ||||
|     required: false | ||||
|     default: ${{ toJSON(matrix) }} | ||||
| 
 | ||||
|   github-token: | ||||
|     description: The GitHub token used to authenticate when submitting via the Dependency Submission API. | ||||
|     default: ${{ github.token }} | ||||
|     required: false | ||||
| 
 | ||||
| outputs: | ||||
|   build-scan-url: | ||||
|     description: Link to the Build Scan® generated by a Gradle build. Note that this output applies to a Step executing Gradle, not to the `setup-gradle` Step itself. | ||||
|     value: ${{ steps.setup-gradle.outputs.build-scan-url }} | ||||
|   dependency-graph-file: | ||||
|     description: Path to the GitHub Dependency Graph snapshot file generated by a Gradle build. Note that this output applies to a Step executing Gradle, not to the `setup-gradle` Step itself. | ||||
|     value: ${{ steps.setup-gradle.outputs.dependency-graph-file }} | ||||
|   gradle-version: | ||||
|     description: Version of Gradle that was setup by the action | ||||
|     value: ${{ steps.setup-gradle.outputs.gradle-version }} | ||||
|     description: Link to the build scan if any | ||||
| 
 | ||||
| runs: | ||||
|   using: "composite" | ||||
|   steps: | ||||
|     - name: Setup Gradle | ||||
|       id: setup-gradle | ||||
|       uses: gradle/actions/setup-gradle@v3.5.0 | ||||
|       with: | ||||
|         gradle-version: ${{ inputs.gradle-version }} | ||||
|         cache-disabled: ${{ inputs.cache-disabled }} | ||||
|         cache-read-only: ${{ inputs.cache-read-only }} | ||||
|         cache-write-only: ${{ inputs.cache-write-only }} | ||||
|         cache-overwrite-existing: ${{ inputs.cache-overwrite-existing }} | ||||
|         cache-encryption-key: ${{ inputs.cache-encryption-key }} | ||||
|         gradle-home-cache-includes: ${{ inputs.gradle-home-cache-includes }} | ||||
|         gradle-home-cache-excludes: ${{ inputs.gradle-home-cache-excludes }} | ||||
|         gradle-home-cache-cleanup: ${{ inputs.gradle-home-cache-cleanup }} | ||||
|         add-job-summary: ${{ inputs.add-job-summary }} | ||||
|         add-job-summary-as-pr-comment: ${{ inputs.add-job-summary-as-pr-comment }} | ||||
|         dependency-graph: ${{ inputs.dependency-graph }} | ||||
|         dependency-graph-continue-on-failure: ${{ inputs.dependency-graph-continue-on-failure }} | ||||
|         artifact-retention-days: ${{ inputs.artifact-retention-days }} | ||||
|         build-scan-publish: ${{ inputs.build-scan-publish }} | ||||
|         build-scan-terms-of-use-url: ${{ inputs.build-scan-terms-of-use-url }} | ||||
|         build-scan-terms-of-use-agree: ${{ inputs.build-scan-terms-of-use-agree }} | ||||
|         validate-wrappers: ${{ inputs.validate-wrappers }} | ||||
|         build-scan-terms-of-service-url: ${{ inputs.build-scan-terms-of-service-url }} | ||||
|         build-scan-terms-of-service-agree: ${{ inputs.build-scan-terms-of-service-agree }} | ||||
|         generate-job-summary: ${{ inputs.generate-job-summary }} | ||||
|         arguments: ${{ inputs.arguments }} | ||||
|         build-root-directory: ${{ inputs.build-root-directory }} | ||||
|         gradle-home-cache-strict-match: ${{ inputs.gradle-home-cache-strict-match }} | ||||
|         workflow-job-context: ${{ inputs.workflow-job-context }} | ||||
|         github-token: ${{ inputs.github-token }} | ||||
|         develocity-access-key: ${{ inputs.develocity-access-key }} | ||||
|         develocity-token-expiry: ${{ inputs.develocity-token-expiry }} | ||||
|         develocity-injection-enabled: ${{ inputs.develocity-injection-enabled }} | ||||
|         develocity-url: ${{ inputs.develocity-url }} | ||||
|         develocity-allow-untrusted-server: ${{ inputs.develocity-allow-untrusted-server }} | ||||
|         develocity-capture-file-fingerprints: ${{ inputs.develocity-capture-file-fingerprints }} | ||||
|         develocity-enforce-url: ${{ inputs.develocity-enforce-url }} | ||||
|         develocity-plugin-version: ${{ inputs.develocity-plugin-version }} | ||||
|         develocity-ccud-plugin-version: ${{ inputs.develocity-ccud-plugin-version }} | ||||
|         gradle-plugin-repository-url: ${{ inputs.gradle-plugin-repository-url }} | ||||
|         gradle-plugin-repository-username: ${{ inputs.gradle-plugin-repository-username }} | ||||
|         gradle-plugin-repository-password: ${{ inputs.gradle-plugin-repository-password }} | ||||
| 
 | ||||
|       env: | ||||
|         GRADLE_ACTION_ID: gradle/gradle-build-action | ||||
|   using: 'node12' | ||||
|   main: 'dist/main/index.js' | ||||
|   post: 'dist/post/index.js' | ||||
|   post-if: success() | ||||
| 
 | ||||
| branding: | ||||
|   icon: 'box' | ||||
|  | ||||
							
								
								
									
										2
									
								
								dist/main/index.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								dist/main/index.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										1
									
								
								dist/main/index.js.map
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								dist/main/index.js.map
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										3912
									
								
								dist/main/sourcemap-register.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3912
									
								
								dist/main/sourcemap-register.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										2
									
								
								dist/post/index.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								dist/post/index.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										1
									
								
								dist/post/index.js.map
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								dist/post/index.js.map
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										3912
									
								
								dist/post/sourcemap-register.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3912
									
								
								dist/post/sourcemap-register.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										12
									
								
								jest.config.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								jest.config.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | ||||
| module.exports = { | ||||
|   clearMocks: true, | ||||
|   moduleFileExtensions: ['js', 'ts', 'json'], | ||||
|   testEnvironment: 'node', | ||||
|   testMatch: ['**/*.test.ts'], | ||||
|   testRunner: 'jest-circus/runner', | ||||
|   transform: { | ||||
|     '^.+\\.ts$': 'ts-jest' | ||||
|   }, | ||||
|   verbose: true, | ||||
|   setupFilesAfterEnv: ['./jest.setup.js'] | ||||
| } | ||||
							
								
								
									
										1
									
								
								jest.setup.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								jest.setup.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| jest.setTimeout(10000) // in milliseconds
 | ||||
							
								
								
									
										7054
									
								
								package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										7054
									
								
								package-lock.json
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										52
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,52 @@ | ||||
| { | ||||
|   "name": "gradle-build-action", | ||||
|   "version": "1.0.0", | ||||
|   "private": true, | ||||
|   "description": "Execute Gradle Build", | ||||
|   "scripts": { | ||||
|     "format": "prettier --write **/*.ts", | ||||
|     "format-check": "prettier --check **/*.ts", | ||||
|     "lint": "eslint src/**/*.ts", | ||||
|     "build": "ncc build src/main.ts --out dist/main --source-map --minify && ncc build src/post.ts --out dist/post --source-map --minify", | ||||
|     "test": "jest", | ||||
|     "all": "npm run format && npm run lint && npm run build && npm test" | ||||
|   }, | ||||
|   "repository": { | ||||
|     "type": "git", | ||||
|     "url": "git+https://github.com/gradle/gradle-build-action.git" | ||||
|   }, | ||||
|   "keywords": [ | ||||
|     "github", | ||||
|     "actions", | ||||
|     "github-actions", | ||||
|     "gradle" | ||||
|   ], | ||||
|   "author": "Paul Merlin <paul@nosphere.org>", | ||||
|   "license": "MIT", | ||||
|   "dependencies": { | ||||
|     "@actions/cache": "1.0.7", | ||||
|     "@actions/core": "1.5.0", | ||||
|     "@actions/exec": "1.1.0", | ||||
|     "@actions/github": "5.0.0", | ||||
|     "@actions/glob": "0.2.0", | ||||
|     "@actions/http-client": "1.0.11", | ||||
|     "@actions/tool-cache": "1.7.1", | ||||
|     "string-argv": "0.3.1" | ||||
|   }, | ||||
|   "devDependencies": { | ||||
|     "@types/jest": "26.0.23", | ||||
|     "@types/node": "14.17.3", | ||||
|     "@types/unzipper": "0.10.4", | ||||
|     "@typescript-eslint/parser": "4.28.2", | ||||
|     "@zeit/ncc": "0.22.3", | ||||
|     "eslint": "7.30.0", | ||||
|     "eslint-plugin-github": "4.1.3", | ||||
|     "eslint-plugin-jest": "24.3.6", | ||||
|     "jest": "26.6.3", | ||||
|     "jest-circus": "26.6.3", | ||||
|     "js-yaml": "3.14.1", | ||||
|     "prettier": "2.3.2", | ||||
|     "ts-jest": "26.5.6", | ||||
|     "typescript": "4.3.5" | ||||
|   } | ||||
| } | ||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user