Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
c0ff99e
new-run-ui
janfaracik Sep 9, 2025
bfffe7a
Fix graph
janfaracik Sep 9, 2025
6ff657c
Refine
janfaracik Sep 12, 2025
9245799
Improve contrast for status icons
janfaracik Sep 22, 2025
9ac46d1
Merge branch 'main' into refine-status-icons
janfaracik Sep 22, 2025
f3b3603
Update status-icon.tsx
janfaracik Sep 22, 2025
e515da1
Merge branch 'refine-status-icons' of https://github.com/janfaracik/p…
janfaracik Sep 22, 2025
c25d477
Update status-icon.scss
janfaracik Sep 22, 2025
15b83e3
Merge branch 'refine-status-icons' into new-run-ui
janfaracik Sep 22, 2025
cfd98b4
Refine
janfaracik Oct 1, 2025
b931aa7
Remove files
janfaracik Oct 1, 2025
e02e76d
Update index.jelly
janfaracik Oct 1, 2025
9ac845e
Merge branch 'main' into new-run-ui
janfaracik Oct 6, 2025
1c30f95
Update index.jelly
janfaracik Oct 6, 2025
b0c79a8
Merge branch 'main' into new-run-ui
janfaracik Oct 7, 2025
f747c28
Update index.jelly
janfaracik Oct 7, 2025
54cc67f
Update pom.xml
janfaracik Oct 7, 2025
1736fbe
Make widget title clickable
janfaracik Oct 10, 2025
ba13b23
Prettier
janfaracik Oct 10, 2025
45e17ff
Merge branch 'make-card-title-clickable' into new-run-ui
janfaracik Oct 10, 2025
f369736
Update app.tsx
janfaracik Oct 10, 2025
e005e2b
Push
janfaracik Oct 10, 2025
d5cdb8f
Tidy up
janfaracik Oct 10, 2025
eb62dd0
Merge branch 'make-card-title-clickable' into new-run-ui
janfaracik Oct 10, 2025
531541d
Init
janfaracik Oct 14, 2025
c03093a
Update style.css
janfaracik Oct 14, 2025
4f6eb3e
Push
janfaracik Oct 14, 2025
92f721f
Create action.jelly
janfaracik Oct 14, 2025
62b3938
Merge branch 'main' into new-run-ui-small
janfaracik Oct 14, 2025
67537e8
Update style.css
janfaracik Oct 14, 2025
5d02430
Format
janfaracik Oct 14, 2025
2e556eb
Update pom.xml
janfaracik Oct 14, 2025
5944b70
Update PipelineConsole.tsx
janfaracik Oct 14, 2025
44527df
Update pom.xml
timja Oct 14, 2025
0f8b230
Restore Changes/Tests/Artifacts
janfaracik Oct 15, 2025
7be8155
Restore Git details
janfaracik Oct 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@
<changelist>999999-SNAPSHOT</changelist>
<gitHubRepo>jenkinsci/pipeline-graph-view-plugin</gitHubRepo>
<!-- Baseline Jenkins version you use to build the plugin. Users must have this version or newer to run. -->
<jenkins.baseline>2.504</jenkins.baseline>
<jenkins.version>${jenkins.baseline}.3</jenkins.version>
<jenkins.baseline>2.516</jenkins.baseline>
<jenkins.version>2.532</jenkins.version>
<node.version>24.2.0</node.version>
<npm.version>11.3.0</npm.version>
<spotless.check.skip>false</spotless.check.skip>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,12 @@ export default function PipelineConsole() {
container={document.getElementById("console-pipeline-overflow-root")}
>
<Dropdown
className={
rootElement?.closest(".app-build-content")
? "jenkins-details__button"
: ""
}
icon={SETTINGS}
items={[
showSplitView ? (
<StagesCustomization key="visibility-select" />
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,7 @@
.pgv-stages-graph {
--card-background: color-mix(
in srgb,
var(--text-color-secondary) 4%,
var(--background)
);
position: relative;
background: var(--card-background);
border: var(--jenkins-border);
border: var(--card-border-width) solid var(--card-border-color);
border-radius: var(--form-input-border-radius);
overflow: hidden;
height: 100%;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ $pgv-item-padding-inline: 0.7rem;
content: "";
position: absolute;
inset: 0;
background: var(--input-color);
border-radius: var(--form-input-border-radius);
// TODO - var fallback can removed after baseline is moved >= 2.496
border: var(
Expand Down
16 changes: 7 additions & 9 deletions src/main/frontend/pipeline-graph-view/app.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,12 @@ export default function App() {
});

return (
<div>
<UserPreferencesProvider>
<Stages
stages={run.stages}
stageViewPosition={StageViewPosition.TOP}
onRunPage
/>
</UserPreferencesProvider>
</div>
<UserPreferencesProvider>
<Stages
stages={run.stages}
stageViewPosition={StageViewPosition.TOP}
onRunPage
/>
</UserPreferencesProvider>
);
}

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,6 @@

public sealed interface RunDetailsItem {

RunDetailsItem SEPARATOR = new Separator();

record Separator() implements RunDetailsItem {}

final class RunDetail implements RunDetailsItem {
private final @NonNull Icon icon;
private final @NonNull ItemContent content;
Expand Down Expand Up @@ -45,12 +41,6 @@ public String icon() {
sealed interface Icon {
String value();

record SimpleIcon(@NonNull String value) implements Icon {
public SimpleIcon {
requireNonNull(value);
}
}

record Ionicon(@NonNull String value) implements Icon {
public Ionicon(@NonNull String value) {
requireNonNull(value);
Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import hudson.Plugin;
import hudson.console.AnnotatedLargeText;
import hudson.model.Action;
import hudson.model.BallColor;
import hudson.model.Item;
import hudson.model.ParametersDefinitionProperty;
Expand All @@ -14,15 +13,11 @@
import hudson.util.HttpResponses;
import io.jenkins.plugins.pipelinegraphview.Messages;
import io.jenkins.plugins.pipelinegraphview.PipelineGraphViewConfiguration;
import io.jenkins.plugins.pipelinegraphview.cards.RunDetailsCard;
import io.jenkins.plugins.pipelinegraphview.cards.RunDetailsItem;
import io.jenkins.plugins.pipelinegraphview.cards.items.ArtifactRunDetailsItem;
import io.jenkins.plugins.pipelinegraphview.cards.items.ChangesRunDetailsItem;
import io.jenkins.plugins.pipelinegraphview.cards.items.SCMRunDetailsItems;
import io.jenkins.plugins.pipelinegraphview.cards.items.TestResultRunDetailsItem;
import io.jenkins.plugins.pipelinegraphview.cards.items.TimingRunDetailsItems;
import io.jenkins.plugins.pipelinegraphview.cards.items.UpstreamCauseRunDetailsItem;
import io.jenkins.plugins.pipelinegraphview.cards.items.UserIdCauseRunDetailsItem;
import io.jenkins.plugins.pipelinegraphview.utils.PipelineGraph;
import io.jenkins.plugins.pipelinegraphview.utils.PipelineGraphApi;
import io.jenkins.plugins.pipelinegraphview.utils.PipelineNodeUtil;
Expand All @@ -35,9 +30,9 @@
import java.util.List;
import java.util.concurrent.TimeUnit;
import jenkins.model.Jenkins;
import jenkins.model.Tab;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
import org.jenkins.ui.icon.IconSpec;
import org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction;
import org.jenkinsci.plugins.workflow.cps.replay.ReplayAction;
import org.jenkinsci.plugins.workflow.flow.FlowExecution;
Expand All @@ -53,7 +48,7 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class PipelineConsoleViewAction implements Action, IconSpec {
public class PipelineConsoleViewAction extends Tab {
public static final long LOG_THRESHOLD = 150 * 1024; // 150KB
public static final String URL_NAME = "pipeline-overview";
public static final int CACHE_AGE = (int) TimeUnit.DAYS.toSeconds(1);
Expand All @@ -71,14 +66,15 @@ public class PipelineConsoleViewAction implements Action, IconSpec {
private final PipelineStepApi stepApi;

public PipelineConsoleViewAction(WorkflowRun target) {
super(target);
this.run = target;
this.graphApi = new PipelineGraphApi(this.run);
this.stepApi = new PipelineStepApi(this.run);
}

@Override
public String getDisplayName() {
return "Pipeline Overview";
return "Stages";
}

@Override
Expand Down Expand Up @@ -318,24 +314,12 @@ private static long parseIntWithDefault(String s, long defaultValue) {
}

@SuppressWarnings("unused")
public RunDetailsCard getRunDetailsCard() {

public List<RunDetailsItem> getRunDetailsItems() {
List<RunDetailsItem> runDetailsItems = new ArrayList<>(SCMRunDetailsItems.get(run));

if (!runDetailsItems.isEmpty()) {
runDetailsItems.add(RunDetailsItem.SEPARATOR);
}

UpstreamCauseRunDetailsItem.get(run).ifPresent(runDetailsItems::add);
UserIdCauseRunDetailsItem.get(run).ifPresent(runDetailsItems::add);

runDetailsItems.addAll(TimingRunDetailsItems.get(run));

ChangesRunDetailsItem.get(run).ifPresent(runDetailsItems::add);
TestResultRunDetailsItem.get(run).ifPresent(runDetailsItems::add);
ArtifactRunDetailsItem.get(run).ifPresent(runDetailsItems::add);

return new RunDetailsCard(runDetailsItems);
return runDetailsItems;
}

public boolean isShowGraphOnBuildPage() {
Expand Down Expand Up @@ -516,13 +500,8 @@ public BallColor getIconColor() {
return run.getIconColor();
}

@Override
public String getIconClassName() {
return "symbol-git-network-outline plugin-ionicons-api";
}

@Override
public String getIconFileName() {
return null;
return "symbol-git-network-outline plugin-ionicons-api";
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import jenkins.model.TransientActionFactory;
import org.jenkinsci.plugins.workflow.job.WorkflowRun;

@Extension
@Extension(ordinal = Integer.MAX_VALUE - 1)
public class PipelineConsoleViewActionFactory extends TransientActionFactory<WorkflowRun> {

@Override
Expand Down
Empty file.
Loading