From 1d21002eb08eb9b9799e5d11f5d46e3d3c7ba4de Mon Sep 17 00:00:00 2001 From: Jonas Herzig Date: Mon, 6 May 2019 11:33:40 +0200 Subject: [PATCH] Run shadowJar and setCoreVersion in same gradle invocation on CI --- .drone.yml | 3 +-- .drone.yml.sig | 2 +- build.gradle | 18 ++++++++++++++++++ 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/.drone.yml b/.drone.yml index 3d4d53cf..e830aea2 100644 --- a/.drone.yml +++ b/.drone.yml @@ -8,8 +8,7 @@ pipeline: commands: - curl --fail --create-dirs -o $HOME/.gradle/init.d/mirror.gradle https://maven.johni0702.de/config/gradle - git config --global user.email "replaymod@drone" && git config --global user.name "Drone" - - ./gradlew --parallel - - ./gradlew :1.8:setCoreVersion + - ./gradlew -PworkAroundBuildOrder=1 --parallel shadowJar :1.8:setCoreVersion - ./gradlew --old-gradle :1.7.10:setupCIWorkspace :jGui:1.7.10:setupCIWorkspace - ./gradlew --old-gradle :1.7.10:shadowJar :shadowJar archive: diff --git a/.drone.yml.sig b/.drone.yml.sig index c3d8e491..6e41b694 100644 --- a/.drone.yml.sig +++ b/.drone.yml.sig @@ -1 +1 @@ -eyJhbGciOiJIUzI1NiJ9.cGlwZWxpbmU6CiAgY2xvbmU6CiAgICBpbWFnZTogcGx1Z2lucy9naXQKICAgIHRhZ3M6IHRydWUKICAgIHJlY3Vyc2l2ZTogdHJ1ZQogIGJ1aWxkOgogICAgaW1hZ2U6IG1hdmVuOjMuMy45LWpkay04CiAgICBjb21tYW5kczoKICAgICAgLSBjdXJsIC0tZmFpbCAtLWNyZWF0ZS1kaXJzIC1vICRIT01FLy5ncmFkbGUvaW5pdC5kL21pcnJvci5ncmFkbGUgaHR0cHM6Ly9tYXZlbi5qb2huaTA3MDIuZGUvY29uZmlnL2dyYWRsZQogICAgICAtIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCAicmVwbGF5bW9kQGRyb25lIiAmJiBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIubmFtZSAiRHJvbmUiCiAgICAgIC0gLi9ncmFkbGV3IC0tcGFyYWxsZWwKICAgICAgLSAuL2dyYWRsZXcgOjEuODpzZXRDb3JlVmVyc2lvbgogICAgICAtIC4vZ3JhZGxldyAtLW9sZC1ncmFkbGUgOjEuNy4xMDpzZXR1cENJV29ya3NwYWNlIDpqR3VpOjEuNy4xMDpzZXR1cENJV29ya3NwYWNlCiAgICAgIC0gLi9ncmFkbGV3IC0tb2xkLWdyYWRsZSA6MS43LjEwOnNoYWRvd0phciA6c2hhZG93SmFyCiAgYXJjaGl2ZToKICAgIGltYWdlOiBwbHVnaW5zL3MzCiAgICBhY2w6IHB1YmxpYy1yZWFkCiAgICByZWdpb246ICJ1cy1lYXN0LTEiCiAgICBidWNrZXQ6ICJyZXBsYXltb2QiCiAgICBwYXRoX3N0eWxlOiB0cnVlCiAgICBzb3VyY2U6IGJ1aWxkL2xpYnMvKgogICAgc3RyaXBfcHJlZml4OiBidWlsZC9saWJzLwogICAgdGFyZ2V0OiAvCg.XgGmPeVl9inL3hFvpIcRvEH4sViZBEwaDpXkV22NWdo \ No newline at end of file +eyJhbGciOiJIUzI1NiJ9.cGlwZWxpbmU6CiAgY2xvbmU6CiAgICBpbWFnZTogcGx1Z2lucy9naXQKICAgIHRhZ3M6IHRydWUKICAgIHJlY3Vyc2l2ZTogdHJ1ZQogIGJ1aWxkOgogICAgaW1hZ2U6IG1hdmVuOjMuMy45LWpkay04CiAgICBjb21tYW5kczoKICAgICAgLSBjdXJsIC0tZmFpbCAtLWNyZWF0ZS1kaXJzIC1vICRIT01FLy5ncmFkbGUvaW5pdC5kL21pcnJvci5ncmFkbGUgaHR0cHM6Ly9tYXZlbi5qb2huaTA3MDIuZGUvY29uZmlnL2dyYWRsZQogICAgICAtIGdpdCBjb25maWcgLS1nbG9iYWwgdXNlci5lbWFpbCAicmVwbGF5bW9kQGRyb25lIiAmJiBnaXQgY29uZmlnIC0tZ2xvYmFsIHVzZXIubmFtZSAiRHJvbmUiCiAgICAgIC0gLi9ncmFkbGV3IC1Qd29ya0Fyb3VuZEJ1aWxkT3JkZXI9MSAtLXBhcmFsbGVsIHNoYWRvd0phciA6MS44OnNldENvcmVWZXJzaW9uCiAgICAgIC0gLi9ncmFkbGV3IC0tb2xkLWdyYWRsZSA6MS43LjEwOnNldHVwQ0lXb3Jrc3BhY2UgOmpHdWk6MS43LjEwOnNldHVwQ0lXb3Jrc3BhY2UKICAgICAgLSAuL2dyYWRsZXcgLS1vbGQtZ3JhZGxlIDoxLjcuMTA6c2hhZG93SmFyIDpzaGFkb3dKYXIKICBhcmNoaXZlOgogICAgaW1hZ2U6IHBsdWdpbnMvczMKICAgIGFjbDogcHVibGljLXJlYWQKICAgIHJlZ2lvbjogInVzLWVhc3QtMSIKICAgIGJ1Y2tldDogInJlcGxheW1vZCIKICAgIHBhdGhfc3R5bGU6IHRydWUKICAgIHNvdXJjZTogYnVpbGQvbGlicy8qCiAgICBzdHJpcF9wcmVmaXg6IGJ1aWxkL2xpYnMvCiAgICB0YXJnZXQ6IC8K.QJ44xtZyCWwjIN2_eoSZzod5tNQm3Rj1H7rfF3Y44Zw \ No newline at end of file diff --git a/build.gradle b/build.gradle index bbd8d003..04bcbcbd 100755 --- a/build.gradle +++ b/build.gradle @@ -59,6 +59,24 @@ subprojects { } } +// Workaround specific to CI build to guarantee correct ordering of +// ./gradlew --parallel shadowJar :1.8:setCoreVersion +// TODO properly fix the ordering in preprocessor +if (project.hasProperty('workAroundBuildOrder')) { + evaluationDependsOnChildren() + def rmTasks = project(':1.8').tasks + def jGuiTasks = project(':jGui:1.8').tasks + subprojects.forEach { + def shadowTask = it.tasks.findByName('shadowJar') + if (shadowTask != null) { + rmTasks.setCoreVersionJava.mustRunAfter shadowTask + rmTasks.setCoreVersionResources.mustRunAfter shadowTask + jGuiTasks.setCoreVersionJava.mustRunAfter shadowTask + jGuiTasks.setCoreVersionResources.mustRunAfter shadowTask + } + } +} + def gitDescribe() { try { def stdout = new ByteArrayOutputStream()