Commit Graph

33 Commits

Author SHA1 Message Date
Jose Diaz-Gonzalez
70511c340d Check if command is implemented in a plugin before executing plugin code
Because of how plugin commands are implemented, their output can be incredibly verbose. Rather than executing even the `set -eo pipefail` parts of a plugin, we immediately check if the command is implemented by a plugin. If it is not, then we continue on as normal.

One side-effect of this change is that plugin commands need to be duplicated again:

- once in the command array
- once for the actual body of the command
- once in the help output

This is also quite hackish, and probably not the best way to decrease trace output. Note that we drop approximately 2k lines worth of logs with this change.
2015-09-18 16:09:59 -04:00
Jose Diaz-Gonzalez
467264d31f Drop another ~1k lines from DOKKU_TRACE output 2015-09-18 16:09:59 -04:00
Jose Diaz-Gonzalez
27a2478a33 Follow bashstyle where possible 2015-09-16 16:06:31 -07:00
Michael Hobbs
5fdd69a657 remove remnants of bad rebase 2015-09-15 02:17:28 -07:00
Michael Hobbs
e8fb585fa8 rename buildstep hooks to buildpack 2015-09-15 02:17:28 -07:00
Jose Diaz-Gonzalez
4bcc9ac05d Remove deprecated calls 2015-09-15 02:17:28 -07:00
Michael Hobbs
8095df79f6 implement core plugin mgmt using plugn. add tests. 2015-09-15 02:17:28 -07:00
Michael Hobbs
e873f27eac remove remnants of bad rebase 2015-09-15 02:17:28 -07:00
Michael Hobbs
cd3af6b961 rename buildstep hooks to buildpack 2015-09-15 02:17:27 -07:00
Jose Diaz-Gonzalez
525e6f503d Remove deprecated calls 2015-09-15 02:17:27 -07:00
Jose Diaz-Gonzalez
ce23cf6ce6 rename dokku_log_pluginhook_call 2015-09-15 02:16:40 -07:00
Jose Diaz-Gonzalez
ad72a137e1 Fix sourcing of functions 2015-09-15 02:16:40 -07:00
Michael Hobbs
7a545759f2 initial pass at switching to plugn 2015-09-15 02:16:40 -07:00
Michael Hobbs
b2949d2199 log when killing old app container(s) fails 2015-09-10 08:47:48 -07:00
Michael Hobbs
b71f6f4660 rename buildstep hooks to buildpack 2015-09-08 08:50:17 -07:00
Jim Myhrberg
d5df6a4190 Use $PLUGIN_PATH instead of $(dirname $0)/..
As briefly discussed in #1425, source the `common/functions` file via an
absolute path, rather than determining the relative path by using
`dirname`. 3rd-party plugins should follow suit and use the new
`$PLUGIN_PATH` convention too.
2015-08-28 14:14:28 +01:00
Alessio Treglia
78c0cdc12d Log receive-branch pluginhook
Such new pluginhook was introduced in dokku v0.3.22.
2015-07-30 15:37:47 +01:00
Michael Hobbs
b30db17def use column to format help output 2015-07-28 09:31:56 -07:00
Michael Hobbs
a84397895a initial pass at config plugin arguments refactor 2015-07-06 19:41:17 -07:00
Alessio Treglia
0ed0201b90 Use d-neg condition to prevent unexpected failures 2015-07-01 19:48:09 +01:00
Alessio Treglia
89d1acaa38 Revert "Fix double negative statement"
This reverts commit 54ed3c1f2b.
2015-07-01 19:47:38 +01:00
Alessio Treglia
54ed3c1f2b Fix double negative statement
This is mostly for consistency with its own install script.
2015-07-01 19:20:53 +01:00
Alessio Treglia
91c691a806 Create dokku's /var/log/dokku/ private namespace
Rename dokku.log to events.log.
Refresh tests accordingly.
2015-07-01 18:25:11 +01:00
Alessio Treglia
69aba06361 Handle log rotation
As requested by @josegonzalez.
2015-06-28 23:25:50 +01:00
Alessio Treglia
16e4001677 Restart rsyslog once installed
Seems that a mere reload doesn't work.
2015-06-27 10:20:07 +01:00
Alessio Treglia
fb5d3a06f0 Attempt to fix SC2046 2015-06-26 18:01:40 +01:00
Alessio Treglia
da3b00a894 Get rid of cruft leftover 2015-06-26 17:57:43 +01:00
Alessio Treglia
466670d804 Quote `find' statement to prevent word splitting
This should fix ShellCheck SC2046 error.
2015-06-26 16:37:01 +01:00
Alessio Treglia
8e7916131c Double quote $@ in plugins/20_events/install too 2015-06-26 15:25:57 +01:00
Alessio Treglia
a858bc8f81 Double quote $@ array expansions 2015-06-26 15:18:38 +01:00
Alessio Treglia
f5e213e390 Add missing DOKKU_RSYSLOG_FILTER in install script
It had gone lost while porting the original 3rd party plugin.
2015-06-26 15:12:55 +01:00
Alessio Treglia
e9a73442e2 Fix missing 'fi' in plugins/20_events/install 2015-06-26 15:11:42 +01:00
Alessio Treglia
783bb02b2c Implement events logging feature
Record events (i.e. pluginhook's calls) as syslog entries and
provide a shortcut command to display the last part of the log
file.

A brief summary of the changes follows:

dokku:
 - New DOKKU_EVENTS_LOGFILE envvar to hold logfile location.

plugins/20_events/commands:
 - events output log entries, a tail's follow-like mode is
   provided too.
 - events:[on|off] enables/disables logging.
 - events:list lists events that are logged.

plugins/20_events/hook:
 - Generic hook that writes log entries. All the events are
   registered via symlink to this script.

plugins/common/functions:
 - dokku_log_event() writes log entries via logger.
 - dokku_log_pluginhook_call() formats log entries and writes
   them via dokku_log_event().
2015-06-26 14:47:18 +01:00