Date: Mon, 5 Jul 2021 13:25:23 GMT From: =?utf-8?Q?Lo=C3=AFc Bartoletti?= <lbartoletti@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 0cc2abb2de08 - main - databases/pg_tilserv: add new port Message-ID: <202107051325.165DPNPb065961@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by lbartoletti: URL: https://cgit.FreeBSD.org/ports/commit/?id=0cc2abb2de08eabc14d69611f0613c16f0c39a9a commit 0cc2abb2de08eabc14d69611f0613c16f0c39a9a Author: Loïc Bartoletti <lbartoletti@FreeBSD.org> AuthorDate: 2021-07-05 13:00:31 +0000 Commit: Loïc Bartoletti <lbartoletti@FreeBSD.org> CommitDate: 2021-07-05 13:00:31 +0000 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 --- databases/Makefile | 1 + databases/pg_tileserv/Makefile | 63 ++++++++++++++++++++++++++++ databases/pg_tileserv/distinfo | 91 +++++++++++++++++++++++++++++++++++++++++ databases/pg_tileserv/pkg-descr | 18 ++++++++ 4 files changed, 173 insertions(+) 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202107051325.165DPNPb065961>