Skip to content

Commit 835a189

Browse files
authored
Merge pull request #61 from mulesoft-anypoint/feature/private-space
Private Spaces
2 parents d2dc1cc + 637ad35 commit 835a189

File tree

3 files changed

+103
-52
lines changed

3 files changed

+103
-52
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,4 @@ node_modules
33
dist
44
**/.DS_STORE
55

6-
# windsurf rules
76
.windsurfrules

spec/private_space.yml

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ openapi: 3.0.0
22
info:
33
title: Private Space API
44
description: Description of the Private Space API
5-
version: 1.0.0
5+
version: 1.0.1
66
servers:
77
- url: https://anypoint.mulesoft.com/runtimefabric/api
88
description: Anypoint Cloudhub
@@ -266,7 +266,6 @@ components:
266266
empty:
267267
type: boolean
268268

269-
270269
PrivateSpace:
271270
title: PrivateSpace
272271
type: object
@@ -277,6 +276,9 @@ components:
277276
name:
278277
type: string
279278
description: The name of the private space.
279+
version:
280+
type: string
281+
description: The version of the private space.
280282
organizationId:
281283
type: string
282284
description: The ID of the organization in GUID format.
@@ -315,8 +317,23 @@ components:
315317
enableIAMRole:
316318
type: boolean
317319
description: If true, application deployed to this space will have the Private Space IAM role attached to the service account.
320+
enableEgress:
321+
type: boolean
322+
description: If true, egress is enabled for the private space.
323+
enableNetworkIsolation:
324+
type: boolean
325+
description: If true, network isolation is enabled for the private space.
318326
globalSpaceStatus:
319327
$ref: '#/components/schemas/GlobalSpaceStatus'
328+
muleAppDeploymentCount:
329+
type: integer
330+
description: The number of MuleSoft applications deployed to the private space.
331+
daysLeftForRelaxedQuota:
332+
type: integer
333+
description: The number of days left for the relaxed quota.
334+
vpcMigrationInProgress:
335+
type: boolean
336+
description: If true, a VPC migration is in progress for the private space.
320337

321338
PrivateSpacePostBody:
322339
title: PrivateSpacePostBody
@@ -359,6 +376,12 @@ components:
359376
enableIAMRole:
360377
type: boolean
361378
description: If true, application deployed to this space will have the Private Space IAM role attached to the service account.
379+
enableEgress:
380+
type: boolean
381+
description: If true, egress is enabled for the private space.
382+
enableNetworkIsolation:
383+
type: boolean
384+
description: If true, network isolation is enabled for the private space.
362385

363386
PrivateSpaceAssociatedEnvironments:
364387
type: object

spec/private_space_tlscontext.yml

Lines changed: 78 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ security:
1515
- bearerAuth: []
1616

1717
paths:
18-
/organizations/:orgId/privatespaces/:privateSpaceId/tlsContexts:
18+
/organizations/{orgId}/privatespaces/{privateSpaceId}/tlsContexts:
1919
parameters:
2020
- name: orgId
2121
in: path
@@ -66,7 +66,7 @@ paths:
6666
'200':
6767
$ref: '#/components/responses/SuccessGetTlsContexts'
6868

69-
/organizations/:orgId/privatespaces/:privateSpaceId/tlsContexts/{tlsContextId}:
69+
/organizations/{orgId}/privatespaces/{privateSpaceId}/tlsContexts/{tlsContextId}:
7070
parameters:
7171
- name: orgId
7272
in: path
@@ -145,6 +145,12 @@ paths:
145145

146146

147147
components:
148+
securitySchemes:
149+
bearerAuth:
150+
type: http
151+
scheme: bearer
152+
bearerFormat: JWT
153+
148154
responses:
149155
UnauthorizedError:
150156
description: Access token is missing or invalid
@@ -203,62 +209,82 @@ components:
203209
type: object
204210
properties:
205211
keyStore:
206-
type: object
207-
properties:
208-
source:
209-
type: string
210-
enum: [PEM, JKS]
211-
certificate:
212-
type: string
213-
key:
214-
type: string
215-
keyPassphrase:
216-
type: string
217-
keyFileName:
218-
type: string
219-
certificateFileName:
220-
type: string
221-
keystoreBase64:
222-
type: string
223-
storePassphrase:
224-
type: string
225-
alias:
226-
type: string
227-
keystoreFileName:
228-
type: string
229212
oneOf:
230-
- required:
231-
- source
232-
- certificate
233-
- key
234-
- keyPassphrase
235-
- keyFileName
236-
- certificateFileName
237-
- required:
238-
- source
239-
- keystoreBase64
240-
- keyPassphrase
241-
- storePassphrase
242-
- alias
243-
- keystoreFileName
213+
- $ref: '#/components/schemas/TlsContextPostBodyKeyStorePEM'
214+
- $ref: '#/components/schemas/TlsContextPostBodyKeyStoreJKS'
215+
trustStore:
216+
type: array
217+
items:
218+
type: object
219+
title: TlsContextPostBodyTrustStorePEM
220+
properties:
221+
source:
222+
type: string
223+
enum: [PEM]
224+
trustStorePEM:
225+
type: string
226+
244227
ciphers:
245228
$ref: '#/components/schemas/Ciphers'
246229

230+
TlsContextPostBodyKeyStorePEM:
231+
type: object
232+
title: TlsContextPostBodyKeyStorePEM
233+
properties:
234+
source:
235+
type: string
236+
enum: [PEM]
237+
default: PEM
238+
certificate:
239+
type: string
240+
key:
241+
type: string
242+
keyPassphrase:
243+
type: string
244+
keyFileName:
245+
type: string
246+
certificateFileName:
247+
type: string
248+
capath:
249+
type: string
250+
capathFileName:
251+
type: string
252+
required:
253+
- source
254+
- certificate
255+
- key
256+
- keyFileName
257+
- certificateFileName
247258

248-
TlsContext:
259+
TlsContextPostBodyKeyStoreJKS:
249260
type: object
261+
title: TlsContextPostBodyKeyStoreJKS
250262
properties:
251-
id:
263+
source:
252264
type: string
253-
name:
265+
enum: [JKS]
266+
default: JKS
267+
keystoreBase64:
268+
type: string
269+
keyPassphrase:
270+
type: string
271+
storePassphrase:
254272
type: string
255-
description:
273+
alias:
256274
type: string
257-
status:
275+
keystoreFileName:
258276
type: string
259-
createdAt:
277+
required:
278+
- source
279+
- keystoreBase64
280+
- storePassphrase
281+
282+
TlsContext:
283+
type: object
284+
properties:
285+
id:
260286
type: string
261-
updatedAt:
287+
name:
262288
type: string
263289
trustStore:
264290
$ref: '#/components/schemas/TrustStore'
@@ -269,7 +295,6 @@ components:
269295
type:
270296
type: string
271297

272-
273298
TrustStore:
274299
type: object
275300
properties:
@@ -344,8 +369,6 @@ components:
344369
KeyStore:
345370
type: object
346371
properties:
347-
fileName:
348-
type: string
349372
type:
350373
type: string
351374
cn:
@@ -354,6 +377,12 @@ components:
354377
type: array
355378
items:
356379
type: string
380+
fileName:
381+
type: string
382+
keyFileName:
383+
type: string
384+
capathFileName:
385+
type: string
357386
expirationDate:
358387
type: string
359388

0 commit comments

Comments
 (0)