git: 0cc2abb2de08 - main - databases/pg_tilserv: add new port

Loïc Bartoletti lbartoletti at FreeBSD.org
Mon Jul 5 13:25:23 UTC 2021


The branch main has been updated by lbartoletti:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0cc2abb2de08eabc14d69611f0613c16f0c39a9a

commit 0cc2abb2de08eabc14d69611f0613c16f0c39a9a
Author:     Loïc Bartoletti <lbartoletti at FreeBSD.org>
AuthorDate: 2021-07-05 13:00:31 +0000
Commit:     Loïc Bartoletti <lbartoletti at 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 at 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


More information about the dev-commits-ports-main mailing list