@devkong/cli-nx 0.0.19 → 0.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/package.json +2 -2
  2. package/README.md +0 -11
  3. package/generators.json +0 -10
  4. package/src/generators/preset/files/kotlin/.dockerignore +0 -6
  5. package/src/generators/preset/files/kotlin/.editorconfig +0 -24
  6. package/src/generators/preset/files/kotlin/.vscode/extensions.json +0 -18
  7. package/src/generators/preset/files/kotlin/.vscode/launch.json +0 -16
  8. package/src/generators/preset/files/kotlin/.vscode/settings.json +0 -7
  9. package/src/generators/preset/files/kotlin/.vscode/tasks.json +0 -81
  10. package/src/generators/preset/files/kotlin/Dockerfile +0 -22
  11. package/src/generators/preset/files/kotlin/README.md +0 -77
  12. package/src/generators/preset/files/kotlin/build.gradle.kts.template +0 -64
  13. package/src/generators/preset/files/kotlin/extension.http +0 -83
  14. package/src/generators/preset/files/kotlin/gradle/wrapper/gradle-wrapper.jar +0 -0
  15. package/src/generators/preset/files/kotlin/gradle/wrapper/gradle-wrapper.properties +0 -6
  16. package/src/generators/preset/files/kotlin/gradle.properties +0 -19
  17. package/src/generators/preset/files/kotlin/gradlew +0 -245
  18. package/src/generators/preset/files/kotlin/gradlew.bat +0 -92
  19. package/src/generators/preset/files/kotlin/kong.json +0 -7
  20. package/src/generators/preset/files/kotlin/nx.json +0 -14
  21. package/src/generators/preset/files/kotlin/package-lock.json +0 -1577
  22. package/src/generators/preset/files/kotlin/package.json +0 -15
  23. package/src/generators/preset/files/kotlin/project.json.template +0 -50
  24. package/src/generators/preset/files/kotlin/settings.gradle.kts +0 -14
  25. package/src/generators/preset/files/kotlin/src/main/kotlin/io/kong/extension/Main.kt +0 -43
  26. package/src/generators/preset/files/kotlin/src/main/resources/META-INF/resources/index.html +0 -362
  27. package/src/generators/preset/files/kotlin/src/main/resources/application.properties.template +0 -13
  28. package/src/generators/preset/files/kotlin/src/native-test/kotlin/io/kong/extension/.gitkeep +0 -0
  29. package/src/generators/preset/files/kotlin/src/test/kotlin/io/kong/extension/.gitkeep +0 -0
  30. package/src/generators/preset/files/python/.dockerignore +0 -5
  31. package/src/generators/preset/files/python/.editorconfig +0 -16
  32. package/src/generators/preset/files/python/.gitattributes +0 -25
  33. package/src/generators/preset/files/python/.gitignore.template +0 -69
  34. package/src/generators/preset/files/python/.idea/inspectionProfiles/Project_Default.xml +0 -7
  35. package/src/generators/preset/files/python/.idea/inspectionProfiles/profiles_settings.xml +0 -6
  36. package/src/generators/preset/files/python/.idea/kong-cli-python-template.iml +0 -10
  37. package/src/generators/preset/files/python/.pylintrc +0 -547
  38. package/src/generators/preset/files/python/.vscode/extensions.json +0 -14
  39. package/src/generators/preset/files/python/.vscode/launch.json +0 -18
  40. package/src/generators/preset/files/python/.vscode/settings.json +0 -62
  41. package/src/generators/preset/files/python/Dockerfile +0 -13
  42. package/src/generators/preset/files/python/README.md +0 -115
  43. package/src/generators/preset/files/python/kong.json +0 -7
  44. package/src/generators/preset/files/python/project.json.template +0 -8
  45. package/src/generators/preset/files/python/pyproject.toml +0 -3
  46. package/src/generators/preset/files/python/requirements-dev.txt +0 -10
  47. package/src/generators/preset/files/python/requirements.txt +0 -3
  48. package/src/generators/preset/files/python/src/__init__.py +0 -0
  49. package/src/generators/preset/files/python/src/main.py +0 -67
  50. package/src/generators/preset/files/python/src/main_test.py +0 -18
  51. package/src/generators/preset/schema.d.ts +0 -5
  52. package/src/generators/preset/schema.json +0 -27
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@devkong/cli-nx",
3
- "version": "0.0.19",
3
+ "version": "0.0.21",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "typings": "./src/index.d.ts",
7
7
  "generators": "./generators.json",
