Skip to content

Commit 84afd4b

Browse files
authored
Merge pull request #6 from sourceplusplus/simple-cli
simplify cli
2 parents 1f5f495 + 4931043 commit 84afd4b

40 files changed

+112
-142
lines changed

.github/workflows/build.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -140,17 +140,17 @@ jobs:
140140
- name: "[CLI] Remove developer"
141141
run: ./build/graal/spp-cli -v admin remove-developer test
142142
- name: "[CLI] Add live breakpoint"
143-
run: ./build/graal/spp-cli -v developer add-live-breakpoint -h 100 spp.example.webapp.model.User 48
143+
run: ./build/graal/spp-cli -v add-breakpoint -h 100 spp.example.webapp.model.User 48
144144
- name: "[CLI] Add live log"
145-
run: ./build/graal/spp-cli -v developer add-live-log -h 100 spp.example.webapp.model.User 48 test-message
145+
run: ./build/graal/spp-cli -v add-log -h 100 spp.example.webapp.model.User 48 test-message
146146
- name: "[CLI] Get live instruments"
147-
run: ./build/graal/spp-cli -v developer get-live-instruments
147+
run: ./build/graal/spp-cli -v get-instruments
148148
- name: "[CLI] Get live breakpoints"
149-
run: ./build/graal/spp-cli -v developer get-live-breakpoints
149+
run: ./build/graal/spp-cli -v get-breakpoints
150150
- name: "[CLI] Get live logs"
151-
run: ./build/graal/spp-cli -v developer get-live-logs
151+
run: ./build/graal/spp-cli -v get-logs
152152
- name: "[CLI] Remove live instruments"
153-
run: ./build/graal/spp-cli -v developer remove-live-instruments spp.example.webapp.model.User 48
153+
run: ./build/graal/spp-cli -v remove-instruments spp.example.webapp.model.User 48
154154

