Search in sources :

Example 6 with Tkn

use of com.redhat.devtools.intellij.tektoncd.tkn.Tkn in project intellij-tekton by redhat-developer.

the class TektonTreeStructure method getTaskRuns.

private Object[] getTaskRuns(ParentableNode element, String task) {
    Object[] taskRunsNodes;
    try {
        Tkn tkn = element.getRoot().getTkn();
        List<TaskRun> taskRuns = tkn.getTaskRuns(element.getNamespace(), task);
        taskRunsNodes = getTaskRuns(element, taskRuns, true);
        watchNodes(tkn, taskRunsNodes);
    } catch (IOException e) {
        taskRunsNodes = new Object[] { new MessageNode(element.getRoot(), element, "Failed to load task runs") };
    }
    return taskRunsNodes;
}
Also used : TaskRun(io.fabric8.tekton.pipeline.v1beta1.TaskRun) Tkn(com.redhat.devtools.intellij.tektoncd.tkn.Tkn) IOException(java.io.IOException)

Example 7 with Tkn

use of com.redhat.devtools.intellij.tektoncd.tkn.Tkn in project intellij-tekton by redhat-developer.

the class TektonTreeStructure method getFirstLevelNodes.

private Object[] getFirstLevelNodes(TektonRootNode element) {
    List<Object> namespaces = new ArrayList<>();
    try {
        Tkn tkn = element.getTkn();
        if (tkn.isTektonAware()) {
            String namespace = element.getTkn().getNamespace();
            namespaces.add(new NamespaceNode(element, namespace));
            namespaces.add(new ConfigurationsNode(element, "Configurations"));
        } else {
            namespaces.add(new MessageNode(element, element, NO_TEKTON));
        }
    } catch (IOException e) {
        namespaces.add(new MessageNode(element, element, ERROR));
    }
    return namespaces.toArray(new Object[namespaces.size()]);
}
Also used : Tkn(com.redhat.devtools.intellij.tektoncd.tkn.Tkn) ArrayList(java.util.ArrayList) IOException(java.io.IOException)

Example 8 with Tkn

use of com.redhat.devtools.intellij.tektoncd.tkn.Tkn in project intellij-tekton by redhat-developer.

the class TektonTreeStructureTest method before.

@Before
public void before() throws Exception {
    this.project = mock(Project.class);
    this.structure = mock(TektonTreeStructure.class, org.mockito.Mockito.CALLS_REAL_METHODS);
    this.root = spy(new TektonRootNode(project));
    this.tkn = mock(Tkn.class);
    when(root.getTkn()).thenReturn(tkn);
    this.parent = new NamespaceNode(root, "parent");
    Field rootField = TektonTreeStructure.class.getDeclaredField("root");
    rootField.setAccessible(true);
    rootField.set(structure, root);
    config = createConfig("cluster", "namespace", "token", "user");
    Field configField = TektonTreeStructure.class.getDeclaredField("config");
    configField.setAccessible(true);
    configField.set(structure, config);
    this.configWatcher = mock(ConfigWatcher.class);
    this.tknCliFactory = mock(TknCliFactory.class);
    this.metadata1 = new ObjectMeta();
    this.metadata1.setName("test1");
    this.metadata2 = new ObjectMeta();
    this.metadata2.setName("test2");
    this.metadata3 = new ObjectMeta();
    this.metadata3.setName("test3");
    this.watchHandler = mock(WatchHandler.class);
    when(tkn.getWatchHandler()).thenReturn(watchHandler);
    when(watchHandler.canBeWatched(any())).thenReturn(false);
}
Also used : Project(com.intellij.openapi.project.Project) Field(java.lang.reflect.Field) ObjectMeta(io.fabric8.kubernetes.api.model.ObjectMeta) ConfigWatcher(com.redhat.devtools.intellij.common.utils.ConfigWatcher) Tkn(com.redhat.devtools.intellij.tektoncd.tkn.Tkn) TknCliFactory(com.redhat.devtools.intellij.tektoncd.tkn.TknCliFactory) WatchHandler(com.redhat.devtools.intellij.tektoncd.utils.WatchHandler) Before(org.junit.Before)

Example 9 with Tkn

use of com.redhat.devtools.intellij.tektoncd.tkn.Tkn in project intellij-tekton by redhat-developer.

the class DeployHelper method saveTaskOnClusterFromHub.

public static boolean saveTaskOnClusterFromHub(Project project, String name, String version, boolean overwrite, String confirmationMessage) throws IOException {
    if (!isSaveConfirmed(confirmationMessage)) {
        return false;
    }
    Tkn tknCli = TreeHelper.getTkn(project);
    if (tknCli == null) {
        return false;
    }
    tknCli.installTaskFromHub(name, version, overwrite);
    return true;
}
Also used : Tkn(com.redhat.devtools.intellij.tektoncd.tkn.Tkn)

