-
Notifications
You must be signed in to change notification settings - Fork 0
/
opendeps.yaml
55 lines (50 loc) · 1.8 KB
/
opendeps.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
opendeps: "0.1.0"
info:
title: Sample Petstore app
description: Declares the dependencies of an example Petstore app.
contact:
name: Pete Cornish
url: https://github.com/opendeps
email: opendeps@example.com
version: "1.0.1"
# the URL to this file
manifest: https://raw.githubusercontent.com/opendeps/specification/main/examples/petstore/opendeps.yaml
dependencies:
# We depend on version 2.0.0 of the order service.
# In development, we get an instant live mock of the service using its OpenAPI spec.
# At deployment time, we check it is available before deploying our app.
order_service:
summary: The order service.
description: The service allows ordering of pet supplies from the store.
# The OpenAPI specification for the order service.
spec: ./order_service_openapi.yaml
# This version must be deployed for our app to work.
version: "2.0.0"
# It's a required dependency at runtime.
required: true
# How to probe order service availability.
availability:
path: /healthz
security: basicAuth
# We also use the pet name service, but it is not essential,
# so it's not marked as 'required' here.
#
# We can still get a live mock of the service during development/testing,
# but if the service is not available at deployment time, just log a warning.
pet_name_service:
summary: The pet names service.
description: The service generates pet names.
# Our OpenAPI spec is relative to the OpenDeps file.
spec: ./pet_name_service_openapi.yaml
version: "1.0.0"
# This block controls how we probe to see if the service is up.
availability:
path: /healthz
intervalSeconds: 10
timeoutSeconds: 5
attempts: 3
components:
securityConfigs:
basicAuth:
type: authHeader
scheme: basic