public class TahapBuild {

    // Peserta build hasil membaca settings.gradle.kts.
    private static final String[] PROYEK = {"aplikasi-gudang (root)", "app", "lib-util"};

    // Task yang terdaftar di subproyek 'app' (meniru plugin java).
    private static final String[] TASK_APP = {
        "compileJava", "processResources", "classes", "jar", "assemble",
        "compileTestJava", "test", "check", "build"
    };

    public static void main(String[] args) {
        System.out.println("$ gradle :app:build");
        System.out.println();
        System.out.println("[initialization]");
        System.out.println("  membaca settings.gradle.kts");
        System.out.println("  peserta build: " + String.join(", ", PROYEK));
        System.out.println();
        System.out.println("[configuration]");
        System.out.println("  mengevaluasi build.gradle.kts setiap proyek");
        System.out.println("  task terdaftar di 'app': " + TASK_APP.length + " task");
        System.out.println("  DAG untuk ':app:build' tersusun");
        System.out.println();
        System.out.println("[execution]");
        for (int i = 0; i < TASK_APP.length; i++) {
            System.out.printf("  %d. :app:%s%n", i + 1, TASK_APP[i]);
        }
    }
}
