summaryrefslogtreecommitdiff
path: root/settings.gradle
diff options
context:
space:
mode:
authorAlisaLinUwU <alisalinuwu@gmail.com>2025-01-26 11:47:38 +0500
committerAlisaLinUwU <alisalinuwu@gmail.com>2025-01-26 11:47:38 +0500
commit4154d33fcdfbe8eefc66149e4a13d41a814a5abd (patch)
tree1d7474bc7dc04b90fd1d705d607e8bb76341e50a /settings.gradle
Initializemain
Diffstat (limited to 'settings.gradle')
-rw-r--r--settings.gradle37
1 files changed, 37 insertions, 0 deletions
diff --git a/settings.gradle b/settings.gradle
new file mode 100644
index 0000000..6f89208
--- /dev/null
+++ b/settings.gradle
@@ -0,0 +1,37 @@
+buildscript {
+ repositories {
+ maven { url 'https://jitpack.io' }
+ }
+
+ dependencies {
+ classpath "com.github.hyperskill:hs-gradle-plugin:release-SNAPSHOT"
+ }
+
+ configurations.all {
+ resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
+ }
+}
+
+static String sanitizeName(String name) {
+ return name.replaceAll("[ /\\\\:<>\"?*|()]", "_").replaceAll("(^[.]+)|([.]+\$)", "")
+}
+
+rootProject.projectDir.eachDirRecurse {
+ if (!isTaskDir(it) || it.path.contains(".idea")) {
+ return
+ }
+ def taskRelativePath = rootDir.toPath().relativize(it.toPath())
+ def parts = []
+ for (name in taskRelativePath) {
+ parts.add(sanitizeName(name.toString()))
+ }
+ def moduleName = parts.join("-")
+ include "$moduleName"
+ project(":$moduleName").projectDir = it
+}
+
+def isTaskDir(File dir) {
+ return new File(dir, "src").exists() || new File(dir, "test").exists()
+}
+
+include 'util' \ No newline at end of file