From 55f6318dcd43e2294140a66cda8121b1a64a8783 Mon Sep 17 00:00:00 2001 From: Joe Nelson Date: Wed, 7 Jan 2015 22:34:17 -0800 Subject: [PATCH] Deploy button and thanks --- README.md | 13 +++++++++++-- app.json | 45 +++++++++++++++++++++++++++++++++++++++++++++ static/heroku.png | Bin 0 -> 3019 bytes 3 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 app.json create mode 100644 static/heroku.png diff --git a/README.md b/README.md index 9986e3b0a..efcf72e2b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,9 @@ ![Logo](static/logo.png "Logo") [![Build Status](https://circleci.com/gh/begriffs/postgrest.png?circle-token=f723c01686abf0364de1e2eaae5aff1f68bd3ff2)](https://circleci.com/gh/begriffs/postgrest/tree/master) + + Deploy + PostgREST serves a fully RESTful API from any existing PostgreSQL database. It provides a cleaner, more standards-compliant, faster @@ -148,5 +151,11 @@ and the [guide to routing](https://github.com/begriffs/postgrest/wiki/Routing). ### Thanks -Thanks to [Adam Baker](https://github.com/adambaker) for code -contributions and many fundamental design discussions. +* [Adam Baker](https://github.com/adambaker) for code + contributions and many fundamental design discussions +* [Miƫtek Bak](https://github.com/mietek) for creating the Heroku + deployment packaging and [Halcyon](https://halcyon.sh/) infrastructure +* [Nikita Volkov](https://github.com/nikita-volkov) for writing the + wonderful [Hasql](https://github.com/nikita-volkov/hasql) library + and helping me use it +* [Mikey Casalaina](https://github.com/casalaina) for the cool logo diff --git a/app.json b/app.json new file mode 100644 index 000000000..2e759ba5f --- /dev/null +++ b/app.json @@ -0,0 +1,45 @@ +{ + "name": "PostgREST", + "description": "RESTful API for any PostgreSQL database.", + "logo": "https://halcyon.sh/logo.svg", + "repository": "https://github.com/begriffs/postgrest", + "env": { + "BUILDPACK_URL": { + "description": "Heroku buildpack for deploying Haskell applications", + "value": "https://github.com/mietek/haskell-on-heroku" + }, + "DB_NAME": { + "description": "Database name" + }, + "DB_AUTH_ROLE": { + "description": "Database role to use checking client authentication" + }, + "DB_AUTH_PASS": { + "description": "Authentication password", + "required": false + }, + "DB_ANON_ROLE": { + "description": "Database role for non-authenticated requests" + }, + "DB_HOST": { + "description": "Database server hostname", + "required": false, + "value": "localhost" + }, + "DB_PORT": { + "description": "Database server port", + "required": false, + "value": "5432" + }, + "DB_POOL_SIZE": { + "description": "Maximum number of connections in database pool", + "required": false, + "value": "10" + }, + "DB_SECURE": { + "description": "Redirect all requests to HTTPS", + "required": false, + "value": "1" + } + } +} diff --git a/static/heroku.png b/static/heroku.png new file mode 100644 index 0000000000000000000000000000000000000000..dc866e6e61ea65d49f99877a154db2e5e54f52e8 GIT binary patch literal 3019 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 tl+3hBkOmW7LnB>7%Mb%|D