diff options
author | Loïc Bartoletti <lbartoletti@FreeBSD.org> | 2021-07-05 13:00:31 +0000 |
---|---|---|
committer | Loïc Bartoletti <lbartoletti@FreeBSD.org> | 2021-07-05 13:00:31 +0000 |
commit | 0cc2abb2de08eabc14d69611f0613c16f0c39a9a (patch) | |
tree | 659a016f3e05bf863eede70a972b59801a650cf9 | |
parent | feb5a1f6a6b682ff2ec9f67c592931fbaf347282 (diff) | |
download | ports-0cc2abb2de08eabc14d69611f0613c16f0c39a9a.tar.gz ports-0cc2abb2de08eabc14d69611f0613c16f0c39a9a.zip |
databases/pg_tilserv: add new port
pg_tileserv is a PostGIS-only tile server written in Go.
By restricting itself to only using PostGIS as a data source,
pg_tileserv gains the following features:
- Automatic configuration. The server can discover and
automatically publish as tiles sources all tables it has read
access to: just point it at a PostgreSQL/PostGIS database.
- Full SQL flexibility. Using function layers, the server can
run any SQL to generate tile outputs. Any data processing,
feature filtering, or record aggregation that can be expressed in SQL,
can be exposed as parameterized tile sources.
- Database security model. You can restrict access to tables and
functions using standard database access control.
This means you can also use advanced access control techniques,
like row-level security to dynamically filter access based on the
login role.
WWW: https://github.com/crunchydata/pg_tileserv/issues
-rw-r--r-- | databases/Makefile | 1 | ||||
-rw-r--r-- | databases/pg_tileserv/Makefile | 63 | ||||
-rw-r--r-- | databases/pg_tileserv/distinfo | 91 | ||||
-rw-r--r-- | databases/pg_tileserv/pkg-descr | 18 |
4 files changed, 173 insertions, 0 deletions
diff --git a/databases/Makefile b/databases/Makefile index a7d6db47bb01..5ab31e8e7d1b 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -576,6 +576,7 @@ SUBDIR += pg_repack SUBDIR += pg_similarity SUBDIR += pg_stat_kcache + SUBDIR += pg_tileserv SUBDIR += pgaccess SUBDIR += pgadmin3 SUBDIR += pgbackrest diff --git a/databases/pg_tileserv/Makefile b/databases/pg_tileserv/Makefile new file mode 100644 index 000000000000..56b928d1641e --- /dev/null +++ b/databases/pg_tileserv/Makefile @@ -0,0 +1,63 @@ +PORTNAME= pg_tileserv +DISTVERSIONPREFIX= v +DISTVERSION= 1.0.8 +CATEGORIES= databases + +MAINTAINER= lbartoletti@FreeBSD.org +COMMENT= PostGIS-only tile server written in Go + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE.md + +USES= go:modules +USE_GITHUB= yes +GH_ACCOUNT= CrunchyData +GH_TUPLE= \ + Masterminds:goutils:v1.1.0:masterminds_goutils/vendor/github.com/Masterminds/goutils \ + Masterminds:semver:v3.1.0:masterminds_semver_v3/vendor/github.com/Masterminds/semver/v3 \ + Masterminds:sprig:v3.1.0:masterminds_sprig_v3/vendor/github.com/Masterminds/sprig/v3 \ + davecgh:go-spew:v1.1.1:davecgh_go_spew/vendor/github.com/davecgh/go-spew \ + felixge:httpsnoop:v1.0.1:felixge_httpsnoop/vendor/github.com/felixge/httpsnoop \ + fsnotify:fsnotify:v1.4.7:fsnotify_fsnotify/vendor/github.com/fsnotify/fsnotify \ + go-ini:ini:v1.51.0:go_ini_ini/vendor/gopkg.in/ini.v1 \ + go-yaml:yaml:9f266ea9e77c:go_yaml_yaml_1/vendor/gopkg.in/yaml.v3 \ + go-yaml:yaml:v2.2.4:go_yaml_yaml/vendor/gopkg.in/yaml.v2 \ + golang:crypto:75b288015ac9:golang_crypto/vendor/golang.org/x/crypto \ + golang:sys:d5e6a3e2c0ae:golang_sys/vendor/golang.org/x/sys \ + golang:text:v0.3.3:golang_text/vendor/golang.org/x/text \ + golang:xerrors:9bdfabe68543:golang_xerrors/vendor/golang.org/x/xerrors \ + google:uuid:v1.1.1:google_uuid/vendor/github.com/google/uuid \ + gorilla:handlers:v1.5.1:gorilla_handlers/vendor/github.com/gorilla/handlers \ + gorilla:mux:v1.8.0:gorilla_mux/vendor/github.com/gorilla/mux \ + hashicorp:hcl:v1.0.0:hashicorp_hcl/vendor/github.com/hashicorp/hcl \ + huandu:xstrings:v1.3.1:huandu_xstrings/vendor/github.com/huandu/xstrings \ + imdario:mergo:v0.3.8:imdario_mergo/vendor/github.com/imdario/mergo \ + jackc:chunkreader:v2.0.1:jackc_chunkreader_v2/vendor/github.com/jackc/chunkreader/v2 \ + jackc:pgconn:v1.7.2:jackc_pgconn/vendor/github.com/jackc/pgconn \ + jackc:pgio:v1.0.0:jackc_pgio/vendor/github.com/jackc/pgio \ + jackc:pgpassfile:v1.0.0:jackc_pgpassfile/vendor/github.com/jackc/pgpassfile \ + jackc:pgproto3:v2.0.6:jackc_pgproto3_v2/vendor/github.com/jackc/pgproto3/v2 \ + jackc:pgservicefile:2b9c44734f2b:jackc_pgservicefile/vendor/github.com/jackc/pgservicefile \ + jackc:pgtype:v1.6.1:jackc_pgtype/vendor/github.com/jackc/pgtype \ + jackc:pgx:v4.9.2:jackc_pgx_v4/vendor/github.com/jackc/pgx/v4 \ + jackc:puddle:v1.1.2:jackc_puddle/vendor/github.com/jackc/puddle \ + magiconair:properties:v1.8.1:magiconair_properties/vendor/github.com/magiconair/properties \ + mitchellh:copystructure:v1.0.0:mitchellh_copystructure/vendor/github.com/mitchellh/copystructure \ + mitchellh:mapstructure:v1.1.2:mitchellh_mapstructure/vendor/github.com/mitchellh/mapstructure \ + mitchellh:reflectwalk:v1.0.0:mitchellh_reflectwalk/vendor/github.com/mitchellh/reflectwalk \ + pborman:getopt:v2.1.0:pborman_getopt_v2/vendor/github.com/pborman/getopt \ + pelletier:go-toml:v1.2.0:pelletier_go_toml/vendor/github.com/pelletier/go-toml \ + pmezard:go-difflib:v1.0.0:pmezard_go_difflib/vendor/github.com/pmezard/go-difflib \ + sirupsen:logrus:v1.7.0:sirupsen_logrus/vendor/github.com/sirupsen/logrus \ + spf13:afero:v1.1.2:spf13_afero/vendor/github.com/spf13/afero \ + spf13:cast:v1.3.1:spf13_cast/vendor/github.com/spf13/cast \ + spf13:jwalterweatherman:v1.0.0:spf13_jwalterweatherman/vendor/github.com/spf13/jwalterweatherman \ + spf13:pflag:v1.0.3:spf13_pflag/vendor/github.com/spf13/pflag \ + spf13:viper:v1.7.1:spf13_viper/vendor/github.com/spf13/viper \ + stretchr:testify:v1.6.1:stretchr_testify/vendor/github.com/stretchr/testify \ + subosito:gotenv:v1.2.0:subosito_gotenv/vendor/github.com/subosito/gotenv \ + theckman:httpforwarded:v0.4.0:theckman_httpforwarded/vendor/github.com/theckman/httpforwarded + +PLIST_FILES= bin/${PORTNAME} + +.include <bsd.port.mk> diff --git a/databases/pg_tileserv/distinfo b/databases/pg_tileserv/distinfo new file mode 100644 index 000000000000..731010d2604f --- /dev/null +++ b/databases/pg_tileserv/distinfo @@ -0,0 +1,91 @@ +TIMESTAMP = 1625487300 +SHA256 (CrunchyData-pg_tileserv-v1.0.8_GH0.tar.gz) = d3850c49a8c2afffe7d1dd3c3e2326db14b1fb1198aed44612c83060da507937 +SIZE (CrunchyData-pg_tileserv-v1.0.8_GH0.tar.gz) = 2980352 +SHA256 (Masterminds-goutils-v1.1.0_GH0.tar.gz) = 053a61c4b0d78e6978600c99562f04d053993c428d549a20b627151cf1aabbae +SIZE (Masterminds-goutils-v1.1.0_GH0.tar.gz) = 14610 +SHA256 (Masterminds-semver-v3.1.0_GH0.tar.gz) = a91e6fe3121bb0c158bbd89721be3f44cd84e1f76a6d89840e244c1f5524ee28 +SIZE (Masterminds-semver-v3.1.0_GH0.tar.gz) = 24481 +SHA256 (Masterminds-sprig-v3.1.0_GH0.tar.gz) = a9e5031c3891ce95e799c5b07de9572eed90acd716e458eb42f1bbcb1b17328a +SIZE (Masterminds-sprig-v3.1.0_GH0.tar.gz) = 49979 +SHA256 (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 7d82b9bb7291adbe7498fe946920ab3e7fc9e6cbfc3b2294693fad00bf0dd17e +SIZE (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 42152 +SHA256 (felixge-httpsnoop-v1.0.1_GH0.tar.gz) = 02f506689067855a2afcbea692a63f60bcb50a3994722650339c82027d1cbe3e +SIZE (felixge-httpsnoop-v1.0.1_GH0.tar.gz) = 10725 +SHA256 (fsnotify-fsnotify-v1.4.7_GH0.tar.gz) = b7530d973d0ab0e58ad8ce1b9a4b963d6f57b3d72f2f9e13d49846976361b1cd +SIZE (fsnotify-fsnotify-v1.4.7_GH0.tar.gz) = 31139 +SHA256 (go-ini-ini-v1.51.0_GH0.tar.gz) = 6c98311d375afbe36a246c5d29acb5cb428634a4186e591ce9b7fe2fa4f2a471 +SIZE (go-ini-ini-v1.51.0_GH0.tar.gz) = 43536 +SHA256 (go-yaml-yaml-9f266ea9e77c_GH0.tar.gz) = 63efc9aabcbb56b2c9469927784fd67ecb3a79720c4fa754c511335a04156d04 +SIZE (go-yaml-yaml-9f266ea9e77c_GH0.tar.gz) = 86898 +SHA256 (go-yaml-yaml-v2.2.4_GH0.tar.gz) = 9004c9709200d52ef6e5c69af3f71f3adb1a2b7e884ea7597f306bf54b1f007c +SIZE (go-yaml-yaml-v2.2.4_GH0.tar.gz) = 72209 +SHA256 (golang-crypto-75b288015ac9_GH0.tar.gz) = 6e74e21bf9dfdbf0a8dac8cb205fbc3bfd8dff308a24080b9d6093a3858f0db2 +SIZE (golang-crypto-75b288015ac9_GH0.tar.gz) = 1729931 +SHA256 (golang-sys-d5e6a3e2c0ae_GH0.tar.gz) = 6cd44aa33cb0fc4caedadde44b3a943bece0aa67d803c00bfb09b03222845f19 +SIZE (golang-sys-d5e6a3e2c0ae_GH0.tar.gz) = 1539001 +SHA256 (golang-text-v0.3.3_GH0.tar.gz) = 1604233637e3593749fbbb13b5069b08e6feba6d2b55a02fd3148793d5871185 +SIZE (golang-text-v0.3.3_GH0.tar.gz) = 7747332 +SHA256 (golang-xerrors-9bdfabe68543_GH0.tar.gz) = 54bb4d99e6cba2e3e5331d064f46640cc01a0e630ee6a684ae810bd94a7e4eb7 +SIZE (golang-xerrors-9bdfabe68543_GH0.tar.gz) = 13657 +SHA256 (google-uuid-v1.1.1_GH0.tar.gz) = bebd4b0b4ea152a9793615ef23c83f688876d8c284a2092264d20a4bf4ffc423 +SIZE (google-uuid-v1.1.1_GH0.tar.gz) = 13543 +SHA256 (gorilla-handlers-v1.5.1_GH0.tar.gz) = be22eafc7020cba749c8638d0051c326f1b31b5a76a98d86beafc595079f6b09 +SIZE (gorilla-handlers-v1.5.1_GH0.tar.gz) = 20963 +SHA256 (gorilla-mux-v1.8.0_GH0.tar.gz) = ea2639259d2ce6f402636655e91eb93ba69c139e3cbf80b044ee393ada53757b +SIZE (gorilla-mux-v1.8.0_GH0.tar.gz) = 45517 +SHA256 (hashicorp-hcl-v1.0.0_GH0.tar.gz) = 50632428210503070fd2fde748c88b7414bf84a6a0eadebf9d8e596a033bead2 +SIZE (hashicorp-hcl-v1.0.0_GH0.tar.gz) = 70658 +SHA256 (huandu-xstrings-v1.3.1_GH0.tar.gz) = d399f03735391073441145bac6b8d06b36f3b59e005db77ebafde130ddf215bf +SIZE (huandu-xstrings-v1.3.1_GH0.tar.gz) = 17797 +SHA256 (imdario-mergo-v0.3.8_GH0.tar.gz) = 8722e1280a333b1b17541dc05102200e1c9e8ee85f45fc66a4ba629b97a870e6 +SIZE (imdario-mergo-v0.3.8_GH0.tar.gz) = 18180 +SHA256 (jackc-chunkreader-v2.0.1_GH0.tar.gz) = bf856bad6608fb7345707aba713a1d77eb984f1d217065738a12c97e37669be4 +SIZE (jackc-chunkreader-v2.0.1_GH0.tar.gz) = 3038 +SHA256 (jackc-pgconn-v1.7.2_GH0.tar.gz) = caefc475dbe66c3b6e642e41dbb37bfd0e235b399a93721ec11d45b947d09cc3 +SIZE (jackc-pgconn-v1.7.2_GH0.tar.gz) = 49797 +SHA256 (jackc-pgio-v1.0.0_GH0.tar.gz) = d36e367c877954acdc96b8cd1a0df417b4cfae80dae726474a8f0de3a68a68ab +SIZE (jackc-pgio-v1.0.0_GH0.tar.gz) = 1884 +SHA256 (jackc-pgpassfile-v1.0.0_GH0.tar.gz) = df8904662382e1d0064ec7a5a8c36c49264d7128cea923d597802ada8c5b9603 +SIZE (jackc-pgpassfile-v1.0.0_GH0.tar.gz) = 3254 +SHA256 (jackc-pgproto3-v2.0.6_GH0.tar.gz) = 3d345e52e8414937255bdd795d9e97413dd3c52216c7cb3e273d5ef94f92f097 +SIZE (jackc-pgproto3-v2.0.6_GH0.tar.gz) = 16872 +SHA256 (jackc-pgservicefile-2b9c44734f2b_GH0.tar.gz) = dd6cf77deb2456b1c8e56875ed901a57eb887e63ae5de48f364906131275497e +SIZE (jackc-pgservicefile-2b9c44734f2b_GH0.tar.gz) = 2991 +SHA256 (jackc-pgtype-v1.6.1_GH0.tar.gz) = f7f2a89bd2ca2d24c3b1c5ada999d80ced8f3db9b9a4f807a2d3fa12f10bae60 +SIZE (jackc-pgtype-v1.6.1_GH0.tar.gz) = 173007 +SHA256 (jackc-pgx-v4.9.2_GH0.tar.gz) = f49112c939036f6e2b310fca8f765bd30cdb720ec2f7736f0fd40a2025d3297a +SIZE (jackc-pgx-v4.9.2_GH0.tar.gz) = 99181 +SHA256 (jackc-puddle-v1.1.2_GH0.tar.gz) = 6955b02c012468f3faa5988662e90254e0f9e35110d13edf2d8aa53881128aac +SIZE (jackc-puddle-v1.1.2_GH0.tar.gz) = 10055 +SHA256 (magiconair-properties-v1.8.1_GH0.tar.gz) = 4449df3d2be86608bfc997228f66f1cff57bf620cc5bf9ba44339c7e4c5612dd +SIZE (magiconair-properties-v1.8.1_GH0.tar.gz) = 29735 +SHA256 (mitchellh-copystructure-v1.0.0_GH0.tar.gz) = 0e04d8fe1065459ab234507b9a4b7164b05eda970fee6ffdf0219423c357fda8 +SIZE (mitchellh-copystructure-v1.0.0_GH0.tar.gz) = 8903 +SHA256 (mitchellh-mapstructure-v1.1.2_GH0.tar.gz) = 53fbc06b125ff1c9c73a4eb1764346932671a29c67a45a92e2ebc6855635069b +SIZE (mitchellh-mapstructure-v1.1.2_GH0.tar.gz) = 20980 +SHA256 (mitchellh-reflectwalk-v1.0.0_GH0.tar.gz) = bd22df35225e4bfcecafb35ac4869911fafc356f5dadcfb141cd0caededc87c3 +SIZE (mitchellh-reflectwalk-v1.0.0_GH0.tar.gz) = 6143 +SHA256 (pborman-getopt-v2.1.0_GH0.tar.gz) = 00056fa164b1bf217eb249f5733c76fd6e18f3f55ae269286695705243f48fe2 +SIZE (pborman-getopt-v2.1.0_GH0.tar.gz) = 41182 +SHA256 (pelletier-go-toml-v1.2.0_GH0.tar.gz) = 1a5a620f680033f17e34148bee8f26d96d8c27ff1d7f56f0fe1c7253595b5244 +SIZE (pelletier-go-toml-v1.2.0_GH0.tar.gz) = 57496 +SHA256 (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 28f3dc1b5c0efd61203ab07233f774740d3bf08da4d8153fb5310db6cea0ebda +SIZE (pmezard-go-difflib-v1.0.0_GH0.tar.gz) = 11398 +SHA256 (sirupsen-logrus-v1.7.0_GH0.tar.gz) = a7baaa1c646441d002f3867b5998b6b45b629ecfad317d468a981e23e0c9c6ca +SIZE (sirupsen-logrus-v1.7.0_GH0.tar.gz) = 46392 +SHA256 (spf13-afero-v1.1.2_GH0.tar.gz) = 66554a6b09b0009340ae77c119d5a14e2460bb3aea56e75e138c87e621f3803b +SIZE (spf13-afero-v1.1.2_GH0.tar.gz) = 45309 +SHA256 (spf13-cast-v1.3.1_GH0.tar.gz) = 4fa8d06903b490ae6f1316e55c5446d5648eea2b450671ebc54d4bbe79bc46b1 +SIZE (spf13-cast-v1.3.1_GH0.tar.gz) = 11102 +SHA256 (spf13-jwalterweatherman-v1.0.0_GH0.tar.gz) = 2ece12b964e0d230b10851555185d42d3c81b401efda044265ae716eb1d0bc2d +SIZE (spf13-jwalterweatherman-v1.0.0_GH0.tar.gz) = 6392 +SHA256 (spf13-pflag-v1.0.3_GH0.tar.gz) = 9e57f86f493f04d9077fccd04e7139ebf243dd544e917ab83d35729b3e54a124 +SIZE (spf13-pflag-v1.0.3_GH0.tar.gz) = 46002 +SHA256 (spf13-viper-v1.7.1_GH0.tar.gz) = de85215b50e9fbb2cdf63b0aa9df826a866dff8f718ba2dc3f5866e98d5bd39a +SIZE (spf13-viper-v1.7.1_GH0.tar.gz) = 82641 +SHA256 (stretchr-testify-v1.6.1_GH0.tar.gz) = 40fd7204ab72ca9d8759f1cc3604dd17f556a0f9177f6fc05dd0cad9f06e708f +SIZE (stretchr-testify-v1.6.1_GH0.tar.gz) = 84215 +SHA256 (subosito-gotenv-v1.2.0_GH0.tar.gz) = 5f6826992c11981018c77377f33dbc56d0be932e0d38a2f51e795c99725e7ba5 +SIZE (subosito-gotenv-v1.2.0_GH0.tar.gz) = 7359 +SHA256 (theckman-httpforwarded-v0.4.0_GH0.tar.gz) = 5fd9a8721b599ab5bedf4535bed042f26ab15c44a82e69b5c0435140112333cd +SIZE (theckman-httpforwarded-v0.4.0_GH0.tar.gz) = 5981 diff --git a/databases/pg_tileserv/pkg-descr b/databases/pg_tileserv/pkg-descr new file mode 100644 index 000000000000..345d5736dafe --- /dev/null +++ b/databases/pg_tileserv/pkg-descr @@ -0,0 +1,18 @@ +pg_tileserv is a PostGIS-only tile server written in Go. By restricting itself +to only using PostGIS as a data source, pg_tileserv gains the following +features: + +- Automatic configuration. The server can discover and automatically publish +as tiles sources all tables it has read access to: just point it at a +PostgreSQL/PostGIS database. +- Full SQL flexibility. Using function layers, the server can run any SQL to +generate tile outputs. Any data processing, feature filtering, or record +aggregation that can be expressed in SQL, can be exposed as parameterized tile +sources. +- Database security model. You can restrict access to tables and functions +using standard database access control. This means you can also use advanced +access control techniques, like row-level security to dynamically filter +access based on the login role. + + +WWW: https://github.com/crunchydata/pg_tileserv/issues |