Search in sources :

Example 66 with Task

use of org.gradle.api.Task in project spring-security by spring-projects.

the class CheckAntoraVersionPluginTests method matchesWhenRc.

@Test
void matchesWhenRc() throws Exception {
    String expectedVersion = "1.0.0-RC1";
    Project project = ProjectBuilder.builder().build();
    File rootDir = project.getRootDir();
    IOUtils.write("version: '1.0.0-RC1'\nprerelease: 'true'\ndisplay_version: '1.0.0-RC1'", new FileOutputStream(new File(rootDir, "antora.yml")), StandardCharsets.UTF_8);
    project.setVersion(expectedVersion);
    project.getPluginManager().apply(CheckAntoraVersionPlugin.class);
    Task task = project.getTasks().findByName(CheckAntoraVersionPlugin.ANTORA_CHECK_VERSION_TASK_NAME);
    assertThat(task).isInstanceOf(CheckAntoraVersionTask.class);
    CheckAntoraVersionTask checkAntoraVersionTask = (CheckAntoraVersionTask) task;
    checkAntoraVersionTask.check();
}
Also used : Project(org.gradle.api.Project) Task(org.gradle.api.Task) FileOutputStream(java.io.FileOutputStream) File(java.io.File) Test(org.junit.jupiter.api.Test)

Example 67 with Task

use of org.gradle.api.Task in project spring-security by spring-projects.

the class CheckAntoraVersionPluginTests method matchesWhenExplicitRelease.

@Test
void matchesWhenExplicitRelease() throws Exception {
    Project project = ProjectBuilder.builder().build();
    File rootDir = project.getRootDir();
    IOUtils.write("version: '1.0.0'", new FileOutputStream(new File(rootDir, "antora.yml")), StandardCharsets.UTF_8);
    project.getPluginManager().apply(CheckAntoraVersionPlugin.class);
    Task task = project.getTasks().findByName(CheckAntoraVersionPlugin.ANTORA_CHECK_VERSION_TASK_NAME);
    assertThat(task).isInstanceOf(CheckAntoraVersionTask.class);
    CheckAntoraVersionTask checkAntoraVersionTask = (CheckAntoraVersionTask) task;
    ((CheckAntoraVersionTask) task).getAntoraVersion().set("1.0.0");
    checkAntoraVersionTask.check();
}
Also used : Project(org.gradle.api.Project) Task(org.gradle.api.Task) FileOutputStream(java.io.FileOutputStream) File(java.io.File) Test(org.junit.jupiter.api.Test)

Example 68 with Task

use of org.gradle.api.Task in project spring-security by spring-projects.

the class CheckAntoraVersionPluginTests method matchesWhenExplicitPrerelease.

@Test
void matchesWhenExplicitPrerelease() throws Exception {
    Project project = ProjectBuilder.builder().build();
    File rootDir = project.getRootDir();
    IOUtils.write("version: '1.0.0'\nprerelease: '-SNAPSHOT'", new FileOutputStream(new File(rootDir, "antora.yml")), StandardCharsets.UTF_8);
    project.getPluginManager().apply(CheckAntoraVersionPlugin.class);
    Task task = project.getTasks().findByName(CheckAntoraVersionPlugin.ANTORA_CHECK_VERSION_TASK_NAME);
    assertThat(task).isInstanceOf(CheckAntoraVersionTask.class);
    CheckAntoraVersionTask checkAntoraVersionTask = (CheckAntoraVersionTask) task;
    ((CheckAntoraVersionTask) task).getAntoraVersion().set("1.0.0");
    ((CheckAntoraVersionTask) task).getAntoraPrerelease().set("-SNAPSHOT");
    checkAntoraVersionTask.check();
}
Also used : Project(org.gradle.api.Project) Task(org.gradle.api.Task) FileOutputStream(java.io.FileOutputStream) File(java.io.File) Test(org.junit.jupiter.api.Test)

Example 69 with Task

use of org.gradle.api.Task in project atlas by alibaba.

the class PublishHooker method hookPublish.

public void hookPublish() {
    project.getTasks().whenTaskAdded(new Action<Task>() {

        @Override
        public void execute(Task task) {
            if ("publishMavenPublicationToMavenRepository".equals(task.getName())) {
                publishTask = (PublishToMavenRepository) task;
                task.setEnabled(false);
                if (null != hookTask) {
                    hookTask.setRepository(publishTask.getRepository());
                    hookTask.setPublication(publishTask.getPublication());
                }
            }
        }
    });
    final TaskContainer tasks = project.getTasks();
    Task publishLifecycleTask = tasks.findByName(PublishingPlugin.PUBLISH_LIFECYCLE_TASK_NAME);
    if (null == publishLifecycleTask) {
        return;
    }
    String taskName = "publishMavenPublicationToMavenRepositoryHook";
    hookTask = tasks.create(taskName, PublishToMavenRepositoryHook.class, new Action<PublishToMavenRepositoryHook>() {

        public void execute(PublishToMavenRepositoryHook publishTask) {
            publishTask.setGroup(PublishingPlugin.PUBLISH_TASK_GROUP);
        }
    });
    publishLifecycleTask.dependsOn(taskName);
}
Also used : Task(org.gradle.api.Task) Action(org.gradle.api.Action) TaskContainer(org.gradle.api.tasks.TaskContainer) PublishToMavenRepository(org.gradle.api.publish.maven.tasks.PublishToMavenRepository) PublishToMavenRepositoryHook(com.taobao.android.builder.tasks.maven.PublishToMavenRepositoryHook)