8
- "types": "./src/index.d.ts"
8
+ "types": "./../kong-sdk-python/packages/kong-cli-nx/src/index.d.ts"
9
9
  }
package/README.md DELETED
@@ -1,11 +0,0 @@
1
- # kong-cli-nx
2
-
3
- This library was generated with [Nx](https://nx.dev).
4
-
5
- ## Building
6
-
7
- Run `nx build kong-cli-nx` to build the library.
8
-
9
- ## Running unit tests
10
-
11
- Run `nx test kong-cli-nx` to execute the unit tests via [Jest](https://jestjs.io).
package/generators.json DELETED
@@ -1,10 +0,0 @@
1
- {
2
- "generators": {
3
- "preset": {
4
- "factory": "./src/generators/preset/generator",
5
- "schema": "./src/generators/preset/schema.json",
6
- "description": "preset generator",
7
- "x-use-standalone-layout": true
8
- }
9
- }
10
- }
@@ -1,6 +0,0 @@
1
- node_modules
2
- .nx
3
- .idea
4
- .vscode
5
- .kotlin
6
- build
@@ -1,24 +0,0 @@
1
- # Editor configuration, see http://editorconfig.org
2
- root = true
3
-
4
- [*]
5
- indent_size = 2
6
- end_of_line = lf
7
- insert_final_newline = true
8
- trim_trailing_whitespace = true
9
-
10
- [*.{kt,kts}]
11
- ktlint_code_style = ktlint_official
12
- ktlint_ignore_back_ticked_identifier = true
13
- ktlint_standard = enabled
14
- indent_style = space
15
- max_line_length = 100
16
- # Don't allow any wildcard imports
17
- ij_kotlin_packages_to_use_import_on_demand = unset
18
- # Prevent wildcard imports
19
- ij_kotlin_name_count_to_use_star_import = 99
20
- ij_kotlin_name_count_to_use_star_import_for_members = 99
21
-
22
- [*.md]
23
- max_line_length = off
24
- trim_trailing_whitespace = false
@@ -1,18 +0,0 @@
1
- {
2
- "recommendations": [
3
- "nrwl.angular-console",
4
- "esbenp.prettier-vscode",
5
- "mathiasfrohlich.kotlin",
6
- "nrwl.angular-console",
7
- "redhat.java",
8
- "redhat.vscode-microprofile",
9
- "redhat.vscode-quarkus",
10
- "redhat.vscode-redhat-account",
11
- "stylelint.vscode-stylelint",
12
- "vscjava.vscode-java-debug",
13
- "vscjava.vscode-java-dependency",
14
- "vscjava.vscode-java-pack",
15
- "vscjava.vscode-java-test",
16
- "vscjava.vscode-maven"
17
- ]
18
- }
@@ -1,16 +0,0 @@
1
- {
2
- // Use IntelliSense to learn about possible attributes.
3
- // Hover to view descriptions of existing attributes.
4
- // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5
- "version": "0.2.0",
6
- "configurations": [
7
- {
8
- "preLaunchTask": "quarkusDev",
9
- "type": "java",
10
- "request": "attach",
11
- "hostName": "localhost",
12
- "name": "Debug Quarkus application",
13
- "port": 5005
14
- }
15
- ]
16
- }
@@ -1,7 +0,0 @@
1
- {
2
- "java.compile.nullAnalysis.mode": "automatic",
3
- "java.configuration.runtimes": [
4
-
5
- ],
6
- "java.configuration.updateBuildConfiguration": "interactive"
7
- }
@@ -1,81 +0,0 @@
1
- // See https://go.microsoft.com/fwlink/?LinkId=733558
2
- // for the documentation about the tasks.json format
3
- {
4
- "version": "2.0.0",
5
- "tasks": [
6
- {
7
- "type": "shell",
8
- "isBackground": true,
9
- "problemMatcher": [
10
- {
11
- "owner": "quarkus",
12
- "fileLocation": [
13
- "relative",
14
- "${workspaceFolder}/src/main/resources/templates"
15
- ],
16
- "pattern": [
17
- {
18
- "regexp": "\\[(\\d+)\\]\\s(.*):(\\d+):(\\d+)\\s\\-\\s{(.*)}:\\s(.*)$",
19
- "file": 2,
20
- "line": 3,
21
- "column": 4,
22
- "message": 6
23
- }
24
- ],
25
- "background": {
26
- "activeOnStart": true,
27
- "beginsPattern": "^.*Task: ",
28
- "endsPattern": "(^.*Quarkus .* started in .*\\.)|(^.* ERROR .* Failed to start)"
29
- }
30
- }
31
- ],
32
- "group": "build",
33
- "label": "quarkusDev",
34
- "command": "./gradlew quarkusDev --console=plain",
35
- "windows": {
36
- "command": ".\\gradlew.bat quarkusDev --console=plain"
37
- }
38
- },
39
- {
40
- "type": "shell",
41
- "isBackground": true,
42
- "problemMatcher": [
43
- {
44
- "owner": "quarkus",
45
- "fileLocation": [
46
- "relative",
47
- "${workspaceFolder}/src/main/resources/templates"
48
- ],
49
- "pattern": [
50
- {
51
- "regexp": "\\[(\\d+)\\]\\s(.*):(\\d+):(\\d+)\\s\\-\\s{(.*)}:\\s(.*)$",
52
- "file": 2,
53
- "line": 3,
54
- "column": 4,
55
- "message": 6
56
- }
57
- ],
58
- "background": {
59
- "activeOnStart": true
60
- }
61
- }
62
- ],
63
- "group": "build",
64
- "label": "buildNative",
65
- "command": "./gradlew buildNative --console=plain",
66
- "windows": {
67
- "command": ".\\gradlew.bat buildNative --console=plain"
68
- }
69
- },
70
- {
71
- "label": "build",
72
- "type": "shell",
73
- "command": "./gradlew build -x test",
74
- "problemMatcher": [],
75
- "group": {
76
- "kind": "build",
77
- "isDefault": true
78
- }
79
- }
80
- ]
81
- }
@@ -1,22 +0,0 @@
1
- ## Stage 1: Build native extension image
2
- FROM quay.io/quarkus/ubi-quarkus-mandrel-builder-image:jdk-21 AS build
3
- USER root
4
- RUN microdnf install findutils
5
- COPY --chown=quarkus:quarkus gradlew /code/gradlew
6
- COPY --chown=quarkus:quarkus gradle /code/gradle
7
- COPY --chown=quarkus:quarkus build.gradle.kts /code/
8
- COPY --chown=quarkus:quarkus settings.gradle.kts /code/
9
- COPY --chown=quarkus:quarkus gradle.properties /code/
10
- COPY --chown=quarkus:quarkus .editorconfig /code/
11
- USER quarkus
12
- WORKDIR /code
13
- COPY src /code/src
14
- RUN ./gradlew build -Dquarkus.package.main-class=io.kong.sdkkotlin.JsonSchemaGeneratingQuarkusApp -Dquarkus.native.enabled=true -Dquarkus.profile=prod -Dquarkus.package.jar.enabled=false
15
-
16
- ## Stage 2 : create the docker final image
17
- FROM quay.io/quarkus/quarkus-micro-image:2.0
18
- WORKDIR /work/
19
- COPY --from=build /code/build/*-runner /work/application
20
- RUN chmod 775 /work
21
- EXPOSE 8080
22
- CMD ["./application", "-Dquarkus.http.host=0.0.0.0"]
@@ -1,77 +0,0 @@
1
- # Kong Extension
2
-
3
- Welcome to the Kong extension development workspace!
4
-
5
- ### Prerequisites
6
-
7
- Before you start, make sure you have the following installed:
8
-
9
- - [Node.js](https://nodejs.org/en/download/prebuilt-installer). Version >= 20.0
10
- - [Docker](https://docs.docker.com/desktop/). If using Docker Desktop, start it
11
- - Mac M2 users, see [Troubleshooting](#Troubleshooting)
12
-
13
- To verify the installation and check the versions, run the following commands:
14
-
15
- ```shell script
16
- node --version
17
- docker info
18
- ```
19
-
20
- ### Getting Started
21
-
22
- 1. Add your username to the `ownership` field in the `kong.json` file (e.g., "kong-dev", "kong-qa")
23
- 2. Make sure you're in the terminal and inside the extension folder you generated
24
- 3. Run the following commands in your terminal:
25
-
26
- ```shell script
27
- # configure the base Kong URL (e.g., https://kong.dev.app-dts.net)
28
- kong configure
29
- ```
30
-
31
- That's it! Now, modify [main.kt](./src/main/kotlin/io/kong/extension/Main.kt), tag it by publishing a new version, and assign aliases for use in the workflow.
32
-
33
- ### Publish a New Version
34
-
35
- To automatically tag your code with an incremented version number (e.g., 1, 2, 3), run:
36
-
37
- ```shell script
38
- kong publish-version --verbose
39
- ```
40
-
41
- ### List Available Versions
42
-
43
- To see all available versions of your extension, run:
44
-
45
- ```shell script
46
- kong list-versions
47
- ```
48
-
49
- ### Assign an Alias to a Version
50
-
51
- You can assign an alias (e.g., stable, beta) to a specific version. This alias will appear in the UI as a separate step in the workflow. For example, to assign the alias stable to version 1, use:
52
-
53
- ```shell script
54
- kong set-alias stable 1
55
- ```
56
-
57
- ### Using a Custom Profile
58
-
59
- If you're developing an extension that will be used in different regions (or need to work with a specific profile), you can create a new profile using `kong configure`. Then, include the `--profile <name>` parameter when running the publish-version and set-alias commands to use the desired profile.
60
-
61
- ### Update CLI
62
-
63
- To install the latest version of the CLI, run:
64
-
65
- ```shell script
66
- npm i -g @devkong/cli@latest
67
- ```
68
-
69
- ### Troubleshooting
70
-
71
- #### Mac M2 Users
72
-
73
- To emulate a Linux platform, you need to install Rosetta:
74
-
75
- ```shell script
76
- softwareupdate --install-rosetta
77
- ```
@@ -1,64 +0,0 @@
1
- val javaVersion: String by project
2
- val quarkusVersion: String by project
3
-
4
- plugins {
5
- kotlin("jvm")
6
- kotlin("plugin.allopen")
7
- id("io.quarkus")
8
- id("org.jlleitschuh.gradle.ktlint")
9
- }
10
-
11
- repositories {
12
- mavenCentral()
13
- mavenLocal()
14
- maven {
15
- url = uri("https://nexus.shared.app-dts.net/repository/maven-releases/")
16
- }
17
- maven {
18
- url = uri("https://nexus.shared.app-dts.net/repository/maven-snapshots/")
19
- }
20
- }
21
-
22
- dependencies {
23
- implementation("io.kong:kong-common:0.0.1-SNAPSHOT")
24
- implementation("io.kong:kong-sdk-kotlin:0.0.15-SNAPSHOT")
25
-
26
- implementation(enforcedPlatform("io.quarkus.platform:quarkus-bom:$quarkusVersion"))
27
- implementation("io.quarkus:quarkus-arc")
28
- implementation("io.quarkus:quarkus-jackson")
29
- implementation("io.quarkus:quarkus-kotlin")
30
- implementation("io.quarkus:quarkus-micrometer-registry-prometheus")
31
- implementation("io.quarkus:quarkus-opentelemetry")
32
- implementation("io.quarkus:quarkus-smallrye-health")
33
-
34
- testImplementation("io.quarkus:quarkus-junit5")
35
- }
36
-
37
- group = "io.kong"
38
- version = "0.0.1-SNAPSHOT"
39
-
40
- java {
41
- sourceCompatibility = JavaVersion.toVersion(javaVersion)
42
- targetCompatibility = JavaVersion.toVersion(javaVersion)
43
- }
44
-
45
- tasks.withType<Test> {
46
- systemProperty("java.util.logging.manager", "org.jboss.logmanager.LogManager")
47
- }
48
-
49
- allOpen {
50
- annotation("jakarta.ws.rs.Path")
51
- annotation("jakarta.enterprise.context.ApplicationScoped")
52
- annotation("jakarta.persistence.Entity")
53
- annotation("io.quarkus.test.junit.QuarkusTest")
54
- }
55
-
56
- kotlin {
57
- compilerOptions {
58
- jvmTarget.set(
59
- org.jetbrains.kotlin.gradle.dsl.JvmTarget
60
- .valueOf("JVM_$javaVersion"),
61
- )
62
- javaParameters.set(true)
63
- }
64
- }
@@ -1,83 +0,0 @@
1
- ### Healthcheck
2
- GET http://localhost:8241/q/health
3
-
4
- ### Schema
5
- GET http://localhost:8241/v1/schema
6
-
7
- ### HTTP call template (please keep it up to date)
8
- POST http://localhost:8241/v1/handle
9
- Content-Type: application/cloudevents+json
10
-
11
- {
12
- "id": "6056346e-af43-49aa-b794-977aa716ddc7",
13
- "time": "2024-04-25T11:30:50.517Z",
14
- "type": "kong-function-call",
15
- "source": "/kong/web",
16
- "specversion": "1.0",
17
- "datacontenttype": "application/json",
18
- "data": {
19
- "session": {
20
- "agent": "JOB",
21
- "id": 1,
22
- "businessKey": "ABC123",
23
- "deadline": "2024-12-31T23:59:59Z",
24
- "created": "2024-01-01T12:00:00Z",
25
- "source": "http://example.com/source",
26
- "namespace": "example-namespace",
27
- "topic": "example-topic",
28
- "priority": "HIGH",
29
- "partition": 5,
30
- "executionMode": "ASYNC"
31
- },
32
- "input": {
33
- "name": "Person",
34
- "age": 10,
35
- "gender": "MALE",
36
- "hobbies": ["football"],
37
- "address": {
38
- "street": "testStreet",
39
- "city": "testCity",
40
- "postalCode": "testCode"
41
- }
42
- },
43
- "output": {
44
- "ack": {
45
- "producer": {
46
- "id": "PROCESS_EVENT_ID_001",
47
- "type": "KongProcessEvent"
48
- },
49
- "seqNum": 42
50
- },
51
- "type": "kong-process-events",
52
- "filter": ".output",
53
- "returns": []
54
- },
55
- "invoke": {
56
- "prefix": "34370f477a4a48a8",
57
- "retry": {
58
- "maxAttempts": 1,
59
- "attemptDelay": "PT5S",
60
- "attemptTimeout": "PT30S"
61
- },
62
- "circuitBreaker": {
63
- "enabled": true,
64
- "delay": "PT5S",
65
- "requestVolumeThreshold": 20,
66
- "failureRatio": 0.5,
67
- "successThreshold": 1
68
- },
69
- "cache": {
70
- "enabled": false,
71
- "key": ".",
72
- "ttl": "P7D",
73
- "onFailure": "SKIP"
74
- },
75
- "rateLimiter": {
76
- "enabled": true,
77
- "value": 100,
78
- "window": "PT1S",
79
- "minSpacing": "PT0S"
80
- }
81
- }
82
- }
83
- }
@@ -1,6 +0,0 @@
1
- distributionBase=GRADLE_USER_HOME
2
- distributionPath=wrapper/dists
3
- distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip
4
- networkTimeout=10000
5
- zipStoreBase=GRADLE_USER_HOME
6
- zipStorePath=wrapper/dists
@@ -1,19 +0,0 @@
1
- # Gradle properties
2
- org.gradle.jvmargs=-Xms4g -Xmx4g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
3
- kotlin.code.style=official
4
- javaVersion=21
5
-
6
- # https://mvnrepository.com/artifact/org.jlleitschuh.gradle/ktlint-gradle
7
- jlleitschuhGradlePluginVersion=12.1.1
8
-
9
- # https://mvnrepository.com/artifact/io.github.khalilou88.jnxplus/jnxplus-gradle-plugin
10
- jnxplusGradlePluginVersion=0.4.0
11
-
12
- #https://mvnrepository.com/artifact/com.networknt/json-schema-validator
13
- jsonSchemaValidatorVersion=1.5.3
14
-
15
- # https://mvnrepository.com/artifact/org.jetbrains.kotlin/kotlin-stdlib
16
- kotlinVersion=2.0.21
17
-
18
- # https://mvnrepository.com/artifact/io.quarkus/quarkus-core
19
- quarkusVersion=3.15.1