Example 10 with Tkn

use of com.redhat.devtools.intellij.tektoncd.tkn.Tkn in project intellij-tekton by redhat-developer.

the class TaskCompletionProvider method getTasksLookups.

private List<LookupElementBuilder> getTasksLookups(Project project, String namespace) {
    Tkn tkn = TreeHelper.getTkn(project);
    List<LookupElementBuilder> lookups = Collections.emptyList();
    try {
        lookups = tkn.getClusterTasks().stream().map(clusterTask -> LookupElementBuilder.create(clusterTask).withPresentableText(clusterTask.getMetadata().getName()).withTailText(" (clusterTask)", true).withLookupStrings(Arrays.asList("clustertask", clusterTask.getMetadata().getName())).withInsertHandler(new TaskAutoInsertHandler())).collect(Collectors.toList());
        lookups.addAll(tkn.getTasks(namespace).stream().map(task -> LookupElementBuilder.create(task).withPresentableText(task.getMetadata().getName()).withLookupString(task.getMetadata().getName()).withInsertHandler(new TaskAutoInsertHandler())).collect(Collectors.toList()));
        lookups.sort(Comparator.comparing(item -> ((HasMetadata) item.getObject()).getMetadata().getName()));
    } catch (IOException e) {
        logger.warn("Error: " + e.getLocalizedMessage(), e);
    }
    return lookups;
}
Also used : ProcessingContext(com.intellij.util.ProcessingContext) Arrays(java.util.Arrays) Logger(org.slf4j.Logger) LookupElementBuilder(com.intellij.codeInsight.lookup.LookupElementBuilder) TreeHelper(com.redhat.devtools.intellij.tektoncd.utils.TreeHelper) CompletionParameters(com.intellij.codeInsight.completion.CompletionParameters) LoggerFactory(org.slf4j.LoggerFactory) IOException(java.io.IOException) HasMetadata(io.fabric8.kubernetes.api.model.HasMetadata) Collectors(java.util.stream.Collectors) CompletionResultSet(com.intellij.codeInsight.completion.CompletionResultSet) Tkn(com.redhat.devtools.intellij.tektoncd.tkn.Tkn) List(java.util.List) CompletionProvider(com.intellij.codeInsight.completion.CompletionProvider) Project(com.intellij.openapi.project.Project) Comparator(java.util.Comparator) NotNull(org.jetbrains.annotations.NotNull) Collections(java.util.Collections) NAMESPACE(com.redhat.devtools.intellij.tektoncd.Constants.NAMESPACE) Tkn(com.redhat.devtools.intellij.tektoncd.tkn.Tkn) LookupElementBuilder(com.intellij.codeInsight.lookup.LookupElementBuilder) IOException(java.io.IOException)

Aggregations

Tkn (com.redhat.devtools.intellij.tektoncd.tkn.Tkn)25 IOException (java.io.IOException)21 ArrayList (java.util.ArrayList)13 LookupElementBuilder (com.intellij.codeInsight.lookup.LookupElementBuilder)3 Project (com.intellij.openapi.project.Project)3 TreeHelper (com.redhat.devtools.intellij.tektoncd.utils.TreeHelper)3 CompletionParameters (com.intellij.codeInsight.completion.CompletionParameters)2 CompletionResultSet (com.intellij.codeInsight.completion.CompletionResultSet)2 ProcessingContext (com.intellij.util.ProcessingContext)2 KIND_CLUSTERTASK (com.redhat.devtools.intellij.tektoncd.Constants.KIND_CLUSTERTASK)2 KIND_TASK (com.redhat.devtools.intellij.tektoncd.Constants.KIND_TASK)2 NAMESPACE (com.redhat.devtools.intellij.tektoncd.Constants.NAMESPACE)2 ClusterTaskNode (com.redhat.devtools.intellij.tektoncd.tree.ClusterTaskNode)2 ClusterTriggerBindingNode (com.redhat.devtools.intellij.tektoncd.tree.ClusterTriggerBindingNode)2 ConditionNode (com.redhat.devtools.intellij.tektoncd.tree.ConditionNode)2 EventListenerNode (com.redhat.devtools.intellij.tektoncd.tree.EventListenerNode)2 PipelineNode (com.redhat.devtools.intellij.tektoncd.tree.PipelineNode)2 PipelineRunNode (com.redhat.devtools.intellij.tektoncd.tree.PipelineRunNode)2 ResourceNode (com.redhat.devtools.intellij.tektoncd.tree.ResourceNode)2 TaskNode (com.redhat.devtools.intellij.tektoncd.tree.TaskNode)2