vetscan-fuse-vetxml-simulator v2.1.2
vetscan-fuse-vetxml-simulator
API simulator for Fuse VetXML
Docker Setup
- Copy .env.example to .env
- Create the external network if it doesn't exist
docker network create vetscan-cloud-network - Run
docker-compose up
Manual Setup
Install dependencies
npm installRun locally:
npm run devDatabase
This app depends on postgres. For development, a docker configuration has been provided.
Migrations
We use the knex module for migrations. Once you start the application, the migrations run automatically.
In case you would like to run the migrations manually:
npm knex migrate:latestto run migrations
npx knex migrate:downto rollback one migration. And
npx knex migrate:make migration_nameto create a new migration. You can see more in the module's documentation.
Development workflow
See the Vetscan Cloud (git workflow)https://github.com/ZoetisDenmark/vetscan-cloud#git-workflow.
Database for development locally
To create the database (this will run a docker container with postgres and the database structure based on the db.sql script):
npm run create-dbTo start the database once it is created just run:
npm run start-dbTo stop the database once it is created just run:
npm run stop-dbTo delete the database once it is created just run:
npm run delete-dbAPI Documentation
To update the API documentation, modify the apidocs/api.yaml file following the OpenAPI Specification version 3.0.2.
To visualize the API Documentation run the serve-docs script or use any OpenAPI 3 compatible tool, for example Swagger editor.
npm run serve-docsTo generate a static HTML file of the documentation:
npm run bundle-docsAPI Development Environment
To integrate the API specification with Postman or a similar environment, it must support OpenAPI 3.0.0. Postman allows to import the specification file apidocs/api.yaml.
Running
Compile the code and run in one command:
npm startThis command runs both npx tsc (to compile the code) and node dist/index.js (to run).
Deployment
The service is running as an App Service on azure on the mhe@smb.dk account, the name of the app service instance is vetxmlapi.
The app gets deployed automatically from the develop branch and it's accessible at https://vetxmlapi.azurewebsites.net
In azure you can access logs, restart and stop the app.
3 years ago