api-integrations
v0.1.0
Published
Repository for API integration related operations.
Downloads
3
Readme
api-integrations
Repository for managing API integrations.
Frontend
See frontend
's README.
Deployment management
Generating a airnode-feed
deployment
- Run the script.
pnpm generate-airnode-feed-deployment
- Select the API.
$ ts-node src/config-generation/airnode-feed/generate-deployment.ts
? Select an API to create deployment: › - Use arrow-keys. Return to submit.
❯ api-1
api-2
some-api
...
- Deployment will be created under
./data/apis/<api-name>/deployments/candidate-deployments
.
Managing deployments
- Deployment folder for the each API has the below structure:
.
├── active-deployments
└── candidate-deployments
└── api3-20231101-airnode-feed.json
- Deployments names are created in this format:
api3-YYYYMMDD-airnode-feed.json
and there should be only one or no deployments undercandidate-deployments
. - Once a
candidate-deployment
is deployed by the API provider, deployment under thecandidate-deployment
will be manually moved underactive-deployments
.active-deployments
will be confirmed with CI scripts. If there is no heartbeat from the deployment, CI won't allow pushing changes to the repository. - Deployments will identified by
airnode-feed
configuration file's hash.
Heartbeat
Airnode feed minutely log the below string and the string will be parsed and returned through an API for this repository to check deployments.
${airnodeAddress} - ${stage} - ${airnodeFeedVersion} - ${currentTimestamp} - ${deploymentTimestamp} - ${airnodeFeedConfigHash} - ${heartbeatSignature}
Through the airnodeFeedConfigHash
it will be possible to check if the correct deployment is deployed.