dreamcat4-moonshadow 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. data/LICENSE +165 -0
  2. data/app_generators/moonshine/moonshine_generator.rb +154 -0
  3. data/app_generators/moonshine/templates/Capfile +3 -0
  4. data/app_generators/moonshine/templates/rails/deploy.rb +3 -0
  5. data/app_generators/moonshine/templates/rails/gems.yml +1 -0
  6. data/app_generators/moonshine/templates/rails/manifest.rb +55 -0
  7. data/app_generators/moonshine/templates/rails/moonshine.rake +83 -0
  8. data/app_generators/moonshine/templates/rails/moonshine.yml +43 -0
  9. data/app_generators/moonshine/templates/readme.templates +5 -0
  10. data/app_generators/moonshine_plugin/USAGE +8 -0
  11. data/app_generators/moonshine_plugin/moonshine_plugin_generator.rb +39 -0
  12. data/app_generators/moonshine_plugin/templates/README.rdoc +14 -0
  13. data/app_generators/moonshine_plugin/templates/init.rb +3 -0
  14. data/app_generators/moonshine_plugin/templates/plugin.rb +19 -0
  15. data/app_generators/moonshine_plugin/templates/spec.rb +24 -0
  16. data/app_generators/moonshine_plugin/templates/spec_helper.rb +8 -0
  17. data/bin/moonshine +17 -0
  18. data/bin/moonshine_plugin +17 -0
  19. data/lib/moonshine.rb +7 -0
  20. data/lib/moonshine/bootstrap/bootstrap.mri.sh +21 -0
  21. data/lib/moonshine/bootstrap/bootstrap.ree.sh +34 -0
  22. data/lib/moonshine/capistrano.rb +242 -0
  23. data/lib/moonshine/manifest.rb +151 -0
  24. data/lib/moonshine/manifest/rails.rb +54 -0
  25. data/lib/moonshine/manifest/rails/apache.rb +99 -0
  26. data/lib/moonshine/manifest/rails/apt_gems.yml +32 -0
  27. data/lib/moonshine/manifest/rails/mysql.rb +79 -0
  28. data/lib/moonshine/manifest/rails/os.rb +115 -0
  29. data/lib/moonshine/manifest/rails/passenger.rb +93 -0
  30. data/lib/moonshine/manifest/rails/postgresql.rb +83 -0
  31. data/lib/moonshine/manifest/rails/rails.rb +237 -0
  32. data/lib/moonshine/manifest/rails/sqlite3.rb +8 -0
  33. data/lib/moonshine/manifest/rails/templates/innodb.cnf.erb +6 -0
  34. data/lib/moonshine/manifest/rails/templates/logrotate.conf.erb +15 -0
  35. data/lib/moonshine/manifest/rails/templates/moonshine.cnf.erb +63 -0
  36. data/lib/moonshine/manifest/rails/templates/passenger.conf.erb +106 -0
  37. data/lib/moonshine/manifest/rails/templates/passenger.vhost.erb +273 -0
  38. data/lib/moonshine/manifest/rails/templates/pg_hba.conf.erb +83 -0
  39. data/lib/moonshine/manifest/rails/templates/postgresql.conf.erb +493 -0
  40. data/lib/moonshine/manifest/rails/templates/unattended_upgrades.erb +18 -0
  41. data/lib/moonshine_setup_manifest.rb +39 -0
  42. metadata +135 -0