155155
- name: Zip spp-cli
156156
run: zip spp-cli-linux64.zip -j build/graal/spp-cli

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ This project provides a command-line interface client to the [Source++](https://
4444
<summary>Command</summary>
4545

4646
```sh
47-
./spp-cli developer add-live-breakpoint com.company.Webapp 42
47+
./spp-cli add-breakpoint com.company.Webapp 42
4848
```
4949
</details>
5050

src/main/kotlin/spp/cli/Main.kt

+18-23
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
package spp.cli
22

33
import com.github.ajalt.clikt.core.subcommands
4-
import spp.cli.commands.PlatformCLI
4+
import spp.cli.commands.Version
55
import spp.cli.commands.admin.Admin
6+
import spp.cli.commands.admin.Reset
67
import spp.cli.commands.admin.access.*
78
import spp.cli.commands.admin.developer.AddDeveloper
89
import spp.cli.commands.admin.developer.GetDevelopers
@@ -13,11 +14,7 @@ import spp.cli.commands.admin.permission.GetDeveloperPermissions
1314
import spp.cli.commands.admin.permission.GetRolePermissions
1415
import spp.cli.commands.admin.permission.RemoveRolePermission
1516
import spp.cli.commands.admin.role.*
16-
import spp.cli.commands.developer.Developer
17-
import spp.cli.commands.developer.instrument.*
18-
import spp.cli.commands.system.System
19-
import spp.cli.commands.system.etc.Reset
20-
import spp.cli.commands.system.etc.Version
17+
import spp.cli.commands.instrument.*
2118

2219
object Main {
2320

@@ -28,11 +25,7 @@ object Main {
2825
fun main(args: Array<String>) {
2926
Main.args = args
3027
PlatformCLI.subcommands(
31-
System().subcommands(
32-
//etc
33-
Reset(),
34-
Version()
35-
),
28+
//admin
3629
Admin().subcommands(
3730
//role
3831
AddRole(),
@@ -58,19 +51,21 @@ object Main {
5851
GetDeveloperAccessPermissions(),
5952
GetRoleAccessPermissions(),
6053
RemoveAccessPermission(),
61-
RemoveRoleAccessPermission()
54+
RemoveRoleAccessPermission(),
55+
//etc
56+
Reset()
6257
),
63-
Developer().subcommands(
64-
//instrument
65-
AddLiveBreakpoint(),
66-
AddLiveLog(),
67-
GetLiveBreakpoints(),
68-
GetLiveInstruments(),
69-
GetLiveLogs(),
70-
RemoveLiveInstrument(),
71-
RemoveLiveInstruments(),
72-
ClearLiveInstruments()
73-
)
58+
//instrument
59+
AddBreakpoint(),
60+
AddLog(),
61+
GetBreakpoints(),
62+
GetInstruments(),
63+
GetLogs(),
64+
RemoveInstrument(),
65+
RemoveInstruments(),
66+
ClearInstruments(),
67+
//etc
68+
Version()
7469
).main(args)
7570
}
7671
}

src/main/kotlin/spp/cli/commands/PlatformCLI.kt renamed to src/main/kotlin/spp/cli/PlatformCLI.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package spp.cli.commands
1+
package spp.cli
22

33
import com.apollographql.apollo.ApolloClient
44
import com.auth0.jwt.JWT

src/main/kotlin/spp/cli/commands/system/etc/Version.kt renamed to src/main/kotlin/spp/cli/commands/Version.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package spp.cli.commands.system.etc
1+
package spp.cli.commands
22

33
import com.github.ajalt.clikt.core.CliktCommand
44
import java.util.*

src/main/kotlin/spp/cli/commands/system/etc/Reset.kt renamed to src/main/kotlin/spp/cli/commands/admin/Reset.kt

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
package spp.cli.commands.system.etc
1+
package spp.cli.commands.admin
22

33
import com.apollographql.apollo.coroutines.await
44
import com.apollographql.apollo.exception.ApolloException
55
import com.github.ajalt.clikt.core.CliktCommand
66
import kotlinx.coroutines.runBlocking
77
import spp.cli.Main
8-
import spp.cli.commands.PlatformCLI
9-
import spp.cli.commands.PlatformCLI.apolloClient
8+
import spp.cli.PlatformCLI
9+
import spp.cli.PlatformCLI.apolloClient
1010
import system.ResetMutation
1111
import kotlin.system.exitProcess
1212

src/main/kotlin/spp/cli/commands/admin/access/AddAccessPermission.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import com.github.ajalt.clikt.parameters.types.enum
1414
import io.vertx.core.json.JsonObject
1515
import kotlinx.coroutines.runBlocking
1616
import spp.cli.Main
17-
import spp.cli.commands.PlatformCLI
17+
import spp.cli.PlatformCLI
1818
import spp.cli.util.JsonCleaner.cleanJson
1919
import type.AccessType
2020
import kotlin.system.exitProcess

src/main/kotlin/spp/cli/commands/admin/access/AddRoleAccessPermission.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import com.github.ajalt.clikt.core.CliktCommand
77
import com.github.ajalt.clikt.parameters.arguments.argument
88
import kotlinx.coroutines.runBlocking
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
10+
import spp.cli.PlatformCLI
1111
import kotlin.system.exitProcess
1212

1313
class AddRoleAccessPermission : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/access/GetAccessPermissions.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import com.github.ajalt.clikt.core.CliktCommand
99
import io.vertx.core.json.JsonObject
1010
import kotlinx.coroutines.runBlocking
1111
import spp.cli.Main
12-
import spp.cli.commands.PlatformCLI
12+
import spp.cli.PlatformCLI
1313
import spp.cli.util.JsonCleaner.cleanJson
1414
import kotlin.system.exitProcess
1515

src/main/kotlin/spp/cli/commands/admin/access/GetDeveloperAccessPermissions.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import com.github.ajalt.clikt.parameters.arguments.argument
1010
import io.vertx.core.json.JsonObject
1111
import kotlinx.coroutines.runBlocking
1212
import spp.cli.Main
13-
import spp.cli.commands.PlatformCLI
13+
import spp.cli.PlatformCLI
1414
import spp.cli.util.JsonCleaner.cleanJson
1515
import kotlin.system.exitProcess
1616

src/main/kotlin/spp/cli/commands/admin/access/GetRoleAccessPermissions.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import com.github.ajalt.clikt.parameters.arguments.argument
1010
import io.vertx.core.json.JsonObject
1111
import kotlinx.coroutines.runBlocking
1212
import spp.cli.Main
13-
import spp.cli.commands.PlatformCLI
13+
import spp.cli.PlatformCLI
1414
import spp.cli.util.JsonCleaner.cleanJson
1515
import kotlin.system.exitProcess
1616

src/main/kotlin/spp/cli/commands/admin/access/RemoveAccessPermission.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import com.github.ajalt.clikt.core.CliktCommand
77
import com.github.ajalt.clikt.parameters.arguments.argument
88
import kotlinx.coroutines.runBlocking
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
10+
import spp.cli.PlatformCLI
1111
import kotlin.system.exitProcess
1212

1313
class RemoveAccessPermission : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/access/RemoveRoleAccessPermission.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import com.github.ajalt.clikt.core.CliktCommand
77
import com.github.ajalt.clikt.parameters.arguments.argument
88
import kotlinx.coroutines.runBlocking
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
10+
import spp.cli.PlatformCLI
1111
import kotlin.system.exitProcess
1212

1313
class RemoveRoleAccessPermission : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/developer/AddDeveloper.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import developer.AddDeveloperMutation
88
import kotlinx.coroutines.runBlocking
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class AddDeveloper : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/developer/GetDevelopers.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ import com.github.ajalt.clikt.core.CliktCommand
66
import developer.GetDevelopersQuery
77
import kotlinx.coroutines.runBlocking
88
import spp.cli.Main
9-
import spp.cli.commands.PlatformCLI
10-
import spp.cli.commands.PlatformCLI.apolloClient
9+
import spp.cli.PlatformCLI
10+
import spp.cli.PlatformCLI.apolloClient
1111
import kotlin.system.exitProcess
1212

1313
class GetDevelopers : CliktCommand() {

src/main/kotlin/spp/cli/commands/admin/developer/RefreshDeveloperToken.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import developer.RefreshDeveloperTokenMutation
88
import kotlinx.coroutines.runBlocking
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class RefreshDeveloperToken : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/developer/RemoveDeveloper.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import developer.RemoveDeveloperMutation
88
import kotlinx.coroutines.runBlocking
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class RemoveDeveloper : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/permission/AddRolePermission.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ import com.github.ajalt.clikt.parameters.types.enum
88
import kotlinx.coroutines.runBlocking
99
import permission.AddRolePermissionMutation
1010
import spp.cli.Main
11-
import spp.cli.commands.PlatformCLI
12-
import spp.cli.commands.PlatformCLI.apolloClient
11+
import spp.cli.PlatformCLI
12+
import spp.cli.PlatformCLI.apolloClient
1313
import type.RolePermission
1414
import kotlin.system.exitProcess
1515

src/main/kotlin/spp/cli/commands/admin/permission/GetDeveloperPermissions.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import kotlinx.coroutines.runBlocking
88
import permission.GetDeveloperPermissionsQuery
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class GetDeveloperPermissions : CliktCommand() {

src/main/kotlin/spp/cli/commands/admin/permission/GetRolePermissions.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import kotlinx.coroutines.runBlocking
88
import permission.GetRolePermissionsQuery
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class GetRolePermissions : CliktCommand() {

src/main/kotlin/spp/cli/commands/admin/permission/RemoveRolePermission.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import kotlinx.coroutines.runBlocking
88
import permission.RemoveRolePermissionMutation
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class RemoveRolePermission : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/role/AddDeveloperRole.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import kotlinx.coroutines.runBlocking
88
import role.AddDeveloperRoleMutation
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class AddDeveloperRole : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/role/AddRole.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import kotlinx.coroutines.runBlocking
88
import role.AddRoleMutation
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class AddRole : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/role/GetDeveloperRoles.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import kotlinx.coroutines.runBlocking
88
import role.GetDeveloperRolesQuery
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class GetDeveloperRoles : CliktCommand() {

src/main/kotlin/spp/cli/commands/admin/role/GetRoles.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ import com.github.ajalt.clikt.core.CliktCommand
66
import kotlinx.coroutines.runBlocking
77
import role.GetRolesQuery
88
import spp.cli.Main
9-
import spp.cli.commands.PlatformCLI
10-
import spp.cli.commands.PlatformCLI.apolloClient
9+
import spp.cli.PlatformCLI
10+
import spp.cli.PlatformCLI.apolloClient
1111
import kotlin.system.exitProcess
1212

1313
class GetRoles : CliktCommand() {

src/main/kotlin/spp/cli/commands/admin/role/RemoveDeveloperRole.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import kotlinx.coroutines.runBlocking
88
import role.RemoveDeveloperRoleMutation
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class RemoveDeveloperRole : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/admin/role/RemoveRole.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import com.github.ajalt.clikt.parameters.arguments.argument
77
import kotlinx.coroutines.runBlocking
88
import role.RemoveRoleMutation
99
import spp.cli.Main
10-
import spp.cli.commands.PlatformCLI
11-
import spp.cli.commands.PlatformCLI.apolloClient
10+
import spp.cli.PlatformCLI
11+
import spp.cli.PlatformCLI.apolloClient
1212
import kotlin.system.exitProcess
1313

1414
class RemoveRole : CliktCommand(printHelpOnEmptyArgs = true) {

src/main/kotlin/spp/cli/commands/developer/Developer.kt

-7
This file was deleted.

src/main/kotlin/spp/cli/commands/developer/instrument/AddLiveBreakpoint.kt renamed to src/main/kotlin/spp/cli/commands/instrument/AddBreakpoint.kt

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package spp.cli.commands.developer.instrument
1+
package spp.cli.commands.instrument
22

33
import com.apollographql.apollo.api.ScalarTypeAdapters
44
import com.apollographql.apollo.api.internal.SimpleResponseWriter
@@ -15,16 +15,16 @@ import instrument.AddLiveBreakpointMutation
1515
import io.vertx.core.json.JsonObject
1616
import kotlinx.coroutines.runBlocking
1717
import spp.cli.Main
18-
import spp.cli.commands.PlatformCLI
19-
import spp.cli.commands.PlatformCLI.apolloClient
18+
import spp.cli.PlatformCLI
19+
import spp.cli.PlatformCLI.apolloClient
2020
import spp.cli.util.JsonCleaner.cleanJson
2121
import type.InstrumentThrottleInput
2222
import type.LiveBreakpointInput
2323
import type.LiveSourceLocationInput
2424
import type.ThrottleStep
2525
import kotlin.system.exitProcess
2626

27-
class AddLiveBreakpoint : CliktCommand() {
27+
class AddBreakpoint : CliktCommand() {
2828

2929
val source by argument(help = "Qualified class name")
3030
val line by argument(help = "Line number").int()

0 commit comments

Comments
 (0)