Example 70 with Task

use of org.gradle.api.Task in project atlas by alibaba.

the class MtlTaskInjector method injectTasks.

public void injectTasks(List<MtlTaskContext> mtlTaskContexts, AndroidBuilder androidBuilder) {
    Collection<BaseVariantOutput> baseVariantOutputDataList = variantContext.getVariantOutputData();
    for (final BaseVariantOutput vod : baseVariantOutputDataList) {
        // TODO What if the intermediate step does not generate task
        List<Task> beforeTasks = new ArrayList<Task>();
        for (MtlTaskContext mtlTaskContext : mtlTaskContexts) {
            // Get the task instance
            List<Task> tasks = new ArrayList<Task>();
            if (mtlTaskContext.isSystemTask()) {
                if (null != mtlTaskContext.getSysTask()) {
                    tasks.add(mtlTaskContext.getSysTask());
                } else if (null != mtlTaskContext.getSysTaskClazz()) {
                    Class taskClazz = mtlTaskContext.getSysTaskClazz();
                    tasks.addAll(findTask(taskClazz, variantContext.getVariantName()));
                } else {
                    Task task = project.getTasks().findByName(variantContext.getBaseVariantData().getTaskName(mtlTaskContext.getTaskName(), ""));
                    if (null != task) {
                        tasks.add(task);
                    }
                }
            } else {
                Task task = mtlTaskFactory.createTask(variantContext, vod, mtlTaskContext.getTaskActionClazz());
                if (null != task) {
                    if (null != androidBuilder && task instanceof BaseTask) {
                        ((BaseTask) task).setAndroidBuilder(androidBuilder);
                    }
                    tasks.add(task);
                }
            }
            if (tasks.isEmpty()) {
                // throw new RuntimeException("task is not found " + mtlTaskContext);
                project.getLogger().info("task is not found " + vod.getName() + mtlTaskContext);
            } else {
                if (!beforeTasks.isEmpty()) {
                    for (Task task : tasks) {
                        project.getLogger().debug("[MtlTaskInjector]" + vod.getName() + ":" + task + "->" + StringUtils.join(beforeTasks.toArray()));
                        for (Task before : beforeTasks) {
                            project.getLogger().info("[tasks] set task " + task.getProject().getName() + ":" + task.getName() + "->" + before.getProject().getName() + ":" + before.getName());
                            task.dependsOn(before);
                        }
                    }
                }
                beforeTasks.clear();
                beforeTasks.addAll(tasks);
                if (null != mtlTaskContext.getTaskFilter()) {
                    List<Task> beforeTasks2 = mtlTaskContext.getTaskFilter().getBeforeTasks(project, vod);
                    for (Task task : tasks) {
                        project.getLogger().debug("[MtlTaskInjector]" + vod.getName() + ":" + task + "->" + StringUtils.join(beforeTasks2.toArray()));
                        for (Task before : beforeTasks2) {
                            project.getLogger().info("[tasks] set task " + task.getProject().getName() + ":" + task.getName() + "->" + before.getProject().getName() + ":" + before.getName());
                            task.dependsOn(before);
                        }
                    }
                }
            }
        }
    }
}
Also used : BaseVariantOutput(com.android.build.gradle.api.BaseVariantOutput) BaseTask(com.android.build.gradle.internal.tasks.BaseTask) Task(org.gradle.api.Task) DefaultAndroidTask(com.android.build.gradle.internal.tasks.DefaultAndroidTask) ArrayList(java.util.ArrayList) BaseTask(com.android.build.gradle.internal.tasks.BaseTask)

Aggregations

Task (org.gradle.api.Task)222 Project (org.gradle.api.Project)66 File (java.io.File)54 Action (org.gradle.api.Action)31 ArrayList (java.util.ArrayList)27 Plugin (org.gradle.api.Plugin)27 Configuration (org.gradle.api.artifacts.Configuration)27 Test (org.junit.Test)23 List (java.util.List)22 TaskProvider (org.gradle.api.tasks.TaskProvider)22 DefaultTask (org.gradle.api.DefaultTask)21 IOException (java.io.IOException)20 Set (java.util.Set)18 SourceSet (org.gradle.api.tasks.SourceSet)18 Map (java.util.Map)17 GradleException (org.gradle.api.GradleException)17 FileCollection (org.gradle.api.file.FileCollection)16 Inject (javax.inject.Inject)15 JavaPlugin (org.gradle.api.plugins.JavaPlugin)15 LifecycleBasePlugin (org.gradle.language.base.plugins.LifecycleBasePlugin)15