@@ -0,0 +1,493 @@
1
+ # -----------------------------
2
+ # PostgreSQL configuration file
3
+ # -----------------------------
4
+ #
5
+ # This file consists of lines of the form:
6
+ #
7
+ # name = value
8
+ #
9
+ # (The "=" is optional.) Whitespace may be used. Comments are introduced with
10
+ # "#" anywhere on a line. The complete list of parameter names and allowed
11
+ # values can be found in the PostgreSQL documentation.
12
+ #
13
+ # The commented-out settings shown in this file represent the default values.
14
+ # Re-commenting a setting is NOT sufficient to revert it to the default value;
15
+ # you need to reload the server.
16
+ #
17
+ # This file is read on server startup and when the server receives a SIGHUP
18
+ # signal. If you edit the file on a running system, you have to SIGHUP the
19
+ # server for the changes to take effect, or use "pg_ctl reload". Some
20
+ # parameters, which are marked below, require a server shutdown and restart to
21
+ # take effect.
22
+ #
23
+ # Any parameter can also be given as a command-line option to the server, e.g.,
24
+ # "postgres -c log_connections=on". Some paramters can be changed at run time
25
+ # with the "SET" SQL command.
26
+ #
27
+ # Memory units: kB = kilobytes MB = megabytes GB = gigabytes
28
+ # Time units: ms = milliseconds s = seconds min = minutes h = hours d = days
29
+
30
+
31
+ #------------------------------------------------------------------------------
32
+ # FILE LOCATIONS
33
+ #------------------------------------------------------------------------------
34
+
35
+ # The default values of these variables are driven from the -D command-line
36
+ # option or PGDATA environment variable, represented here as ConfigDir.
37
+
38
+ data_directory = '/var/lib/postgresql/8.3/main' # use data in another directory
39
+ # (change requires restart)
40
+ hba_file = '/etc/postgresql/8.3/main/pg_hba.conf' # host-based authentication file
41
+ # (change requires restart)
42
+ ident_file = '/etc/postgresql/8.3/main/pg_ident.conf' # ident configuration file
43
+ # (change requires restart)
44
+
45
+ # If external_pid_file is not explicitly set, no extra PID file is written.
46
+ external_pid_file = '/var/run/postgresql/8.3-main.pid' # write an extra PID file
47
+ # (change requires restart)
48
+
49
+
50
+ #------------------------------------------------------------------------------
51
+ # CONNECTIONS AND AUTHENTICATION
52
+ #------------------------------------------------------------------------------
53
+
54
+ # - Connection Settings -
55
+
56
+ #listen_addresses = 'localhost' # what IP address(es) to listen on;
57
+ # comma-separated list of addresses;
58
+ # defaults to 'localhost', '*' = all
59
+ # (change requires restart)
60
+ port = 5432 # (change requires restart)
61
+ max_connections = 100 # (change requires restart)
62
+ # Note: Increasing max_connections costs ~400 bytes of shared memory per
63
+ # connection slot, plus lock space (see max_locks_per_transaction). You might
64
+ # also need to raise shared_buffers to support more connections.
65
+ #superuser_reserved_connections = 3 # (change requires restart)
66
+ unix_socket_directory = '/var/run/postgresql' # (change requires restart)
67
+ #unix_socket_group = '' # (change requires restart)
68
+ #unix_socket_permissions = 0777 # begin with 0 to use octal notation
69
+ # (change requires restart)
70
+ #bonjour_name = '' # defaults to the computer name
71
+ # (change requires restart)
72
+
73
+ # - Security and Authentication -
74
+
75
+ #authentication_timeout = 1min # 1s-600s
76
+ ssl = true # (change requires restart)
77
+ #ssl_ciphers = 'ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH' # allowed SSL ciphers
78
+ # (change requires restart)
79
+ #password_encryption = on
80
+ #db_user_namespace = off
81
+
82
+ # Kerberos and GSSAPI
83
+ #krb_server_keyfile = '' # (change requires restart)
84
+ #krb_srvname = 'postgres' # (change requires restart, Kerberos only)
85
+ #krb_server_hostname = '' # empty string matches any keytab entry
86
+ # (change requires restart, Kerberos only)
87
+ #krb_caseins_users = off # (change requires restart)
88
+ #krb_realm = '' # (change requires restart)
89
+
90
+ # - TCP Keepalives -
91
+ # see "man 7 tcp" for details
92
+
93
+ #tcp_keepalives_idle = 0 # TCP_KEEPIDLE, in seconds;
94
+ # 0 selects the system default
95
+ #tcp_keepalives_interval = 0 # TCP_KEEPINTVL, in seconds;
96
+ # 0 selects the system default
97
+ #tcp_keepalives_count = 0 # TCP_KEEPCNT;
98
+ # 0 selects the system default
99
+
100
+
101
+ #------------------------------------------------------------------------------
102
+ # RESOURCE USAGE (except WAL)
103
+ #------------------------------------------------------------------------------
104
+
105
+ # - Memory -
106
+
107
+ shared_buffers = 24MB # min 128kB or max_connections*16kB
108
+ # (change requires restart)
109
+ #temp_buffers = 8MB # min 800kB
110
+ #max_prepared_transactions = 5 # can be 0 or more
111
+ # (change requires restart)
112
+ # Note: Increasing max_prepared_transactions costs ~600 bytes of shared memory
113
+ # per transaction slot, plus lock space (see max_locks_per_transaction).
114
+ #work_mem = 1MB # min 64kB
115
+ #maintenance_work_mem = 16MB # min 1MB
116
+ #max_stack_depth = 2MB # min 100kB
117
+
118
+ # - Free Space Map -
119
+
120
+ max_fsm_pages = 153600 # min max_fsm_relations*16, 6 bytes each
121
+ # (change requires restart)
122
+ #max_fsm_relations = 1000 # min 100, ~70 bytes each
123
+ # (change requires restart)
124
+
125
+ # - Kernel Resource Usage -
126
+
127
+ #max_files_per_process = 1000 # min 25
128
+ # (change requires restart)
129
+ #shared_preload_libraries = '' # (change requires restart)
130
+
131
+ # - Cost-Based Vacuum Delay -
132
+
133
+ #vacuum_cost_delay = 0 # 0-1000 milliseconds
134
+ #vacuum_cost_page_hit = 1 # 0-10000 credits
135
+ #vacuum_cost_page_miss = 10 # 0-10000 credits
136
+ #vacuum_cost_page_dirty = 20 # 0-10000 credits
137
+ #vacuum_cost_limit = 200 # 1-10000 credits
138
+
139
+ # - Background Writer -
140
+
141
+ #bgwriter_delay = 200ms # 10-10000ms between rounds
142
+ #bgwriter_lru_maxpages = 100 # 0-1000 max buffers written/round
143
+ #bgwriter_lru_multiplier = 2.0 # 0-10.0 multipler on buffers scanned/round
144
+
145
+
146
+ #------------------------------------------------------------------------------
147
+ # WRITE AHEAD LOG
148
+ #------------------------------------------------------------------------------
149
+
150
+ # - Settings -
151
+
152
+ #fsync = on # turns forced synchronization on or off
153
+ #synchronous_commit = on # immediate fsync at commit
154
+ #wal_sync_method = fsync # the default is the first option
155
+ # supported by the operating system:
156
+ # open_datasync
157
+ # fdatasync
158
+ # fsync
159
+ # fsync_writethrough
160
+ # open_sync
161
+ #full_page_writes = on # recover from partial page writes
162
+ #wal_buffers = 64kB # min 32kB
163
+ # (change requires restart)
164
+ #wal_writer_delay = 200ms # 1-10000 milliseconds
165
+
166
+ #commit_delay = 0 # range 0-100000, in microseconds
167
+ #commit_siblings = 5 # range 1-1000
168
+
169
+ # - Checkpoints -
170
+
171
+ #checkpoint_segments = 3 # in logfile segments, min 1, 16MB each
172
+ #checkpoint_timeout = 5min # range 30s-1h
173
+ #checkpoint_completion_target = 0.5 # checkpoint target duration, 0.0 - 1.0
174
+ #checkpoint_warning = 30s # 0 is off
175
+
176
+ # - Archiving -
177
+
178
+ #archive_mode = off # allows archiving to be done
179
+ # (change requires restart)
180
+ #archive_command = '' # command to use to archive a logfile segment
181
+ #archive_timeout = 0 # force a logfile segment switch after this
182
+ # time; 0 is off
183
+
184
+
185
+ #------------------------------------------------------------------------------
186
+ # QUERY TUNING
187
+ #------------------------------------------------------------------------------
188
+
189
+ # - Planner Method Configuration -
190
+
191
+ #enable_bitmapscan = on
192
+ #enable_hashagg = on
193
+ #enable_hashjoin = on
194
+ #enable_indexscan = on
195
+ #enable_mergejoin = on
196
+ #enable_nestloop = on
197
+ #enable_seqscan = on
198
+ #enable_sort = on
199
+ #enable_tidscan = on
200
+
201
+ # - Planner Cost Constants -
202
+
203
+ #seq_page_cost = 1.0 # measured on an arbitrary scale
204
+ #random_page_cost = 4.0 # same scale as above
205
+ #cpu_tuple_cost = 0.01 # same scale as above
206
+ #cpu_index_tuple_cost = 0.005 # same scale as above
207
+ #cpu_operator_cost = 0.0025 # same scale as above
208
+ #effective_cache_size = 128MB
209
+
210
+ # - Genetic Query Optimizer -
211
+
212
+ #geqo = on
213
+ #geqo_threshold = 12
214
+ #geqo_effort = 5 # range 1-10
215
+ #geqo_pool_size = 0 # selects default based on effort
216
+ #geqo_generations = 0 # selects default based on effort
217
+ #geqo_selection_bias = 2.0 # range 1.5-2.0
218
+
219
+ # - Other Planner Options -
220
+
221
+ #default_statistics_target = 10 # range 1-1000
222
+ #constraint_exclusion = off
223
+ #from_collapse_limit = 8
224
+ #join_collapse_limit = 8 # 1 disables collapsing of explicit
225
+ # JOIN clauses
226
+
227
+
228
+ #------------------------------------------------------------------------------
229
+ # ERROR REPORTING AND LOGGING
230
+ #------------------------------------------------------------------------------
231
+
232
+ # - Where to Log -
233
+
234
+ #log_destination = 'stderr' # Valid values are combinations of
235
+ # stderr, csvlog, syslog and eventlog,
236
+ # depending on platform. csvlog
237
+ # requires logging_collector to be on.
238
+
239
+ # This is used when logging to stderr:
240
+ #logging_collector = off # Enable capturing of stderr and csvlog
241
+ # into log files. Required to be on for
242
+ # csvlogs.
243
+ # (change requires restart)
244
+
245
+ # These are only used if logging_collector is on:
246
+ #log_directory = 'pg_log' # directory where log files are written,
247
+ # can be absolute or relative to PGDATA
248
+ #log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log' # log file name pattern,
249
+ # can include strftime() escapes
250
+ #log_truncate_on_rotation = off # If on, an existing log file of the
251
+ # same name as the new log file will be
252
+ # truncated rather than appended to.
253
+ # But such truncation only occurs on
254
+ # time-driven rotation, not on restarts
255
+ # or size-driven rotation. Default is
256
+ # off, meaning append to existing files
257
+ # in all cases.
258
+ #log_rotation_age = 1d # Automatic rotation of logfiles will
259
+ # happen after that time. 0 to disable.
260
+ #log_rotation_size = 10MB # Automatic rotation of logfiles will
261
+ # happen after that much log output.
262
+ # 0 to disable.
263
+
264
+ # These are relevant when logging to syslog:
265
+ #syslog_facility = 'LOCAL0'
266
+ #syslog_ident = 'postgres'
267
+
268
+
269
+ # - When to Log -
270
+
271
+ #client_min_messages = notice # values in order of decreasing detail:
272
+ # debug5
273
+ # debug4
274
+ # debug3
275
+ # debug2
276
+ # debug1
277
+ # log
278
+ # notice
279
+ # warning
280
+ # error
281
+
282
+ #log_min_messages = notice # values in order of decreasing detail:
283
+ # debug5
284
+ # debug4
285
+ # debug3
286
+ # debug2
287
+ # debug1
288
+ # info
289
+ # notice
290
+ # warning
291
+ # error
292
+ # log
293
+ # fatal
294
+ # panic
295
+
296
+ #log_error_verbosity = default # terse, default, or verbose messages
297
+
298
+ #log_min_error_statement = error # values in order of decreasing detail:
299
+ # debug5
300
+ # debug4
301
+ # debug3
302
+ # debug2
303
+ # debug1
304
+ # info
305
+ # notice
306
+ # warning
307
+ # error
308
+ # log
309
+ # fatal
310
+ # panic (effectively off)
311
+
312
+ #log_min_duration_statement = -1 # -1 is disabled, 0 logs all statements
313
+ # and their durations, > 0 logs only
314
+ # statements running at least this time.
315
+
316
+ #silent_mode = off # DO NOT USE without syslog or
317
+ # logging_collector
318
+ # (change requires restart)
319
+
320
+ # - What to Log -
321
+
322
+ #debug_print_parse = off
323
+ #debug_print_rewritten = off
324
+ #debug_print_plan = off
325
+ #debug_pretty_print = off
326
+ #log_checkpoints = off
327
+ #log_connections = off
328
+ #log_disconnections = off
329
+ #log_duration = off
330
+ #log_hostname = off
331
+ log_line_prefix = '%t ' # special values:
332
+ # %u = user name
333
+ # %d = database name
334
+ # %r = remote host and port
335
+ # %h = remote host
336
+ # %p = process ID
337
+ # %t = timestamp without milliseconds
338
+ # %m = timestamp with milliseconds
339
+ # %i = command tag
340
+ # %c = session ID
341
+ # %l = session line number
342
+ # %s = session start timestamp
343
+ # %v = virtual transaction ID
344
+ # %x = transaction ID (0 if none)
345
+ # %q = stop here in non-session
346
+ # processes
347
+ # %% = '%'
348
+ # e.g. '<%u%%%d> '
349
+ #log_lock_waits = off # log lock waits >= deadlock_timeout
350
+ #log_statement = 'none' # none, ddl, mod, all
351
+ #log_temp_files = -1 # log temporary files equal or larger
352
+ # than specified size;
353
+ # -1 disables, 0 logs all temp files
354
+ #log_timezone = unknown # actually, defaults to TZ environment
355
+ # setting
356
+
357
+
358
+ #------------------------------------------------------------------------------
359
+ # RUNTIME STATISTICS
360
+ #------------------------------------------------------------------------------
361
+
362
+ # - Query/Index Statistics Collector -
363
+
364
+ #track_activities = on
365
+ #track_counts = on
366
+ #update_process_title = on
367
+
368
+
369
+ # - Statistics Monitoring -
370
+
371
+ #log_parser_stats = off
372
+ #log_planner_stats = off
373
+ #log_executor_stats = off
374
+ #log_statement_stats = off
375
+
376
+
377
+ #------------------------------------------------------------------------------
378
+ # AUTOVACUUM PARAMETERS
379
+ #------------------------------------------------------------------------------
380
+
381
+ #autovacuum = on # Enable autovacuum subprocess? 'on'
382
+ # requires track_counts to also be on.
383
+ #log_autovacuum_min_duration = -1 # -1 disables, 0 logs all actions and
384
+ # their durations, > 0 logs only
385
+ # actions running at least that time.
386
+ #autovacuum_max_workers = 3 # max number of autovacuum subprocesses
387
+ #autovacuum_naptime = 1min # time between autovacuum runs
388
+ #autovacuum_vacuum_threshold = 50 # min number of row updates before
389
+ # vacuum
390
+ #autovacuum_analyze_threshold = 50 # min number of row updates before
391
+ # analyze
392
+ #autovacuum_vacuum_scale_factor = 0.2 # fraction of table size before vacuum
393
+ #autovacuum_analyze_scale_factor = 0.1 # fraction of table size before analyze
394
+ #autovacuum_freeze_max_age = 200000000 # maximum XID age before forced vacuum
395
+ # (change requires restart)
396
+ #autovacuum_vacuum_cost_delay = 20 # default vacuum cost delay for
397
+ # autovacuum, -1 means use
398
+ # vacuum_cost_delay
399
+ #autovacuum_vacuum_cost_limit = -1 # default vacuum cost limit for
400
+ # autovacuum, -1 means use
401
+ # vacuum_cost_limit
402
+
403
+
404
+ #------------------------------------------------------------------------------
405
+ # CLIENT CONNECTION DEFAULTS
406
+ #------------------------------------------------------------------------------
407
+
408
+ # - Statement Behavior -
409
+
410
+ #search_path = '"$user",public' # schema names
411
+ #default_tablespace = '' # a tablespace name, '' uses the default
412
+ #temp_tablespaces = '' # a list of tablespace names, '' uses
413
+ # only default tablespace
414
+ #check_function_bodies = on
415
+ #default_transaction_isolation = 'read committed'
416
+ #default_transaction_read_only = off
417
+ #session_replication_role = 'origin'
418
+ #statement_timeout = 0 # 0 is disabled
419
+ #vacuum_freeze_min_age = 100000000
420
+ #xmlbinary = 'base64'
421
+ #xmloption = 'content'
422
+
423
+ # - Locale and Formatting -
424
+
425
+ datestyle = 'iso, mdy'
426
+ #timezone = unknown # actually, defaults to TZ environment
427
+ # setting
428
+ #timezone_abbreviations = 'Default' # Select the set of available time zone
429
+ # abbreviations. Currently, there are
430
+ # Default
431
+ # Australia
432
+ # India
433
+ # You can create your own file in
434
+ # share/timezonesets/.
435
+ #extra_float_digits = 0 # min -15, max 2
436
+ #client_encoding = sql_ascii # actually, defaults to database
437
+ # encoding
438
+
439
+ # These settings are initialized by initdb, but they can be changed.
440
+ lc_messages = 'en_US.UTF-8' # locale for system error message
441
+ # strings
442
+ lc_monetary = 'en_US.UTF-8' # locale for monetary formatting
443
+ lc_numeric = 'en_US.UTF-8' # locale for number formatting
444
+ lc_time = 'en_US.UTF-8' # locale for time formatting
445
+
446
+ # default configuration for text search
447
+ default_text_search_config = 'pg_catalog.english'
448
+
449
+ # - Other Defaults -
450
+
451
+ #explain_pretty_print = on
452
+ #dynamic_library_path = '$libdir'
453
+ #local_preload_libraries = ''
454
+
455
+
456
+ #------------------------------------------------------------------------------
457
+ # LOCK MANAGEMENT
458
+ #------------------------------------------------------------------------------
459
+
460
+ #deadlock_timeout = 1s
461
+ #max_locks_per_transaction = 64 # min 10
462
+ # (change requires restart)
463
+ # Note: Each lock table slot uses ~270 bytes of shared memory, and there are
464
+ # max_locks_per_transaction * (max_connections + max_prepared_transactions)
465
+ # lock table slots.
466
+
467
+
468
+ #------------------------------------------------------------------------------
469
+ # VERSION/PLATFORM COMPATIBILITY
470
+ #------------------------------------------------------------------------------
471
+
472
+ # - Previous PostgreSQL Versions -
473
+
474
+ #add_missing_from = off
475
+ #array_nulls = on
476
+ #backslash_quote = safe_encoding # on, off, or safe_encoding
477
+ #default_with_oids = off
478
+ #escape_string_warning = on
479
+ #regex_flavor = advanced # advanced, extended, or basic
480
+ #sql_inheritance = on
481
+ #standard_conforming_strings = off
482
+ #synchronize_seqscans = on
483
+
484
+ # - Other Platforms and Clients -
485
+
486
+ #transform_null_equals = off
487
+
488
+
489
+ #------------------------------------------------------------------------------
490
+ # CUSTOMIZED OPTIONS
491
+ #------------------------------------------------------------------------------
492
+
493
+ #custom_variable_classes = '' # list of custom variable class names