|
72 | 72 | - name: Verify CLI works |
73 | 73 | run: node ../nodejs/node_modules/@github/copilot/npm-loader.js --version |
74 | 74 |
|
| 75 | + - name: Prime Spotless Eclipse formatter cache |
| 76 | + if: matrix.test-jdk == '25' |
| 77 | + run: | |
| 78 | + set -euo pipefail |
| 79 | +
|
| 80 | + p2_data="$HOME/.m2/repository/dev/equo/p2-data" |
| 81 | + bundle_dir="$p2_data/bundle-pool/https-download.eclipse.org-eclipse-updates-4.33-R-4.33-202409030240-" |
| 82 | + query_dir="$p2_data/queries/1.8.1-1468712279" |
| 83 | + jna_jar="$bundle_dir/com.sun.jna_5.14.0.v20231211-1200.jar" |
| 84 | +
|
| 85 | + mkdir -p "$bundle_dir" "$query_dir" |
| 86 | + printf '1' > "$p2_data/queries/version" |
| 87 | + printf 'https://download.eclipse.org/eclipse/updates/4.33/R-4.33-202409030240/' > "$bundle_dir/.url" |
| 88 | +
|
| 89 | + mvn -q dependency:get -Dartifact=net.java.dev.jna:jna:5.14.0 -Dtransitive=false |
| 90 | + cp "$HOME/.m2/repository/net/java/dev/jna/jna/5.14.0/jna-5.14.0.jar" "$jna_jar" |
| 91 | +
|
| 92 | + helper_dir="$(mktemp -d)" |
| 93 | + trap 'rm -rf "$helper_dir"' EXIT |
| 94 | + mkdir -p "$helper_dir/dev/equo/solstice/p2" |
| 95 | + cat > "$helper_dir/dev/equo/solstice/p2/P2QueryResult.java" <<'JAVA' |
| 96 | + package dev.equo.solstice.p2; |
| 97 | +
|
| 98 | + import java.io.File; |
| 99 | + import java.io.FileOutputStream; |
| 100 | + import java.io.ObjectOutputStream; |
| 101 | + import java.io.Serializable; |
| 102 | + import java.util.ArrayList; |
| 103 | + import java.util.Collections; |
| 104 | + import java.util.List; |
| 105 | +
|
| 106 | + public class P2QueryResult implements Serializable { |
| 107 | + private static final long serialVersionUID = 1L; |
| 108 | +
|
| 109 | + private final List<String> mavenCoordinates; |
| 110 | + private final List<File> downloadedP2Jars; |
| 111 | +
|
| 112 | + private P2QueryResult(List<String> mavenCoordinates, List<File> downloadedP2Jars) { |
| 113 | + this.mavenCoordinates = mavenCoordinates; |
| 114 | + this.downloadedP2Jars = downloadedP2Jars; |
| 115 | + } |
| 116 | +
|
| 117 | + public static void main(String[] args) throws Exception { |
| 118 | + var coordinates = new ArrayList<String>(); |
| 119 | + Collections.addAll( |
| 120 | + coordinates, |
| 121 | + "net.java.dev.jna:jna-platform:5.14.0", |
| 122 | + "org.apache.felix:org.apache.felix.scr:2.2.12", |
| 123 | + "org.eclipse.platform:org.eclipse.core.commands:3.12.200", |
| 124 | + "org.eclipse.platform:org.eclipse.core.contenttype:3.9.500", |
| 125 | + "org.eclipse.platform:org.eclipse.core.expressions:3.9.400", |
| 126 | + "org.eclipse.platform:org.eclipse.core.filesystem:1.11.0", |
| 127 | + "org.eclipse.platform:org.eclipse.core.jobs:3.15.400", |
| 128 | + "org.eclipse.platform:org.eclipse.core.resources:3.21.0", |
| 129 | + "org.eclipse.platform:org.eclipse.core.runtime:3.31.100", |
| 130 | + "org.eclipse.platform:org.eclipse.equinox.app:1.7.200", |
| 131 | + "org.eclipse.platform:org.eclipse.equinox.common:3.19.100", |
| 132 | + "org.eclipse.platform:org.eclipse.equinox.event:1.7.100", |
| 133 | + "org.eclipse.platform:org.eclipse.equinox.preferences:3.11.100", |
| 134 | + "org.eclipse.platform:org.eclipse.equinox.registry:3.12.100", |
| 135 | + "org.eclipse.platform:org.eclipse.equinox.supplement:1.11.0", |
| 136 | + "org.eclipse.jdt:org.eclipse.jdt.core:3.39.0", |
| 137 | + "org.eclipse.jdt:ecj:3.39.0", |
| 138 | + "org.eclipse.platform:org.eclipse.osgi:3.21.0", |
| 139 | + "org.eclipse.platform:org.eclipse.text:3.14.100", |
| 140 | + "org.osgi:org.osgi.service.cm:1.6.1", |
| 141 | + "org.osgi:org.osgi.service.component:1.5.1", |
| 142 | + "org.osgi:org.osgi.service.event:1.4.1", |
| 143 | + "org.osgi:org.osgi.service.metatype:1.4.1", |
| 144 | + "org.osgi:org.osgi.service.prefs:1.1.2", |
| 145 | + "org.osgi:org.osgi.util.function:1.2.0", |
| 146 | + "org.osgi:org.osgi.util.promise:1.3.0"); |
| 147 | +
|
| 148 | + var result = new P2QueryResult(coordinates, List.of(new File(args[1]))); |
| 149 | + try (var out = new ObjectOutputStream(new FileOutputStream(args[0]))) { |
| 150 | + out.writeObject(result); |
| 151 | + } |
| 152 | + } |
| 153 | + } |
| 154 | + JAVA |
| 155 | +
|
| 156 | + javac "$helper_dir/dev/equo/solstice/p2/P2QueryResult.java" |
| 157 | + java -cp "$helper_dir" dev.equo.solstice.p2.P2QueryResult "$query_dir/content" "$jna_jar" |
| 158 | +
|
75 | 159 | - name: Run spotless check |
76 | 160 | if: matrix.test-jdk == '25' |
77 | 161 | run: | |
|
0 commit comments