| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is mostly about simplification of intiscript and postgresql-setup
script reuse. Still WIP, however (some options are not applicable for
sysvinit system).
* share/postgresql-setup/library.sh.in (parse_upgrade_setup): Parse new
variable "pghost_override".
(run_cmd_as_dbadmin): New wrapper function to run something under
"postgres" user. Cut from postgresql-setup.
* postgresql-setup.in: Optionally source software collections. Call new
check_daemon_reload instead of in-place checking.
(upgrade): Use new library function run_cmd_as_dbadmin. Add new hack
for $PGHOST overriding via $pghost_override. Add more verbose output to
make clear what tool failed.
(check_daemon_reload): New function to make the systemd daemon reload
conditionally on one dedicated place.
(handle_envfile): New function to abstract environment file parsing,
works both for systemd & sysvinit env-files.
(handle_service_envfiles): Use handle_envfile instead of in-place
parsing.
(service_configuration): For sysvinit supported configuration, we
support only one env file per service - take this into account and don't
try to detect many from systemctl output.
* postgresql.init.in: Switch to bash script. Parametrize metadata by
configure results. Source software collections when needed. Source
project library. Don't set PGDATA if admin uses non-default service
naem. Do not define PGPORT as PGPORT should be defined in
postgresql.conf. Allow passing parameters into initdb/upgrade targets.
($PREVMAJORVERSION, $PREVPGENGINE): Remove unused variables.
($PGENGINE): This is @bindir@ equivalent.
($PGLOG): Spell it so it will not clash with system default PostgreSQL
installation.
($pidfile): Use $NAME instead of $PID to distinguish multiple postmaster
scenarios (mainly because we do not know the PGPORT yet).
(start): Drop the checking logic and use postgresql-check-db-dir
instead. Reuse run_cmd_as_dbadmin instead of $SU_POSTGRES.
(stop): Use run_cmd_as_dbadmin instead of $SU_POSTGRES.
(reload): Just coding style fix.
(perform_initdb): Drop unused function, done in postgresql-setup.
(__single_comand): Mostly postgresql-setup wrapper with success/failure
sugar around the call itself.
(initdb): Substitute the function body with postgresql-setup call.
(upgrade): Likewise.
* postgresql-check-db-dir.in: Fix the hint for admin about where the
service should be initialized. Do not warn about systemd-only
unsupported configuration. Add @bindir@ into "you need --initdb" hint.
Re-style the warning a bit.
* etc/postgresql-setup/upgrade/postgresql.conf: Mention new
configuration option pghost_override.
* configure.ac (initscriptsconfdir): New configuration directory.
(PGMAJORVERSION): Use sed and regexp for MAJOR version mining. It
failed for micro versions of length >= 2.
(SCL_SOURCE): Define to be empty by default.
* README: Document what's needed to bootstrap from git source. WIP.
* Makefile.am (initscripts_DATA): Use noinst_DATA. Firstly, having
initscripts_DATA installs only non-executable files. So we needed
something with _SCRIPTS primary. But initscripts_SCRIPTS would face the
automake's limitation that it must be "static" list of files. So make
the installation of initscript (of dynamically generated name) via
automake's install/uninstall.
($(initscript)): Use $(INSTANTIATE_SCRIPT) instead of $(INSTANTIATE).
(install-data-hook): Call 'systemctl daemon-reload' only for
non-sysvinit systems.
* .gitignore: Ignore 'initscript' filename.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The benefit is that sgml format we write does not need to be kept
formated precisely. The output format still needs some "style"
fixes, but now docbook2txt is able to generates correct text-file
README.rpm-dist without problems on RHEL 5.10+.
* .gitignore: Added all intermediate files of README file.
* Makefile.am: Generated README file is firstly filtered through
$(SED_RULES), then macros are expanded by m4 and then docbook2txt
is called.
* README: Document subset of dependencies.
* README.rpm-dist.in: Move to ...
* README.rpm-dist.template: ... here, with docbook transformation.
* TODO: Document we should should work docbook docs.
* configure.ac: AC_SUBST also WANT_SYSVINIT.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
And add NAME_SERVICE, NAME_PACKAGE and NAME_BINARYBASE on its
place. This allows packager fine-tune how the files are going to
be generated.
* Makefile.am: Better work with variables.
* .gitignore: Ignore any (generated) service file.
* configure.ac (DISTSUFF): Remove.
(NAME_BIN_PFX, NAME_BIN_SFX, NAME_PKG_PFX, NAME_PKG_SFX)
(NAME_SRV_PFX, NAME_SRV_SFX, NAME_SERVICE, NAME_PACKAGE)
(NAME_BINARYBASE): New variables
* doc/.gitignore: Ignore any man(1) page.
* doc/Makefile.am (HELP2MAN_RUN): Fix the call to work also with
various prefixes/suffixes.
* README.rpm-dist.in: Use new variables.
* legacy-sysv-script.in: Likewise.
* postgresql-setup.in: Likewise.
* m4/packaging.m4 (PGSETUP_SUBST_OPT): New macro, defines,
substitutes and also fixes sed-rules.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Turns out we need to support upgrade from more than one previous
database versions. The plan is to make this as general as easily
possible, "run-time" configurable without need to recompile.
* postgresql-setup.in: Add options --upgrade-from and
--upgrade-ids. Require root access (as late as possible).
($USAGE_STRING): Adjust help output accordingly.
($PGMAJORVERSION, $PREVMAJORVERSION)
($PREVPGENGINE): Remove newly useless globals.
($option_upgradefrom): New option default.
(set_var, root_prereq): New helper functions.
(parse_upgrade_setup): Helper function to parse upgrade
configuration.
(print_version): Don't print PREVMAJORVERSION as it is (with
configuration) useless.
(upgrade): Create new $inplace local to handle in-place and
copy-like migrations differently. Use the variable set generated
by parse_upgrade_setup() function. Small err message fixes.
(handle_service_env, handle_pgconf): Remove the MODE argument.
(parse_configuration): Generalize operations which needed to be
done on two places.
* upgrade_config.template: Example of ./configure time config
file. Based on files like this the run-time is generated.
* share/postgresql-setup/.gitignore: New file.
* share/postgresql-setup/Makefile.inc: New file.
* build-helpers/build-config: New file, generator of configuration
files.
* build-helpers/Makefile.inc: New file.
* Makefile.am: Distribute upgrade_config.template. Start the
conversion to flat Makefile and include two new Makefile.inc
snippets.
* configure.ac: New --with-upgrade-config option. Propagate the
rawpkgdatadir and UPGRADE_CONFIG_LIST variables into Makefile.
(INSTANTIATE): Enhance to create the leading path also.
(INSTANTIATE_CONV): Convenience helper for leading path of target
creation.
* auxdir/install_local: New (just-for-git) installation helper.
* .gitignore: Don't hide share/postgresql-setup.
* TODO: Mention that KDE folks would like to migrate somehow.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
We use 'su' only for 'postgres' user purposes. So have one,
configure-time-proven command. Also, in the previous commit I
forgot to fix sysvinit file.
* configure.ac (SU_POSTGRES): New variable.
* postgresql-setup.in ($SU_POSTGRES): Use detected @SU_POSTGRES@.
($SU, $SU_L_POSTGRES): Avoid usage of those.
* postgresql.init.in: Likewise.
* .gitignore: Remove typoed ignore.
|
| |
|
|
|
|
|
|
|
| |
* Makefile.am: (systemdlegacyscriptsdir)
(nodist_systemdlegacyscrupts_DATA): New variables.
(initdb, upgrade): New targets.
* initdb.in: New legacy script template.
* upgrade.in: Likewise.
* .gitignore: Ignore newly generated scripts.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
From now, if ./configure --with-sysvinit is done, we install init
script and do not install systemd files. Original patch written
by Jozef MlĂch (jmlich@redhat.com).
* Makefile.am (initscriptsdir, nodist_initscripts_DATA): New
variables. New postgresql.init target.
* configure.ac: Add --with-sysvinit option.
* postgresql.init.in: New sysvinit template.
* .gitignore: Mention postgresql.init.
* NEWS: Document.
|
| |
|
|
|
|
|
|
| |
Use the gitlog-to-changelog binary, if exists on the system.
* Makefile.am (dist-hook): Add rules for ChangeLog.
* ChangeLog: Remove file.
* .gitignore: Ignore .gitignore.
|
| |
|
|
|
|
|
| |
This required little bit of generalization so I moved the SED_CALL
into configure.ac to have it available for tests/Makefile.am also.
The first testsuite just checks that no un-expanded @pattern@
exists in generated files.
|
| |
|
|
|
| |
Also generate files using sed as is suggested by autoconf manual
(and the autoconf project does so internally).
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
We need postgresql-ctl for to keep backward compatibility with
clients setting "PGPORT" directly in service file.
DISTSUFF variable (which is read by ./configure) may be used to
generated namespaced binary names -- e.g. DISTSUFF=93 results in
postgresql93-setup is generated instead of postgresql-setup.
This commit also adjusts autotools build system to not generate
scripts by ./configure, but rather by make.
|
| | |
|
| |
|
|
|
| |
This makes us to do some additional documentation, but it should
not be so hard.
|
| |
|