5 1. [モジュールの概要 - モジュールの機能](#module-description)
6 2. [セットアップ - postgresqlモジュール導入の基本](#setup)
7 * [postgresqlの影響](#what-postgresql-affects)
8 * [postgresqlの導入](#getting-started-with-postgresql)
9 3. [使用方法 - 設定オプションと追加機能](#usage)
10 * [サーバーの設定](#configure-a-server)
11 * [データベースの作成](#create-a-database)
12 * [ユーザ、ロール、パーミッションの管理](#manage-users-roles-and-permissions)
13 * [デフォルトのオーバーライド](#override-defaults)
14 * [pg_hba.confのアクセスルールの作成](#create-an-access-rule-for-pg_hbaconf)
15 * [pg_ident.confのユーザ名マップの作成](#create-user-name-maps-for-pg_identconf)
16 * [接続の検証](#validate-connectivity)
17 4. [参考 - モジュールの機能と動作について](#reference)
19 * [定義できるタイプ](#defined-types)
22 5. [制約事項 - OSの互換性など](#limitations)
23 6. [開発 - モジュール貢献についてのガイド](#development)
24 * [コントリビュータ - モジュール貢献者の一覧](#contributors)
26 8. [コントリビュータ - モジュール貢献者のリスト](#contributors)
30 postgresqlモジュールを使用すると、PuppetでPostgreSQLを管理できます。
32 PostgreSQLは、高性能な無償のオープンソースリレーショナルデータベースサーバーです。postgresqlモジュールを使用すると、PostgreSQLのパッケージ、サービス、データベース、ユーザ、一般的なセキュリティ設定を管理できるようになります。
38 * PostgreSQLのパッケージ、サービス、設定ファイル
44 基本的なデフォルトのPostgreSQLサーバーを設定するには、`postgresql::server`クラスを宣言します。
47 class { 'postgresql::server':
55 デフォルト設定を使用する場合は、上記のように`postgresql::server`クラスを宣言します。PostgreSQLサーバーの設定をカスタマイズするには、次のように、変更する[パラメータ](#postgresqlserver)を指定します。
58 class { 'postgresql::server':
59 ip_mask_deny_postgres_user => '0.0.0.0/32',
60 ip_mask_allow_all_users => '0.0.0.0/0',
61 ipv4acls => ['hostssl all johndoe 192.168.0.0/24 cert'],
62 postgres_password => 'TPSrep0rt!',
66 設定後、コマンドラインで設定をテストします。
69 psql -h localhost -U postgres
70 psql -h my.postgres.server -U
73 上記のコマンドでエラーメッセージが返ってくる場合は、パーミッションの設定によって現在の接続元からのアクセスが制限されています。その場所からの接続を許可するかどうかに応じて、パーミッション設定の変更が必要な場合があります。
75 サーバー設定パラメータの詳細については、[PostgreSQLランタイム設定マニュアル](http://www.postgresql.org/docs/current/static/runtime-config.html)を参照してください。
79 さまざまなPostgreSQLデータベースを定義タイプ`postgresql::server::db`を使用してセットアップできます。例えば、PuppetDBのデータベースをセットアップするには、次のように記述します。
82 class { 'postgresql::server':
85 postgresql::server::db { 'mydatabasename':
86 user => 'mydatabaseuser',
87 password => postgresql_password('mydatabaseuser', 'mypassword'),
91 ### ユーザ、ロール、パーミッションの管理
93 ユーザ、ロール、パーミッションを管理するには、次のようにします。
96 class { 'postgresql::server':
99 postgresql::server::role { 'marmot':
100 password_hash => postgresql_password('marmot', 'mypasswd'),
103 postgresql::server::database_grant { 'test1':
109 postgresql::server::table_grant { 'my_table of test2':
117 この例では、test1データベース上とtest2データベースの`my_table`テーブル上の**すべての**権限を、指定したユーザまたはグループに付与します。値がPuppetDB設定ファイルに追加されると、このデータベースは使用可能になります。
121 `postgresql::globals`クラスを使用すると、このモジュールの主な設定をグローバルに構成できます。この設定は、他のクラスや定義済みリソースから使用できます。単独では機能しません。
123 例えば、すべてのクラスのデフォルトの`locale`と`encoding`をオーバーライドするには、次のように記述します。
126 class { 'postgresql::globals':
128 locale => 'en_US.UTF-8',
131 class { 'postgresql::server':
135 特定のバージョンのPostgreSQLパッケージを使用するには、次のように記述します。
138 class { 'postgresql::globals':
139 manage_package_repo => true,
143 class { 'postgresql::server':
147 ### リモートのユーザ、ロール、パーミッションの管理
149 リモートのSQLオブジェクトは、ローカルのSQLオブジェクトと同じPuppetリソースと、[`connect_settings`](#connect_settings)ハッシュを使用して管理します。これは、PuppetがリモートのPostgresインスタンスに接続する方法と、SQLコマンドの生成に使用されるバージョンを制御します。
151 `connect_settings`ハッシュには、'PGHOST'、'PGPORT'、'PGPASSWORD'、'PGSSLKEY'など、Postgresクライアント接続を制御する環境変数を含めることができます。変数の全リストについては、[PostgreSQL環境変数](http://www.postgresql.org/docs/9.4/static/libpq-envars.html)マニュアルを参照してください。
153 さらに、特殊値の'DBVERSION'により、ターゲットデータベースのバージョンを指定できます。`connect_settings`ハッシュが省略されているか空の場合、PuppetはローカルのPostgreSQLインスタンスに接続します。
155 Puppetリソースごとに`connect_settings`ハッシュを設定するか、`postgresql::globals`にデフォルトの`connect_settings`ハッシュを設定できます。リソースごとに`connect_settings`を設定すると、SQLオブジェクトが複数のユーザによって複数のデータベース上に作成できるようになります。
158 $connection_settings_super2 = {
159 'PGUSER' => 'super2',
160 'PGPASSWORD' => 'foobar2',
161 'PGHOST' => '127.0.0.1',
163 'PGDATABASE' => 'postgres',
166 include postgresql::server
168 # Connect with no special settings, i.e domain sockets, user postgres
169 postgresql::server::role { 'super2':
170 password_hash => 'foobar2',
173 connect_settings => {},
176 # Now using this new user connect via TCP
177 postgresql::server::database { 'db1':
178 connect_settings => $connection_settings_super2,
179 require => Postgresql::Server::Role['super2'],
183 ### pg_hba.confのアクセスルールの作成
185 `pg_hba.conf`のアクセスルールを作成するには、次のように記述します。
188 postgresql::server::pg_hba_rule { 'allow application network to access app database':
189 description => 'Open up PostgreSQL for access from 200.1.2.0/24',
193 address => '200.1.2.0/24',
194 auth_method => 'md5',
198 これにより、以下のようなルールセットが`pg_hba.conf`内に作成されます。
201 # Rule Name: allow application network to access app database
202 # Description: Open up PostgreSQL for access from 200.1.2.0/24
204 host app app 200.1.2.0/24 md5
207 デフォルトでは、`pg_hba_rule`に`postgresql::server`を含める必要がありますが、ルールを宣言する際にtargetおよびpostgresql_versionを設定することで、その動作をオーバーライドできます。例えば次のようになります。
210 postgresql::server::pg_hba_rule { 'allow application network to access app database':
211 description => 'Open up postgresql for access from 200.1.2.0/24',
215 address => '200.1.2.0/24',
216 auth_method => 'md5',
217 target => '/path/to/pg_hba.conf',
218 postgresql_version => '9.4',
222 ### pg_ident.confのユーザ名マップの作成
224 pg_ident.confのユーザ名マップを作成するには、次のように記述します。
227 postgresql::server::pg_ident_rule { 'Map the SSL certificate of the backup server as a replication user':
228 map_name => 'sslrepli',
229 system_username => 'repli1.example.com',
230 database_username => 'replication',
234 これにより、次のようなユーザ名マップが`pg_ident.conf`に作成されます。
237 #Rule Name: Map the SSL certificate of the backup server as a replication user
240 sslrepli repli1.example.com replication
245 リカバリ設定ファイル(`recovery.conf`)を作成するには、次のように記述します。
248 postgresql::server::recovery { 'Create a recovery.conf file with the following defined parameters':
249 restore_command => 'cp /mnt/server/archivedir/%f %p',
250 archive_cleanup_command => undef,
251 recovery_end_command => undef,
252 recovery_target_name => 'daily backup 2015-01-26',
253 recovery_target_time => '2015-02-08 22:39:00 EST',
254 recovery_target_xid => undef,
255 recovery_target_inclusive => true,
256 recovery_target => 'immediate',
257 recovery_target_timeline => 'latest',
258 pause_at_recovery_target => true,
259 standby_mode => 'on',
260 primary_conninfo => 'host=localhost port=5432',
261 primary_slot_name => undef,
262 trigger_file => undef,
263 recovery_min_apply_delay => 0,
267 これにより、次の`recovery.conf`設定ファイルが作成されます。
270 restore_command = 'cp /mnt/server/archivedir/%f %p'
271 recovery_target_name = 'daily backup 2015-01-26'
272 recovery_target_time = '2015-02-08 22:39:00 EST'
273 recovery_target_inclusive = true
274 recovery_target = 'immediate'
275 recovery_target_timeline = 'latest'
276 pause_at_recovery_target = true
278 primary_conninfo = 'host=localhost port=5432'
279 recovery_min_apply_delay = 0
282 テンプレートでは、指定されたパラメータのみが認識されます。`recovery.conf`は、少なくとも1つのパラメータが設定済みで、**かつ**、[manage_recovery_conf](#manage_recovery_conf)がtrueの場合のみ作成されます。
286 従属タスクを開始する前に、リモートのPostgreSQLデータベースへのクライアント接続を検証するには、`postgresql_conn_validator`リソースを使用します。このリソースは、PostgreSQLクライアントソフトウェアがインストールされている任意のノード上で使用できます。アプリケーションサーバーの起動や、データベース移行の実行など、他のタスクと結合されることがよくあります。
291 postgresql_conn_validator { 'validate my postgres connection':
292 host => 'my.postgres.host',
293 db_username => 'mydbuser',
294 db_password => 'mydbpassword',
295 db_name => 'mydbname',
297 exec { 'rake db:migrate':
298 cwd => '/opt/myrubyapp',
304 postgresqlモジュールには、サーバー設定用に多数のオプションがあります。以下の設定をすべて使うことはないかもしれませんが、これらを使用することで、セキュリティ設定をかなり制御することができます。
308 * [postgresql::client](#postgresqlclient)
309 * [postgresql::globals](#postgresqlglobals)
310 * [postgresql::lib::devel](#postgresqllibdevel)
311 * [postgresql::lib::java](#postgresqllibjava)
312 * [postgresql::lib::perl](#postgresqllibperl)
313 * [postgresql::lib::python](#postgresqllibpython)
314 * [postgresql::server](#postgresqlserver)
315 * [postgresql::server::plperl](#postgresqlserverplperl)
316 * [postgresql::server::contrib](#postgresqlservercontrib)
317 * [postgresql::server::postgis](#postgresqlserverpostgis)
321 * [postgresql::server::config_entry](#postgresqlserverconfig_entry)
322 * [postgresql::server::database](#postgresqlserverdatabase)
323 * [postgresql::server::database_grant](#postgresqlserverdatabase_grant)
324 * [postgresql::server::db](#postgresqlserverdb)
325 * [postgresql::server::extension](#postgresqlserverextension)
326 * [postgresql::server::grant](#postgresqlservergrant)
327 * [postgresql::server::grant_role](#postgresqlservergrant_role)
328 * [postgresql::server::pg_hba_rule](#postgresqlserverpg_hba_rule)
329 * [postgresql::server::pg_ident_rule](#postgresqlserverpg_ident_rule)
330 * [postgresql::server::recovery](#postgresqlserverrecovery)
331 * [postgresql::server::role](#postgresqlserverrole)
332 * [postgresql::server::schema](#postgresqlserverschema)
333 * [postgresql::server::table_grant](#postgresqlservertable_grant)
334 * [postgresql::server::tablespace](#postgresqlservertablespace)
338 * [postgresql_psql](#custom-resource-postgresql_psql)
339 * [postgresql_replication_slot](#custom-resource-postgresql_replication_slot)
340 * [postgresql_conf](#custom-resource-postgresql_conf)
341 * [postgresql_conn_validator](#custom-resource-postgresql_conn_validator)
345 * [postgresql_password](#function-postgresql_password)
346 * [postgresql_acls_to_resources_hash](#function-postgresql_acls_to_resources_hashacl_array-id-order_offset)
350 #### postgresql::client
352 PostgreSQLクライアントソフトウェアをインストールします。カスタムのバージョンをインストールするには、次のパラメータを設定します。
354 >**注意:** カスタムのバージョンを指定する場合、必要なyumまたはaptリポジトリを忘れずに追加してください。
356 ##### `package_ensure`
358 PostgreSQLクライアントパッケージリソースが存在する必要があるかどうかを指定します。
360 有効な値: 'present'、'absent'。
366 PostgreSQLクライアントパッケージの名前を設定します。
370 #### postgresql::lib::docs
372 Postgres-Docs向けのPostgreSQLバインディングをインストールします。カスタムのバージョンをインストールするには、次のパラメータを設定します。
374 **注意:** カスタムのバージョンを指定する場合、必要なyumまたはaptリポジトリを忘れずに追加してください。
378 PostgreSQL docsパッケージの名前を指定します。
380 ##### `package_ensure`
382 PostgreSQL docsパッケージリソースが存在する必要があるかどうかを指定します。
384 有効な値: 'present'、'absent'。
388 #### postgresql::globals
390 **注意:** ほとんどのサーバー固有のデフォルト値は、`postgresql::server`クラスでオーバーライドする必要があります。このクラスは、標準以外のOSを使用している場合か、ここでしか変更できない要素(`version`や`manage_package_repo`)を変更する場合のみ使用します。
394 ターゲットプラットフォームのデフォルトのPostgreSQLバイナリディレクトリをオーバーライドします。
398 ##### `client_package_name`
400 デフォルトのPostgreSQLクライアントパッケージ名をオーバーライドします。
406 ターゲットプラットフォームのデフォルトのPostgreSQL設定ディレクトリをオーバーライドします。
410 ##### `contrib_package_name`
412 デフォルトのPostgreSQL contribパッケージ名をオーバーライドします。
416 ##### `createdb_path`
418 **非推奨** `createdb`コマンドへのパス。
420 デフォルト値: '${bindir}/createdb'。
424 ターゲットプラットフォームのデフォルトのPostgreSQLデータディレクトリをオーバーライドします。
428 **注意:** インストール後にdatadirを変更すると、変更が実行される前にサーバーが完全に停止します。Red Hatシステムでは、データディレクトリはSELinuxに適切にラベル付けする必要があります。Ubuntuでは、明示的に`needs_initdb = true`に設定して、Puppetが新しいdatadir内のデータベースを初期化できるようにする必要があります(他のシステムでは、`needs_initdb`はデフォルトでtrueになっています)。
430 **警告:** datadirがデフォルトから変更された場合、Puppetは元のデータディレクトリのパージを管理しません。そのため、データディレクトリが元のディレクトリに戻ったときにエラーが発生します。
432 ##### `default_database`
434 接続するデフォルトのデータベースの名前を指定します。
436 デフォルト値: (ほとんどのシステムにおいて) 'postgres'。
438 ##### `devel_package_name`
440 デフォルトのPostgreSQL develパッケージ名をオーバーライドします。
444 ##### `docs_package_name`
448 デフォルトのPostgreSQL docsパッケージ名をオーバーライドします。
454 このモジュールで作成されるすべてのデータベースのデフォルトエンコーディングを設定します。オペレーティングシステムによっては、`template1` の初期化にも使用されます。その場合、モジュール外部のデフォルトにもなります。
456 デフォルト値: オペレーティングシステムのデフォルトエンコーディングによって決まります。
460 ファイルシステムの関連ファイルに使用されるデフォルトのpostgresユーザグループをオーバーライドします。
468 ##### `java_package_name`
470 デフォルトのPostgreSQL javaパッケージ名をオーバーライドします。
476 このモジュールで作成されるすべてのデータベースのデフォルトのデータベースロケールを設定します。オペレーティングシステムによっては、`template1` の初期化にも使用されます。その場合、モジュール外部のデフォルトにもなります。
478 デフォルト値: `undef`、実質的には'C'。
480 **Debianでは、PostgreSQLのフル機能が使用できるように'locales-all'パッケージがインストールされていることを確認する必要があります。**
484 postgresqlサーバーのデフォルトタイムゾーンを設定します。postgresqlのビルトインのデフォルト値は、システムのタイムゾーン情報を取得しています。
488 デフォルトのPostgreSQL logディレクトリをオーバーライドします。
490 デフォルト値: initdbのデフォルトパス。
492 ##### `manage_package_repo`
494 `true`に設定されている場合、お使いのホスト上に公式なPostgreSQLリポジトリをセットアップします。
498 ##### `module_workdir`
500 psqlコマンドを実行する作業ディレクトリを指定します。'/tmp'がnoexecオプションでマウントされたボリューム上にあるときに、指定が必要になる場合があります。
506 サーバーパッケージをインストール後、PostgreSQLサービスを開始する前に、initdb動作を明示的に呼び出します。
510 ##### `perl_package_name`
512 デフォルトのPostgreSQL Perlパッケージ名をオーバーライドします。
516 ##### `pg_hba_conf_defaults`
518 `false`に設定すると、`pg_hba.conf`についてモジュールに設定されたデフォルト値を無効にします。デフォルト値をオーバーライドするときに役立ちます。ただし、基本的な`psql`動作など、一定の動作を行うためには一定のアクセスが要求されるので、ここでの変更内容がその他のモジュールと矛盾しないように注意してください。
520 デフォルト値: `postgresql::globals::manage_pg_hba_conf`に設定されたグローバル値。デフォルトは`true`。
522 ##### `pg_hba_conf_path`
524 `pg_hba.conf`ファイルへのパスを指定します。
526 デフォルト値: '${confdir}/pg_hba.conf'。
528 ##### `pg_ident_conf_path`
530 `pg_ident.conf`ファイルへのパスを指定します。
532 デフォルト値: '${confdir}/pg_ident.conf'。
534 ##### `plperl_package_name`
536 デフォルトのPostgreSQL PL/Perlパッケージ名をオーバーライドします。
540 ##### `plpython_package_name`
542 デフォルトのPostgreSQL PL/Pythonパッケージ名をオーバーライドします。
546 ##### `postgis_version`
548 PostGISをインストールする場合に、インストールするPostGISのバージョンを定義します。
550 デフォルト値: インストールするPostgreSQLで利用可能な最下位のバージョン。
552 ##### `postgresql_conf_path`
554 `postgresql.conf`ファイルへのパスを設定します。
556 デフォルト値: '${confdir}/postgresql.conf'。
560 `psql`コマンドへのパスを設定します。
562 ##### `python_package_name`
564 デフォルトのPostgreSQL Pythonパッケージ名をオーバーライドします。
568 ##### `recovery_conf_path`
570 `recovery.conf`ファイルへのパス。
574 公式のPostgreSQL yumリポジトリのみのプロキシオプションを設定します。これは、サーバーが企業のファイアウォール内にあり、外部への接続にプロキシを使用する必要がある場合に役立ちます。
576 Debianは現在サポートされていません。
580 PostgreSQLリポジトリのbaseurlを設定します。リポジトリのミラーを所有している場合に便利です。
582 デフォルト値: 公式なPostgreSQLリポジトリ。
584 ##### `server_package_name`
586 デフォルトのPostgreSQLサーバーパッケージ名をオーバーライドします。
592 デフォルトのPostgreSQLサービス名をオーバーライドします。
596 ##### `service_provider`
598 デフォルトのPostgreSQLサービスプロバイダをオーバーライドします。
602 ##### `service_status`
604 PostgreSQLサービスのデフォルトのステータスチェックコマンドをオーバーライドします。
610 ファイルシステム内のPostgreSQL関連ファイルのデフォルトのPostgreSQLスーパーユーザおよび所有者をオーバーライドします。
616 インストールおよび管理するPostgreSQLのバージョン。
618 デフォルト値: OSシステムのデフォルト値。
622 デフォルトのPostgreSQL xlogディレクトリをオーバーライドします。
624 デフォルト値: initdbのデフォルトパス。
626 #### postgresql::lib::devel
628 PostgreSQLの開発ライブラリとシンボリックリンク`pg_config`を含むパッケージを`/usr/bin`にインストールします(`/usr/bin`または`/usr/local/bin`に存在しない場合)。
630 ##### `link_pg_config`
632 PostgreSQLページが使用するbinディレクトリが`/usr/bin`でも`/usr/local/bin`でもない場合、パッケージのbinディレクトリから`usr/bin`に`pg_config`をシンボリックリンクします(Debianシステムには適用されません)。この動作を無効にするには、`false`に設定します。
634 有効な値: `true`、`false`。
638 ##### `package_ensure`
640 パッケージのインストール中に'ensure'パラメータをオーバーライドします。
646 インストール先のディストリビューションのデフォルトパッケージ名をオーバーライドします。
648 デフォルト値: ディストリビューションに応じて、'postgresql-devel'または'postgresql<version>-devel'。
650 #### postgresql::lib::java
652 Java (JDBC)向けのPostgreSQLバインディングをインストールします。カスタムのバージョンをインストールするには、次のパラメータを設定します。
654 **注意:** カスタムのバージョンを指定する場合、必要なyumまたはaptリポジトリを忘れずに追加してください。
656 ##### `package_ensure`
658 パッケージが存在するかどうかを指定します。
660 有効な値: 'present'、'absent'。
666 PostgreSQL javaパッケージの名前を指定します。
668 #### postgresql::lib::perl
670 PostgreSQL Perlライブラリをインストールします。
672 ##### `package_ensure`
674 パッケージが存在するかどうかを指定します。
676 有効な値: 'present'、'absent'。
682 インストールするPostgreSQL perlパッケージの名前を指定します。
684 #### postgresql::server::plpython
686 PostgreSQLのPL/Python手続き型言語をインストールします。
690 postgresql PL/Pythonパッケージの名前を指定します。
692 ##### `package_ensure`
694 パッケージが存在するかどうかを指定します。
696 有効な値: 'present'、'absent'。
700 #### postgresql::lib::python
702 PostgreSQL Pythonライブラリをインストールします。
704 ##### `package_ensure`
706 パッケージが存在するかどうかを指定します。
708 有効な値: 'present'、'absent'。
714 PostgreSQL Pythonパッケージの名前。
716 #### postgresql::server
718 ##### `createdb_path`
720 **非推奨** `createdb`コマンドへのパスを指定します。
722 デフォルト値: '${bindir}/createdb'。
724 ##### `default_database`
726 接続するデフォルトのデータベースの名前を指定します。ほとんどのシステムで、'postgres'になります。
728 ##### `default_connect_settings`
730 リモートサーバーに接続する際に使用される環境変数のハッシュを指定します。他の定義タイプのデフォルトとして使用されます(`postgresql::server::role`など)。
734 このモジュールで作成されるすべてのデータベースのデフォルトエンコーディングを設定します。オペレーティングシステムによっては、`template1` の初期化にも使用されます。その場合、モジュール外部のデフォルトにもなります。
740 ファイルシステムの関連ファイルに使用されるデフォルトのpostgresユーグループをオーバーライドします。
746 `initdb`コマンドへのパスを指定します。
748 デフォルト値: '${bindir}/initdb'。
752 接続方法、ユーザ、データベース、IPv4アドレスのアクセス制御のための文字列を一覧表示します。
754 詳細については、[PostgreSQLマニュアル](http://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html)の`pg_hba.conf`の項を参照してください。
758 接続方法、ユーザ、データベース、IPv6アドレスのアクセス制御のための文字列を一覧表示します。
760 詳細については、[PostgreSQLマニュアル](http://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html)の`pg_hba.conf`の項を参照してください。
762 ##### `ip_mask_allow_all_users`
764 リモート接続に関するPostgreSQLのデフォルト動作をオーバーライドします。デフォルトでは、PostgreSQLは、データベースユーザアカウントがリモートマシンからTCP経由で接続することを許可しません。許可するには、この設定をオーバーライドします。
766 データベースユーザによる任意のリモートマシンからの接続を許可するには、'0.0.0.0/0'に設定します。ローカルの'192.168'サブネット内の任意のマシンからの接続を許可するには、'192.168.0.0/1'に設定します。
768 デフォルト値: '127.0.0.1/32'。
770 ##### `ip_mask_deny_postgres_user`
772 postgresスーパーユーザについて、リモート接続を拒否するためのIPマスクを指定します。
774 デフォルト値: '0.0.0.0/0'。デフォルト値ではリモート接続はすべて拒否されます。
778 このモジュールで作成されるすべてのデータベースのデフォルトのデータベースロケールを設定します。オペレーティングシステムによっては、`template1` の初期化にも使用されます。その場合、モジュール外部のデフォルトになります。
780 デフォルト値: `undef`、実質的には'C'。
782 **Debianでは、PostgreSQLの全機能を使用できるよう、'locales-all'パッケージがインストールされていることを確認してください。**
784 ##### `manage_pg_hba_conf`
786 `pg_hba.conf`を管理するかどうかを指定します。
788 `true`に設定すると、Puppetはこのファイルを上書きします。
790 `false`に設定すると、Puppetはこのファイルに変更を加えません。
792 有効な値: `true`、`false`。
796 ##### `manage_pg_ident_conf`
798 pg_ident.confファイルを上書きします。
800 `true`に設定すると、Puppetはこのファイルを上書きします。
802 `false`に設定すると、Puppetはこのファイルに変更を加えません。
804 有効な値: `true`、`false`。
808 ##### `manage_recovery_conf`
810 `recovery.conf`を管理するかどうかを指定します。
812 `true`に設定すると、Puppetはこのファイルを上書きします。
814 有効な値: `true`、`false`。
820 サーバーパッケージをインストール後、PostgreSQLサービスを開始する前に、`initdb`動作を明示的に呼び出します。
824 ##### `package_ensure`
826 サーバーインスタンスを作成するときに、`package`リソースに値を受け渡します。
832 サーバーソフトウェアをインストールするときに使用するパッケージの名前を指定します。
836 ##### `pg_hba_conf_defaults`
838 `false`に設定すると、`pg_hba.conf`についてモジュールに設定されたデフォルト値を無効にします。これは、デフォルト値を使用せずにオーバーライドするときに役立ちます。だし、基本的な`psql`動作などを実行するには一定のアクセスが要求されるので、ここでの変更内容がその他のモジュールと矛盾しないように注意してください。
840 ##### `pg_hba_conf_path`
842 `pg_hba.conf`ファイルへのパスを指定します。
844 ##### `pg_ident_conf_path`
846 `pg_ident.conf`ファイルへのパスを指定します。
848 デフォルト値: '${confdir}/pg_ident.conf'。
850 ##### `plperl_package_name`
852 PL/Perl拡張のデフォルトパッケージ名を設定します。
856 ##### `plpython_package_name`
858 PL/Python拡張のデフォルトパッケージ名を設定します。
864 PostgreSQLサーバーがリッスンするポートを指定します。**注意:** サーバーがリッスンする全IPアドレスで、同一のポート番号が使用されます。また、Red Hatシステムと初期のDebianシステムでは、ポート番号を変更するとき、変更実行前にサーバーが完全停止します。
866 デフォルト値: 5432。これは、PostgresサーバーがTCPポート5432をリッスンすることを意味します。
868 ##### `postgres_password`
870 postgresユーザのパスワードを特定の値に設定します。デフォルトでは、この設定はPostgresデータベース内のスーパーユーザアカウント(ユーザ名`postgres`、パスワードなし)を使用します。
874 ##### `postgresql_conf_path`
876 `postgresql.conf`ファイルへのパスを指定します。
878 デフォルト値: '${confdir}/postgresql.conf'。
882 `psql`コマンドへのパスを指定します。
886 ##### `service_manage`
888 Puppetがサービスを管理するかどうかを定義します。
894 デフォルトのPostgreSQLサービス名をオーバーライドします。
898 ##### `service_provider`
900 デフォルトのPostgreSQLサービスプロバイダをオーバーライドします。
904 ##### `service_reload`
906 PostgreSQLサービスのデフォルトのリロードコマンドをオーバーライドします。
910 ##### `service_restart_on_change`
912 設定変更をアクティブにするにはサービスの再起動が必要な設定エントリが変更された場合に、PostgreSQLサービスを再起動する際のデフォルト動作をオーバーライドします。
916 ##### `service_status`
918 PostgreSQLサービスのデフォルトのステータスチェックコマンドをオーバーライドします。
924 ファイルシステム内のPostgreSQL関連ファイルのデフォルトのPostgreSQLスーパーユーザおよびオーナーをオーバーライドします。
928 #### postgresql::server::contrib
930 PostgreSQL contribパッケージをインストールします。
932 ##### `package_ensure`
934 PostgreSQL contribパッケージリソースに受け渡されたensureパラメータを設定します。
938 PostgreSQL contribパッケージの名前。
940 #### postgresql::server::plperl
942 postgresqlのPL/Perl手続き型言語をインストールします。
944 ##### `package_ensure`
946 PostgreSQL PL/Perlパッケージリソースに受け渡されたensureパラメータ。
950 PostgreSQL PL/Perlパッケージの名前。
952 #### postgresql::server::postgis
954 PostgreSQL postgisパッケージをインストールします。
958 #### postgresql::server::config_entry
960 `postgresql.conf`設定ファイルを変更します。
962 各リソースは、次の例のようにファイル内の各行にマッピングされています。
965 postgresql::server::config_entry { 'check_function_bodies':
972 'absent'に設定した場合、エントリを削除します。
974 有効な値: 'present'、'absent'。
982 #### postgresql::server::db
984 ローカルのデータベース、ユーザを作成し、必要なパーミッションを割り当てます。
988 PostgreSQLのCOMMENTコマンドを使用して、データベースについて保存するコメントを定義します。
990 ##### `connect_settings`
992 リモートサーバーに接続する際に使用される環境変数のハッシュを指定します。
994 デフォルト値: ローカルのPostgresインスタンスに接続します。
1004 データベースの作成中の文字セットをオーバーライドします。
1006 デフォルト値: インストール時に定義されたデフォルト値。
1010 作成中に付与するパーミッションを指定します。
1016 `true`に設定すると、そのデータベースをテンプレートとして指定します。
1022 データベース作成中にロケールをオーバーライドします。
1024 デフォルト値: インストール時に定義されたデフォルト値。
1028 ユーザをデータベースの所有者として設定します。
1030 デフォルト値: `postgresql::server`または`postgresql::globals`で設定された'$user'変数。
1034 **必須** 作成されたユーザのパスワードを設定します。
1038 作成したデータベースを割り当てるテーブル空間の名前を定義します。
1040 デフォルト値: PostgreSQLのデフォルト値。
1044 このデータベースを構築する際にテンプレートとして使用するデータベースの名前を指定します。
1046 デフォルト値: `template0`。
1050 データベースを作成し、作成後にデータベースへのアクセスを割り当てるユーザ。必須指定です。
1052 #### postgresql::server::database
1054 ユーザなし、パーミッションなしのデータベースを作成します。
1064 データベースの作成中の文字セットをオーバーライドします。
1066 デフォルト値: インストール時に定義されたデフォルト値。
1070 `true`に設定すると、そのデータベースをテンプレートとして定義します。
1076 データベース作成中にロケールをオーバーライドします。
1078 デフォルト値: インストール時に定義されたデフォルト値。
1084 デフォルト値: `postgresql::server`または`postgresql::globals`で設定された'$user'変数。
1088 このデータベースを作成するテーブル空間を設定します。
1090 デフォルト値: インストール時に定義されたデフォルト値。
1094 このデータベースを構築する際にテンプレートとして使用するデータベースの名前を指定します。
1096 デフォルト値: 'template0'。
1098 #### postgresql::server::database_grant
1100 データベース固有のパーミッションについて`postgresql::server::database_grant`をラッピングして、grantベースのユーザアクセス権を管理します。詳細については、[PostgreSQLマニュアルの`grant`](http://www.postgresql.org/docs/current/static/sql-grant.html)を参照してください。
1102 #### `connect_settings`
1104 リモートサーバーに接続する際に使用される環境変数のハッシュを指定します。
1106 デフォルト値: ローカルのPostgresインスタンスに接続します。
1110 アクセス権を付与するデータベースを指定します。
1114 付与する権限のコンマ区切りリストを指定します。
1116 有効なオプション: 'ALL'、'CREATE'、'CONNECT'、'TEMPORARY'、'TEMP'。
1120 権限付与を実行するデータベースを定義します。
1122 **通常、デフォルトを変更しないでください。**
1128 `psql`を実行するOSユーザを指定します。
1130 デフォルト値: モジュールのデフォルトユーザ。通常、'postgres'。
1134 アクセスを付与するロールまたはユーザを指定します。
1136 #### postgresql::server::extension
1142 拡張を有効化するデータベースを指定します。
1146 拡張を有効化するか無効化するかを指定します。
1148 有効なオプション: 'present'または'absent'。
1152 有効化する拡張を指定します。空欄にした場合、リソースの名前が使用されます。
1154 ##### `package_name`
1156 拡張を有効化する前にインストールするパッケージを指定します。
1158 ##### `package_ensure`
1160 デフォルトのパッケージ削除動作をオーバーライドします。
1162 デフォルトでは、`package_name`で指定されたパッケージが、拡張が有効のときインストールされ、拡張が無効のとき削除されます。この動作をオーバーライドするには、そのパッケージに`ensure`の値を設定してください。
1164 #### postgresql::server::grant
1166 ロールのgrantベースのアクセス権を管理します。詳細については、[PostgreSQLマニュアルの`grant`](http://www.postgresql.org/docs/current/static/sql-grant.html)を参照してください。
1170 アクセス権を付与するデータベースを指定します。
1174 権限を付与するオブジェクトのタイプを指定します。
1176 有効なオプション: 'DATABASE'、'SCHEMA'、'SEQUENCE'、'ALL SEQUENCES IN SCHEMA'、'TABLE'、または'ALL TABLES IN SCHEMA'。
1180 アクセス権を付与する`object_type`の名前を指定します。
1186 デフォルト値: `undef`。PostgreSQLのパッケージングに応じて、通常、デフォルトでポート5432になります。
1192 有効なオプション: 'ALL'、'ALL PRIVILEGES'、または'object_type'依存の文字列。
1196 権限付与を実行するデータベースを指定します。
1198 **通常、デフォルトを変更しないでください。**
1204 `psql`を実行するOSユーザを設定します。
1206 デフォルト値: モジュールのデフォルトユーザ。通常、'postgres'。
1210 アクセスを付与するロールまたはユーザを指定します。
1212 #### postgresql::server::grant_role
1214 ロールを(グループ)ロールに割り当てられるようにします。詳細については、[PostgreSQLマニュアルの`Role Membership`](http://www.postgresql.org/docs/current/static/role-membership.html)を参照してください。
1218 ロールを割り当てるグループロールを指定します。
1222 グループに割り当てるロールを指定します。空欄にした場合、リソースの名前が使用されます。
1226 メンバーシップを付与するか、無効化するかを指定します。
1228 有効なオプション: 'present'または'absent'。
1236 デフォルト値: `undef`。PostgreSQLのパッケージングに応じて、通常、デフォルトでポート5432になります。
1240 権限付与を実行するデータベースを指定します。
1242 **通常、デフォルトを変更しないでください。**
1248 `psql`を実行するOSユーザを設定します。
1250 デフォルト値: モジュールのデフォルトユーザ。通常、`postgres`。
1252 ##### `connect_settings`
1254 リモートサーバーに接続する際に使用される環境変数のハッシュを指定します。
1256 デフォルト値: ローカルのPostgresインスタンスに接続します。
1258 #### postgresql::server::pg_hba_rule
1260 `pg_hba.conf`のアクセスルールを作成できるようにします。詳細については、[使用例](#create-an-access-rule-for-pghba.conf)および[PostgreSQLマニュアル](http://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html)を参照してください。
1264 タイプが'local'ではないとき、このルール一致に対するCIDRベースのアドレスを設定します。
1268 このルールが一致する接続の認証に使用される方法を提供します。詳細な説明は、PostgreSQL `pg_hba.conf`のマニュアルに記載されています。
1272 特定の`auth_method`設定については、受け渡し可能な追加オプションがあります。詳細については、PostgreSQL `pg_hba.conf`マニュアルを参照してください。
1276 このルールが一致するデータベースのコンマ区切りリストを設定します。
1280 必要に応じて、このルールの長めの説明を定義します。この説明は、`pg_hba.conf`のルール上部のコメント内に挿入されます。
1284 そのリソースを一意に識別するための方法を指定しますが、機能的には何も実行しません。
1288 `pg_hba.conf`にルールを配置する順序を設定します。
1292 #### `postgresql_version`
1294 PostgreSQLインスタンス全体を管理することなく、`pg_hba.conf`を管理します。
1296 デフォルト値: `postgresql::server`に設定されたバージョン。
1300 ルールのターゲットを提供します。通常、内部使用のみのプロパティです。
1308 有効なオプション: 'local'、'host'、'hostssl'、または'hostnossl'。
1312 このルールが一致するユーザのコンマ区切りリストを設定します。
1315 #### postgresql::server::pg_ident_rule
1317 `pg_ident.conf`のユーザ名マップを作成可能にします。詳細については、上述の[使用例](#create-user-name-maps-for-pgidentconf)および[PostgreSQLマニュアル](http://www.postgresql.org/docs/current/static/auth-username-maps.html)を参照してください。
1319 ##### `database_username`
1321 データベースユーザのユーザ名を指定します。このユーザ名には`system_username`がマッピングされています。
1325 必要に応じて、このルールの長めの説明を設定します。この説明は、`pg_ident.conf`のルール上部のコメント内に挿入されます。
1331 `pg_hba.conf`でこのマッピングを参照するために使用されるユーザマップの名前を設定します。
1335 `pg_ident.conf`にマッピングを配置する際の順序を定義します。
1339 ##### `system_username`
1341 オペレーティングシステムのユーザ名(データベースへの接続に使用するユーザ名)を指定します。
1345 ルールのターゲットを提供します。通常、内部使用のみのプロパティです。
1349 #### postgresql::server::recovery
1351 `recovery.conf`の内容を作成可能にします。詳細については、[使用例](#create-recovery-configuration)および[PostgreSQLマニュアル](http://www.postgresql.org/docs/current/static/recovery-config.html)を参照してください。
1353 `recovery_target_inclusive`、 `pause_at_recovery_target`、`standby_mode`、`recovery_min_apply_delay`を除くすべてのパラメータ値は、テンプレートに含まれる文字列セットです。
1355 全パラメータリストの詳細な説明は、[PostgreSQLマニュアル](http://www.postgresql.org/docs/current/static/recovery-config.html)にあります。
1357 パラメータは、次の3つのセクションにグループ分けされています。
1359 ##### [アーカイブリカバリパラメータ](http://www.postgresql.org/docs/current/static/archive-recovery-settings.html)
1362 * `archive_cleanup_command`
1363 * `recovery_end_command`
1365 ##### [リカバリターゲット設定](http://www.postgresql.org/docs/current/static/recovery-target-settings.html)
1366 * `recovery_target_name`
1367 * `recovery_target_time`
1368 * `recovery_target_xid`
1369 * `recovery_target_inclusive`
1371 * `recovery_target_timeline`
1372 * `pause_at_recovery_target`
1374 ##### [スタンバイサーバー設定](http://www.postgresql.org/docs/current/static/standby-settings.html)
1375 * `standby_mode`: 文字列('on'/'off')またはブール値(`true`/`false`)で指定できます。
1376 * `primary_conninfo`
1377 * `primary_slot_name`
1379 * `recovery_min_apply_delay`
1382 ルールのターゲットを提供します。通常、内部使用のみのプロパティです。
1386 #### postgresql::server::role
1387 PostgreSQLのロールまたはユーザを作成します。
1389 ##### `connection_limit`
1390 ロールが同時に接続可能な数を指定します。
1392 デフォルト値: '-1'。これは、無制限を意味します。
1394 ##### `connect_settings`
1395 リモートサーバーに接続する際に使用される環境変数のハッシュを指定します。
1397 デフォルト値: ローカルのPostgresインスタンスに接続します。
1400 このロールに新しいデータベースを作成する能力を付与するかどうかを指定します。
1405 このロールに新しいロールを作成する権限を付与するかどうかを指定します。
1410 新しいロールに継承権限を付与するかどうかを指定します。
1415 新しいロールにログイン権限を付与するかどうかを指定します。
1419 ##### `password_hash`
1420 パスワード作成中に使用するハッシュを設定します。PostgreSQLがサポートする形式でパスワードが暗号化されていない場合、ここで、`postgresql_password`関数を使用して、MD5ハッシュを提供します。例は次のとおりです。
1422 ##### `update_password`
1423 trueに設定すると、変更時にパスワードが更新されます。作成後にロールのパスワードを変更しない場合は、falseに設定してください。
1426 postgresql::server::role { 'myusername':
1427 password_hash => postgresql_password('myusername', 'mypassword'),
1433 `true`に設定すると、このロールにレプリケーション機能が提供されます。
1439 新しいロールにスーパーユーザ権限を付与するかどうかを指定します。
1449 #### postgresql::server::schema
1453 ##### `connect_settings`
1455 リモートサーバーに接続する際に使用される環境変数のハッシュを指定します。
1457 デフォルト値: ローカルのPostgresインスタンスに接続します。
1463 このスキーマを作成するデータベースの名前を設定します。
1467 スキーマのデフォルト所有者を設定します。
1475 #### postgresql::server::table_grant
1477 ユーザのgrantベースのアクセス権を管理します。詳細については、PostgreSQLマニュアルの`grant`の項を参照してください。
1479 ##### `connect_settings`
1481 リモートサーバーへの接続時に使用する環境変数のハッシュを指定します。
1483 デフォルト値: ローカルのPostgresインスタンスに接続します。
1487 そのテーブルが存在するデータベースを指定します。
1491 付与する権限のコンマ区切りリストを指定します。有効なオプション: 'ALL'、'SELECT'、'INSERT'、'UPDATE'、'DELETE'、'TRUNCATE'、'REFERENCES'、'TRIGGER'。
1495 権限付与を実行するデータベースを指定します。
1497 通常、デフォルトを変更しないでください。
1503 `psql`を実行するOSユーザを指定します。
1505 デフォルト値: モジュールのデフォルトユーザ。通常、'postgres'。
1509 アクセスを付与するロールまたはユーザを指定します。
1513 アクセス権を付与するテーブルを指定します。
1515 #### postgresql::server::tablespace
1517 テーブル空間を作成します。必要な場合、場所も作成し、PostgreSQLサーバーと同じパーミッションを割り当てます。
1519 ##### `connect_settings`
1521 リモートサーバーへの接続時に使用する環境変数のハッシュを指定します。
1523 デフォルト値: ローカルのPostgresインスタンスに接続します。
1531 そのテーブル空間のデフォルト所有者を指定します。
1541 #### postgresql_psql
1543 Puppetがpsqlステートメントを実行できるようにします。
1549 psqlを介して実行するSQLコマンドを指定します。
1553 psqlコマンドが実行される作業ディレクトリを指定します。
1559 SQLコマンドを実行するデータベースの名前を指定します。
1563 SQLコマンドに対して追加の環境変数を設定する場合に指定します。複数の環境変数を使用する場合は、配列として指定します。
1567 自身の参考用の任意のタグ、すなわちメッセージの名前を設定します。これはnamevarです。
1571 メインのコマンドの前に実行するオプションのSQLコマンドを設定します。通常、これはべき等性に基づいて、データベース内のオブジェクトの存在を確認し、メインのSQLコマンドを実行する必要があるかどうかを判断するため使用されます。
1575 SQLコマンドを実行するデータベースサーバーのポートを指定します。
1579 psqlコマンドを実行するシステムユーザグループアカウントを指定します。
1585 psql実行ファイルへのパスを指定します。
1591 psqlコマンドを実行するシステムユーザアカウントを指定します。
1597 notifyイベントまたはsubscribeイベントが発生したときのみSQLを実行するかどうかを指定します。
1599 有効な値: `true`、`false`。
1605 SQLコマンドを実行するときに使用するスキーマ検索パスを定義します。
1611 #### postgresql_conf
1613 Puppetが`postgresql.conf`パラメータを管理できるようにします。
1617 管理するPostgreSQLパラメータ名を指定します。
1623 `postgresql.conf`へのパスを指定します。
1625 デフォルト値: '/etc/postgresql.conf'。
1629 このパラメータに設定する値を指定します。
1631 #### postgresql_replication_slot
1633 PostgreSQLマスターサーバー上でウォームスタンバイレプリケーションを登録するためのレプリケーションスロットを作成および消去できるようにします。
1637 作成するスロットの名前を指定します。有効なレプリケーションスロット名である必要があります。
1641 #### postgresql_conn_validator
1643 このタイプを使用するローカルまたはリモートのPostgreSQLデータベースへの接続を検証します。
1645 ##### `connect_settings`
1647 リモートサーバーへの接続時に使用する環境変数のハッシュを指定します。個々のパラメータ(`host`など)を設定する代わりに使用されますが、個々のパラメータが設定されている場合は個々のパラメータが優先されます。
1653 テストするデータベースの名前を指定します。Specifies the name of the database you wish to test.
1659 接続するパスワードを指定します。`.pgpass`が使用されている場合は空欄にできます。それ以外の場合、空欄にすることは推奨されません。
1669 Unixソケットとident認証を使用するとき、このユーザとして実行されます。
1673 接続性を検証するためにターゲットデータベースで実行されるコマンドです。
1679 テストするデータベースのホスト名を設定します。
1681 デフォルト値: ''。これは、通常指定されたローカルUnixソケットを使用します。
1683 **ホストがリモートの場合、ユーザ名を指定する必要があります。**
1687 接続するときに使用するポートを定義します。
1693 `psql`コマンドの実行ユーザを指定します。これは、Unixソケットと`ident`認証を使用してローカルにデータベースに接続するときに重要です。リモートテストには必要ありません。
1697 失敗した後、再試行する前にスリープする時間を秒単位で設定します。
1701 失敗した後、リソースを失敗とみなすまで再試行する回数を設定します。
1705 #### postgresql_password
1707 PostgreSQL暗号化パスワードを生成します。次のように、`postgresql_password`をコマンドラインから呼び出し、暗号化されたパスワードをマニフェストにコピーペーストします。
1710 puppet apply --execute 'notify { 'test': message => postgresql_password('username', 'password') }'
1713 本番マニフェストからこの関数を呼び出すことも可能ですが、その場合、マニフェストには暗号化していない平文のパスワードを含める必要があります。
1715 #### postgresql_acls_to_resources_hash(acl_array, id, order_offset)
1717 この内部関数は、`pg_hba.conf`ベースのACLのリスト(文字列の配列として受け渡されたもの)を`postgresql::pg_hba_rule`リソースと互換性のある形式に変換します。
1719 **この関数は、モジュールによる内部的な使用のみ可能です。**
1723 PostgreSQLのバージョン8.1~9.5で動作します。
1725 現在、postgresqlモジュールは次のオペレーティングシステムでテスト済みです。
1727 * Debian 6.x、7.x、8.x。
1728 * CentOS 5.x、6.x、7.x。
1729 * Ubuntu 10.04および12.04、14.04。
1731 その他のシステムとも互換性がある可能性がありますが、積極的なテストは行っておりません。
1735 このモジュールは1.xと2.x両方のバージョンの'puppetlabs-apt'モジュールをサポートしていますが、'puppetlabs-apt'の2.0.0と2.0.1はサポートしていません。
1739 PostGISは、現時点ではすべてのプラットフォームで正常に動作するわけではないため、サポート対象外の機能とみなします。
1741 ### すべてのバージョンのRHEL/CentOS
1743 SELinuxが有効化されている場合、次の方法で`postgresql_port_t`コンテキストに使用中のカスタムポートを追加する必要があります。
1746 semanage port -a -t postgresql_port_t -p tcp $customport
1751 Puppet Forgeに公開されているPuppet Labsモジュールはオープンプロジェクトのため、維持するにはコミュニティの貢献が不可欠です。Puppetは、現在私たちがアクセスできない無数のプラットフォームやハードウェア、ソフトウェア、デプロイ構成にも利用されることを目的としています。私たちの目標は、できる限り簡単に変更に貢献し、みなさまの環境で私たちのモジュールが機能できるようにすることです。最高の状態を維持するため、コントリビュータにはいくつかのガイドラインを守っていただく必要があります。詳細については、[モジュールコントリビューションガイド](https://docs.puppetlabs.com/forge/contributing.html)を参照してください。
1755 このモジュールには、2種類のテストが配布されています。`rspec-puppet`のユニットテストと、`rspec-system`を使用したシステムテストです。
1757 ユニットテストを実行するには、以下がインストールされていることを確認してください。
1762 次のように、必要なgemをインストールします。
1765 bundle install --path=vendor
1768 そして、次のように記述して、ユニットテストを実行します。
1771 bundle exec rake spec
1774 ユニットテストは、Travis-CIでも実行されます。自身のテスト結果を確認するには、このプロジェクトのご自身のGitHubクローンのアカウントセクションから、Travis-CIを介してサービスフックを登録してください。
1776 システムテストを実行するには、以下のツールもインストールされていることを確認してください。
1779 * VirtualBox > 4.2.10
1784 bundle exec rspec spec/acceptance
1787 異なるオペレーティングシステムでテストを実行するには、`.nodeset.yml`で利用可能なセットを確認して、次の構文で特定のセットを実行します。
1790 RSPEC_SET=debian-607-x64 bundle exec rspec spec/acceptance
1795 貢献してくださった方々の一覧を[Github](https://github.com/puppetlabs/puppetlabs-postgresql/graphs/contributors)でご覧いただけます。