terraform-provider-postgresql-9999nest
download
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
POSTGRES_COMPAT=( {14..18} )
POSTGRES_USEDEP="server"
inherit edo git-r3 go-module postgres readme.gentoo-r1
DESCRIPTION="Terraform PostgreSQL provider"
HOMEPAGE="https://github.com/cyrilgdn/terraform-provider-postgresql"
EGIT_REPO_URI="https://github.com/cyrilgdn/${PN}.git"
LICENSE="MPL-2.0"
SLOT="0"
IUSE="test"
RESTRICT="mirror test"
PROPERTIES="test_network"
RDEPEND="|| ( app-admin/terraform app-admin/opentofu )"
BDEPEND="test? ( ${POSTGRES_DEP}
app-admin/terraform
dev-db/dummy_seclabel )"
DOC_CONTENTS="You should create a symlink to\\n
/usr/share/terraform-provider/terraform-provider-proxmox\\n
in ~/.terraform.d/plugins or ~/.opentofu.d/plugins\\n"
src_unpack() {
git-r3_src_unpack
go-module_live_vendor
}
src_prepare() {
default
has_version ">=dev-db/postgresql-16" && eapply "${FILESDIR}/${PN}"-1.26.0-test-psql16.patch
}
src_compile() {
ego build
}
src_test() {
local db="${T}/pgsql"
export TF_ACC="true" TF_ACC_TERRAFORM_PATH="/usr/bin/terraform" \
PGHOST="127.0.0.1" PGUSER="postgres" PGSUPERUSER="true" PGSSLMODE="disable"
edo initdb -U postgres -A trust -D "${db}"
# test expects UTC timezone, wal_level = logical, max_replication_slots = 10,
# shared_preload_libraries = 'dummy_seclabel'
sed -i -e "/timezone/s|'.*'|'UTC'|" \
-e '/wal_level/s|replica|logical|' \
-e '/wal_level/s|^#||' \
-e '/max_replication_slots/s|^#||' \
-e "/shared_preload_libraries/s|''|'dummy_seclabel'|" \
-e '/shared_preload_libraries/s|^#||' \
"${db}"/postgresql.conf || die "sed for postgresql.conf failed"
edo pg_ctl -w -D "${db}" start -o "-h '127.0.0.1' -p 5432 -k '${T}'"
ego test -work ./...
edo pg_ctl -w -D "${db}" stop
}
src_install() {
einstalldocs
exeinto /usr/share/terraform-provider
doexe terraform-provider-postgresql
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
}