@api3/airseeker v3.1.0
airseeker-v2
A service powering data feeds using the signed API.
The Airseeker is a rework of the original Airseeker. The Airseeker v2 is simplified and only works with signed APIs.
Getting started
pnpm install
- To install the dependencies.cp config/airseeker.example.json config/airseeker.json
- To create the configuration file.cp config/secrets.example.env config/secrets.env
- To create the secrets file.
Flowchart and specification
A render of the flowchart can be found below. To edit this document, use diagrams.net to
edit airseeker_v2_pipeline.drawio
, preferably by cloning the repository and loading the file locally.
Link to the Airseeker specification.
Configuration
See configuration for details.
Versioning and release
Airseeker uses semantic versioning. The version is specified in the package.json
file. The
package is not published to NPM, but instead dockerized and published to Docker Hub.
To release a new version:
pnpm create-release:npm [major|minor|patch]
- Choose the right version bump. This will bump the version, create a git tag and commit it.pnpm publish --access public
- Publish the package to NPM.git push --follow-tags
- Push the tagged commit upstream.- Create a GitHub release for the specific tag.
pnpm run create-release:docker
- To build the Docker image and tag it correctly. The script uses the current package.json version so it expects the NPM release is done first.- The command outputs the publish instructions to push the images.
Docker
Build
The docker image can be built by running the following commands from the root directory:
pnpm run docker:build
Run
The docker image can be run locally with:
pnpm run docker:run