Skip to content

Commit 49398ea

Browse files
committed
feat: refined workspaces API while implementing it
1 parent 8395a16 commit 49398ea

File tree

9 files changed

+495
-13
lines changed

9 files changed

+495
-13
lines changed

api-server-stubs-ktor/build.gradle.kts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ fabrikt {
3030
suspendModifier = enabled
3131
completionStage = enabled
3232
}
33+
typeOverrides {
34+
uuid = String
35+
}
3336
}
3437
generate("mavenConnector") {
3538
apiFile = rootProject.layout.projectDirectory.file("redocly/build/bundled/maven-connector-v1.yaml")
@@ -39,6 +42,10 @@ fabrikt {
3942
apiFile = rootProject.layout.projectDirectory.file("redocly/build/bundled/repository-v3.yaml")
4043
basePackage = "org.modelix.services.repository.stubs"
4144
}
45+
generate("workspaces") {
46+
apiFile = rootProject.layout.projectDirectory.file("redocly/build/bundled/workspaces-v1.yaml")
47+
basePackage = "org.modelix.services.workspaces.stubs"
48+
}
4249
}
4350

4451
tasks.withType<FabriktGenerateTask> {

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ subprojects {
3030
apply(plugin = "maven-publish")
3131

3232
repositories {
33-
mavenLocal()
3433
maven { url = uri("https://artifacts.itemis.cloud/repository/maven-mps/") }
3534
mavenCentral()
35+
mavenLocal()
3636
}
3737

3838
publishing {

client-ts/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ fun registerNpmPackageTasks(
4040
"npmRepository" to "https://artifacts.itemis.cloud/repository/npm-open/",
4141
"npmVersion" to project.version.toString(),
4242
"npmName" to "@modelix/$npmPackageName",
43+
"supportsES6" to "true",
4344
)
4445
gitUserId = "modelix"
4546
gitRepoId = "modelix.openapi"

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,6 @@
1717
},
1818
"dependencies": {
1919
"@stoplight/spectral-cli": "^6.14.2"
20-
}
20+
},
21+
"packageManager": "[email protected]+sha512.0486e394640d3c1fb3c9d43d49cf92879ff74f8516959c235308f5a8f62e2e19528a65cdc2a3058f587cde71eba3d5b56327c8c33a97e4c4051ca48a10ca2d5f"
2122
}

redocly/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
},
99
"scripts": {
1010
"bundle": "redocly bundle",
11-
"join": "redocly join build/bundled/**/*.yaml --output=build/joined.yaml"
11+
"join": "redocly join build/bundled/**/*.yaml --output=build/joined.yaml",
12+
"bundle-and-join": "$npm_execpath run bundle && $npm_execpath run join"
1213
}
1314
}

redocly/redocly.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,8 @@ apis:
1212
output: ./build/bundled/maven-connector-v1.yaml
1313
decorators:
1414
plugin/use-server-path: {}
15+
workspaces@v1:
16+
root: ../specifications/workspaces/v1/workspaces.yaml
17+
output: ./build/bundled/workspaces-v1.yaml
18+
decorators:
19+
plugin/use-server-path: {}

specifications/maven-connector/v1/maven.yaml

Lines changed: 71 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,17 @@ info:
33
title: "Modelix Maven Connector"
44
version: "1.0.0"
55
servers:
6-
- url: '/api/modelix/maven-connector'
6+
- url: '/modelix/maven-connector'
77
description: Makes artifacts from maven repositories available to other services
88
tags:
99
- name: MavenConnector
10+
- name: MavenRepositories
11+
- name: MavenArtifacts
1012
paths:
1113
/:
1214
get:
1315
operationId: getMavenConnectorConfig
14-
tags: [MavenConnector]
16+
tags: [MavenRepositories, MavenArtifacts]
1517
responses:
1618
"200":
1719
description: OK
@@ -22,6 +24,7 @@ paths:
2224
/repositories/:
2325
get:
2426
operationId: listMavenRepositories
27+
tags: [MavenRepositories]
2528
responses:
2629
"200":
2730
description: OK
@@ -32,7 +35,7 @@ paths:
3235
/repositories/{repositoryId}:
3336
get:
3437
operationId: getMavenRepository
35-
tags: [MavenConnector]
38+
tags: [MavenRepositories]
3639
parameters:
3740
- name: repositoryId
3841
in: path
@@ -48,7 +51,7 @@ paths:
4851
$ref: '#/components/schemas/MavenRepository'
4952
put:
5053
operationId: updateMavenRepository
51-
tags: [MavenConnector]
54+
tags: [MavenRepositories]
5255
parameters:
5356
- name: repositoryId
5457
in: path
@@ -65,7 +68,7 @@ paths:
6568
description: OK
6669
delete:
6770
operationId: deleteMavenRepository
68-
tags: [MavenConnector]
71+
tags: [MavenRepositories]
6972
parameters:
7073
- name: repositoryId
7174
in: path
@@ -78,14 +81,76 @@ paths:
7881
/artifacts/:
7982
get:
8083
operationId: listMavenArtifacts
81-
tags: [MavenConnector]
84+
tags: [MavenArtifacts]
8285
responses:
8386
"200":
8487
description: OK
8588
content:
8689
application/json:
8790
schema:
8891
$ref: '#/components/schemas/MavenArtifactList'
92+
/artifacts/{groupId}/{artifactId}:
93+
get:
94+
operationId: getMavenArtifact
95+
tags: [MavenArtifacts]
96+
parameters:
97+
- name: groupId
98+
in: path
99+
required: true
100+
schema:
101+
type: string
102+
- name: artifactId
103+
in: path
104+
required: true
105+
schema:
106+
type: string
107+
responses:
108+
"200":
109+
description: OK
110+
content:
111+
application/json:
112+
schema:
113+
$ref: '#/components/schemas/MavenArtifact'
114+
put:
115+
operationId: updateMavenArtifact
116+
tags: [MavenArtifacts]
117+
parameters:
118+
- name: groupId
119+
in: path
120+
required: true
121+
schema:
122+
type: string
123+
- name: artifactId
124+
in: path
125+
required: true
126+
schema:
127+
type: string
128+
requestBody:
129+
content:
130+
application/json:
131+
schema:
132+
$ref: '#/components/schemas/MavenArtifact'
133+
responses:
134+
"200":
135+
description: OK
136+
delete:
137+
operationId: deleteMavenArtifact
138+
tags: [MavenArtifacts]
139+
parameters:
140+
- name: groupId
141+
in: path
142+
required: true
143+
schema:
144+
type: string
145+
- name: artifactId
146+
in: path
147+
required: true
148+
schema:
149+
type: string
150+
responses:
151+
"200":
152+
description: OK
153+
89154
components:
90155
schemas:
91156
MavenConnectorConfig:
@@ -114,10 +179,8 @@ components:
114179
properties:
115180
id:
116181
type: string
117-
nullable: false
118182
url:
119183
type: string
120-
nullable: false
121184
MavenArtifactList:
122185
type: object
123186
required: [artifacts]

specifications/repository/v3/repository.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
openapi: "3.0.3"
22
info:
3-
title: "Modelix Workspaces"
3+
title: "Modelix Model Repository"
44
version: "3.0.0"
55
servers:
6-
- url: '/api/modelix/repository'
6+
- url: '/modelix/repository'
77
description: modelix-workspaces-manager
88
tags:
99
- name: Repository

0 commit comments

Comments
 (0)