Skip to content

Commit ed3c9b8

Browse files
authored
Command + Permission Data Extraction (#6083)
for the new site, we're gonna have our own command and permissions page and to make this less of a pain, this PR adds a gradle task which will export that data. the resulting files end up in the root directory under the generated folder. gotta figure out how we automatically fetch this for the site, maybe we make the generated json files part of the jenkins build process?
1 parent 6ad737d commit ed3c9b8

File tree

18 files changed

+1195
-69
lines changed

18 files changed

+1195
-69
lines changed

.github/workflows/build-master.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535
./gradlew build --stacktrace
3636
3737
- name: Publish JUnit report
38-
uses: mikepenz/action-junit-report@v4
38+
uses: mikepenz/action-junit-report@v5
3939
if: success() || failure() # Run even if the previous step fails
4040
with:
4141
report_paths: '**/build/test-results/test*/TEST-*.xml'
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
name: Command and Permissions Data
2+
on:
3+
push:
4+
branches:
5+
- 2.x
6+
7+
jobs:
8+
data:
9+
name: Generate and Upload
10+
runs-on: ubuntu-latest
11+
12+
steps:
13+
- name: Checkout Git Repo
14+
uses: actions/checkout@v4
15+
with:
16+
fetch-depth: 1
17+
18+
- name: Set up JDK 17
19+
uses: actions/setup-java@v4
20+
with:
21+
distribution: 'temurin'
22+
java-version: 17
23+
24+
- name: Set up Gradle
25+
uses: gradle/actions/setup-gradle@v4
26+
27+
- name: Generate Data
28+
run: |
29+
chmod +x gradlew
30+
./gradlew commandData
31+
32+
- name: Upload Data
33+
uses: ryand56/r2-upload-action@v1
34+
with:
35+
r2-account-id: ${{ secrets.R2_ACCOUNT_ID }}
36+
r2-access-key-id: ${{ secrets.R2_ACCESS_KEY_ID }}
37+
r2-secret-access-key: ${{ secrets.R2_SECRET_ACCESS_KEY }}
38+
r2-bucket: ${{ secrets.R2_BUCKET }}
39+
source-dir: generated
40+
destination-dir: ./
41+
42+

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
# Build files
2222
.gradle/
2323
/jars/
24+
generated/
2425
out/
2526
build/
2627
target/

Essentials/src/main/java/com/earth2me/essentials/commands/Commandeditsign.java

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
import org.bukkit.block.data.type.WallHangingSign;
1818
import org.bukkit.block.data.type.WallSign;
1919
import org.bukkit.block.sign.Side;
20-
import org.bukkit.entity.Player;
2120
import org.bukkit.event.block.SignChangeEvent;
2221
import org.bukkit.util.Vector;
2322

@@ -49,7 +48,7 @@ protected void run(final Server server, final User user, final String commandLab
4948
throw new TranslatableException("editsignCommandLimit");
5049
}
5150
existingLines[line] = text;
52-
if (callSignEvent(sign, user.getBase(), existingLines)) {
51+
if (callSignEvent(sign, user, existingLines)) {
5352
return;
5453
}
5554

@@ -61,7 +60,7 @@ protected void run(final Server server, final User user, final String commandLab
6160
existingLines[i] = "";
6261
}
6362

64-
if (callSignEvent(sign, user.getBase(), existingLines)) {
63+
if (callSignEvent(sign, user, existingLines)) {
6564
return;
6665
}
6766

@@ -71,7 +70,7 @@ protected void run(final Server server, final User user, final String commandLab
7170
final int line = Integer.parseInt(args[1]) - 1;
7271
existingLines[line] = "";
7372

74-
if (callSignEvent(sign, user.getBase(), existingLines)) {
73+
if (callSignEvent(sign, user, existingLines)) {
7574
return;
7675
}
7776

@@ -100,13 +99,13 @@ protected void run(final Server server, final User user, final String commandLab
10099
for (int i = 0; i < 4; i++) {
101100
existingLines[i] = FormatUtil.formatString(user, "essentials.editsign", user.getSignCopy().get(i));
102101
}
103-
if (callSignEvent(sign, user.getBase(), existingLines)) {
102+
if (callSignEvent(sign, user, existingLines)) {
104103
return;
105104
}
106105
user.sendTl("editsignPaste", commandLabel);
107106
} else {
108107
existingLines[line] = FormatUtil.formatString(user, "essentials.editsign", user.getSignCopy().get(line));
109-
if (callSignEvent(sign, user.getBase(), existingLines)) {
108+
if (callSignEvent(sign, user, existingLines)) {
110109
return;
111110
}
112111
user.sendTl("editsignPasteLine", line + 1, commandLabel);
@@ -119,22 +118,22 @@ protected void run(final Server server, final User user, final String commandLab
119118
}
120119
}
121120

122-
private boolean callSignEvent(final ModifiableSign sign, final Player player, final String[] lines) {
121+
private boolean callSignEvent(final ModifiableSign sign, final User user, final String[] lines) {
123122
final SignChangeEvent event;
124123
if (VersionUtil.getServerBukkitVersion().isHigherThanOrEqualTo(VersionUtil.v1_20_1_R01)) {
125-
if (sign.isWaxed() && !player.hasPermission("essentials.editsign.waxed.exempt")) {
124+
if (sign.isWaxed() && !user.isAuthorized("essentials.editsign.waxed.exempt")) {
126125
return true;
127126
}
128-
event = new SignChangeEvent(sign.getBlock(), player, lines, sign.isFront() ? Side.FRONT : Side.BACK);
127+
event = new SignChangeEvent(sign.getBlock(), user.getBase(), lines, sign.isFront() ? Side.FRONT : Side.BACK);
129128
} else {
130129
//noinspection deprecation
131-
event = new SignChangeEvent(sign.getBlock(), player, lines);
130+
event = new SignChangeEvent(sign.getBlock(), user.getBase(), lines);
132131
}
133132

134133
Bukkit.getServer().getPluginManager().callEvent(event);
135134
if (event.isCancelled()) {
136135
if (ess.getSettings().isDebug()) {
137-
ess.getLogger().info("SignChangeEvent canceled for /editsign execution by " + player.getName());
136+
ess.getLogger().info("SignChangeEvent canceled for /editsign execution by " + user.getName());
138137
}
139138
return true;
140139
}

Essentials/src/main/java/com/earth2me/essentials/commands/Commandhelpop.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ private void sendMessage(final IMessageRecipient from, final String[] args) thro
4343

4444
final List<IUser> recipients = new ArrayList<>();
4545
for (IUser user : ess.getOnlineUsers()) {
46-
if (user.getBase().hasPermission("essentials.helpop.receive")) {
46+
if (user.isAuthorized("essentials.helpop.receive")) {
4747
recipients.add(user);
4848
}
4949
}

0 commit comments

Comments
 (0)