automatic 13.5.0 → 13.6.0
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.
- data/Gemfile +11 -5
- data/README.md +4 -6
- data/VERSION +1 -1
- data/automatic.gemspec +61 -18
- data/doc/ChangeLog +25 -0
- data/doc/PLUGINS +202 -12
- data/doc/PLUGINS.ja +221 -30
- data/doc/README +1 -1
- data/doc/README.ja +1 -1
- data/lib/automatic.rb +3 -3
- data/lib/automatic/feed_parser.rb +2 -2
- data/lib/automatic/log.rb +12 -2
- data/lib/automatic/pipeline.rb +1 -1
- data/lib/automatic/recipe.rb +5 -2
- data/plugins/custom_feed/svn_log.rb +3 -3
- data/plugins/filter/absolute_uri.rb +8 -4
- data/plugins/filter/accept.rb +61 -0
- data/plugins/filter/full_feed.rb +4 -5
- data/plugins/filter/github_feed.rb +36 -0
- data/plugins/filter/ignore.rb +1 -1
- data/plugins/filter/image.rb +1 -1
- data/plugins/filter/image_source.rb +34 -10
- data/plugins/filter/one.rb +1 -1
- data/plugins/filter/rand.rb +1 -1
- data/plugins/filter/sanitize.rb +50 -0
- data/plugins/filter/sort.rb +1 -1
- data/plugins/filter/tumblr_resize.rb +1 -1
- data/plugins/publish/console.rb +3 -3
- data/plugins/publish/console_link.rb +30 -0
- data/plugins/publish/eject.rb +42 -0
- data/plugins/publish/fluentd.rb +42 -0
- data/plugins/publish/google_calendar.rb +3 -3
- data/plugins/publish/hatena_bookmark.rb +1 -1
- data/plugins/publish/hipchat.rb +45 -0
- data/plugins/publish/instapaper.rb +2 -1
- data/plugins/publish/memcached.rb +44 -0
- data/plugins/publish/pocket.rb +1 -1
- data/plugins/publish/twitter.rb +1 -1
- data/plugins/store/database.rb +3 -3
- data/plugins/store/full_text.rb +2 -2
- data/plugins/store/permalink.rb +1 -1
- data/plugins/store/target_link.rb +3 -2
- data/plugins/subscription/chan_toru.rb +56 -0
- data/plugins/subscription/feed.rb +1 -1
- data/plugins/subscription/g_guide.rb +48 -0
- data/plugins/subscription/google_reader_star.rb +3 -3
- data/plugins/subscription/link.rb +2 -2
- data/plugins/subscription/pocket.rb +49 -0
- data/plugins/subscription/text.rb +3 -12
- data/plugins/subscription/tumblr.rb +7 -1
- data/plugins/subscription/twitter.rb +1 -1
- data/plugins/subscription/twitter_search.rb +50 -0
- data/plugins/subscription/weather.rb +7 -41
- data/script/build +3 -0
- data/spec/fixtures/sampleRecipe.yml +1 -1
- data/spec/lib/automatic/log_spec.rb +31 -0
- data/spec/lib/automatic/pipeline_spec.rb +1 -1
- data/spec/lib/automatic/recipe_spec.rb +1 -1
- data/spec/lib/automatic_spec.rb +3 -3
- data/spec/plugins/custom_feed/svn_log_spec.rb +1 -1
- data/spec/plugins/filter/absolute_uri_spec.rb +1 -1
- data/spec/plugins/filter/accept_spec.rb +331 -0
- data/spec/plugins/filter/full_feed_spec.rb +4 -6
- data/spec/plugins/filter/github_feed_spec.rb +54 -0
- data/spec/plugins/filter/ignore_spec.rb +1 -1
- data/spec/plugins/filter/image_source_spec.rb +17 -3
- data/spec/plugins/filter/image_spec.rb +1 -1
- data/spec/plugins/filter/one_spec.rb +1 -1
- data/spec/plugins/filter/rand_spec.rb +1 -1
- data/spec/plugins/filter/sanitize_spec.rb +153 -0
- data/spec/plugins/filter/sort_spec.rb +1 -1
- data/spec/plugins/filter/tumblr_resize_spec.rb +1 -1
- data/spec/plugins/notify/ikachan_spec.rb +1 -1
- data/spec/plugins/publish/console_spec.rb +1 -1
- data/spec/plugins/publish/eject_spec.rb +40 -0
- data/spec/plugins/publish/fluentd_spec.rb +39 -0
- data/spec/plugins/publish/google_calendar_spec.rb +1 -1
- data/spec/plugins/publish/hatena_bookmark_spec.rb +1 -1
- data/spec/plugins/publish/hipchat_spec.rb +69 -0
- data/spec/plugins/publish/instapaper_spec.rb +42 -28
- data/spec/plugins/publish/memcached_spec.rb +63 -0
- data/spec/plugins/publish/pocket_spec.rb +33 -33
- data/spec/plugins/publish/twitter_spec.rb +57 -19
- data/spec/plugins/store/full_text_spec.rb +6 -1
- data/spec/plugins/store/permalink_spec.rb +18 -19
- data/spec/plugins/store/target_link_spec.rb +1 -1
- data/spec/plugins/subscription/chan_toru_spec.rb +56 -0
- data/spec/plugins/subscription/feed_spec.rb +1 -1
- data/spec/plugins/subscription/g_guide_spec.rb +76 -0
- data/spec/plugins/subscription/google_reader_star_spec.rb +1 -1
- data/spec/plugins/subscription/link_spec.rb +1 -1
- data/spec/plugins/subscription/pocket_spec.rb +57 -0
- data/spec/plugins/subscription/text_spec.rb +1 -14
- data/spec/plugins/subscription/tumblr_spec.rb +3 -2
- data/spec/plugins/subscription/twitter_search_spec.rb +57 -0
- data/spec/plugins/subscription/twitter_spec.rb +3 -2
- data/spec/plugins/subscription/weather_spec.rb +2 -15
- data/spec/spec_helper.rb +1 -0
- data/test/integration/test_chan_toru.yml +19 -0
- data/test/integration/test_fluentd.yml +20 -0
- data/test/integration/test_pocket.yml +21 -0
- data/test/integration/test_sanitize.yml +22 -0
- data/test/integration/test_twitter_search.yml +21 -0
- metadata +145 -24
- data/plugins/publish/mail.rb +0 -64
- data/plugins/publish/smtp.rb +0 -48
- data/spec/plugins/publish/mail_spec.rb +0 -53
- data/spec/plugins/publish/smtp_spec.rb +0 -49
data/doc/PLUGINS.ja
CHANGED
|
@@ -94,6 +94,27 @@ SubscriptionTwitter
|
|
|
94
94
|
retry: エラー時のリトライ回数 (回数, 省略時 0)
|
|
95
95
|
|
|
96
96
|
|
|
97
|
+
SubscriptionTwitterSearch
|
|
98
|
+
-------------------------
|
|
99
|
+
[Path]
|
|
100
|
+
/plugins/subscription/twitter_search.rb
|
|
101
|
+
|
|
102
|
+
[Abstract]
|
|
103
|
+
Twitterの検索結果を取得
|
|
104
|
+
|
|
105
|
+
[Syntax]
|
|
106
|
+
- module: SubscriptionTwitterSearch
|
|
107
|
+
config:
|
|
108
|
+
search: 検索ワード
|
|
109
|
+
opt: 検索時に使用するオプション
|
|
110
|
+
consumer_key: 'your_consumer_key'
|
|
111
|
+
consumer_secret: 'your_consumer_secret'
|
|
112
|
+
oauth_token: 'your_oauth_token'
|
|
113
|
+
oauth_token_secret: 'your_oauth_token_secret'
|
|
114
|
+
interval: スクレイピングの間隔 (秒数, 省略可)
|
|
115
|
+
retry: エラー時のリトライ回数 (回数, 省略時 0)
|
|
116
|
+
|
|
117
|
+
|
|
97
118
|
SubscriptionWeather
|
|
98
119
|
-------------------
|
|
99
120
|
[パス]
|
|
@@ -135,6 +156,62 @@ SubscriptionText
|
|
|
135
156
|
retry: エラー時のリトライ回数 (回数, 省略時 0)
|
|
136
157
|
|
|
137
158
|
|
|
159
|
+
SubscriptionPocket
|
|
160
|
+
検索キーワードからCHAN-TORUページの取得(Gk)
|
|
161
|
+
------------------
|
|
162
|
+
[パス]
|
|
163
|
+
/plugins/subscription/pocket.rb
|
|
164
|
+
|
|
165
|
+
[概要]
|
|
166
|
+
Pocket APIをたたいてfeedの作成
|
|
167
|
+
|
|
168
|
+
[レシピ記法]
|
|
169
|
+
- module: SubscriptionPocket
|
|
170
|
+
config:
|
|
171
|
+
consumer_key: 'your_consumer_key'
|
|
172
|
+
access_token: 'your_access_token'
|
|
173
|
+
optional: # see http://getpocket.com/developer/docs/v3/retrieve
|
|
174
|
+
favorite: 1
|
|
175
|
+
count: 2
|
|
176
|
+
interval: スクレイピングの間隔 (秒数, 省略可)
|
|
177
|
+
retry: エラー時のリトライ回数 (回数, 省略時 0)
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
SubscriptionGGuide
|
|
181
|
+
------------------
|
|
182
|
+
[パス]
|
|
183
|
+
/plugins/subscription/g_guide.rb
|
|
184
|
+
|
|
185
|
+
[概要]
|
|
186
|
+
検索キーワードからGガイド(テレビ番組の情報)rssの取得
|
|
187
|
+
|
|
188
|
+
[レシピ記法]
|
|
189
|
+
- module: SubscriptionGGuide
|
|
190
|
+
config:
|
|
191
|
+
keyword: 'アニメ' # 検索ワード
|
|
192
|
+
station: '地上波' # 衛星放送の区域(現在は地上波のみ対応)
|
|
193
|
+
interval: スクレイピングの間隔 (秒数, 省略可)
|
|
194
|
+
retry: エラー時のリトライ回数 (回数, 省略時 0)
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
SubscriptionChanToru
|
|
198
|
+
--------------------
|
|
199
|
+
[パス]
|
|
200
|
+
/plugins/subscription/chan_toru.rb
|
|
201
|
+
|
|
202
|
+
[概要]
|
|
203
|
+
検索キーワードからCHAN-TORU(テレビ番組の情報)rssの取得
|
|
204
|
+
(SubscriptionGGuideプラグイン依存)
|
|
205
|
+
|
|
206
|
+
[レシピ記法]
|
|
207
|
+
- module: SubscriptionChanToru
|
|
208
|
+
config:
|
|
209
|
+
keyword: 'アニメ' # 検索ワード
|
|
210
|
+
station: '地上波' # 衛星放送の区域(現在は地上波のみ対応)
|
|
211
|
+
interval: スクレイピングの間隔 (秒数, 省略可)
|
|
212
|
+
retry: エラー時のリトライ回数 (回数, 省略時 0)
|
|
213
|
+
|
|
214
|
+
|
|
138
215
|
FilterSort
|
|
139
216
|
----------
|
|
140
217
|
[パス]
|
|
@@ -170,6 +247,25 @@ FilterIgnore
|
|
|
170
247
|
- 無視キーワード ...
|
|
171
248
|
|
|
172
249
|
|
|
250
|
+
FilterAccept
|
|
251
|
+
------------
|
|
252
|
+
[パス]
|
|
253
|
+
/plugins/filter/accept.rb
|
|
254
|
+
|
|
255
|
+
[概要]
|
|
256
|
+
OK ワードのみにする
|
|
257
|
+
|
|
258
|
+
[レシピ記法]
|
|
259
|
+
- module: FilterAccept
|
|
260
|
+
config:
|
|
261
|
+
link:
|
|
262
|
+
- キーワード
|
|
263
|
+
- キーワード ...
|
|
264
|
+
description:
|
|
265
|
+
- キーワード
|
|
266
|
+
- キーワード ...
|
|
267
|
+
|
|
268
|
+
|
|
173
269
|
FilterImage
|
|
174
270
|
-----------
|
|
175
271
|
[パス]
|
|
@@ -196,6 +292,48 @@ FilterImageSource
|
|
|
196
292
|
- module: FilterImageSource
|
|
197
293
|
|
|
198
294
|
|
|
295
|
+
FilterOne
|
|
296
|
+
---------
|
|
297
|
+
[パス]
|
|
298
|
+
/plugins/filter/one.rb
|
|
299
|
+
|
|
300
|
+
[概要]
|
|
301
|
+
アイテムをフィードから 1 件だけ取り出す
|
|
302
|
+
|
|
303
|
+
[レシピ記法]
|
|
304
|
+
- module: FilterOne
|
|
305
|
+
config:
|
|
306
|
+
pick: last (省略時は先頭から)
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
FilterRand
|
|
310
|
+
----------
|
|
311
|
+
[パス]
|
|
312
|
+
/plugins/filter/rand.rb
|
|
313
|
+
|
|
314
|
+
[概要]
|
|
315
|
+
フィードの順番をランダムにする
|
|
316
|
+
|
|
317
|
+
[レシピ記法]
|
|
318
|
+
- module: FilterRand
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
FilterSanitize
|
|
322
|
+
--------------
|
|
323
|
+
[パス]
|
|
324
|
+
/plugins/filter/sanitize.rb
|
|
325
|
+
|
|
326
|
+
[概要]
|
|
327
|
+
HTML タグを除去する
|
|
328
|
+
参照 https://github.com/rgrove/sanitize
|
|
329
|
+
|
|
330
|
+
[レシピ記法]
|
|
331
|
+
- module: FilterSanitize
|
|
332
|
+
config:
|
|
333
|
+
mode: basic or relaxed or restricted
|
|
334
|
+
(デフォルト restricted)
|
|
335
|
+
|
|
336
|
+
|
|
199
337
|
FilterFullFeed
|
|
200
338
|
--------------
|
|
201
339
|
[パス]
|
|
@@ -225,7 +363,7 @@ FilterAbsoluteURI
|
|
|
225
363
|
|
|
226
364
|
|
|
227
365
|
FilterTumblrResize
|
|
228
|
-
|
|
366
|
+
------------------
|
|
229
367
|
[パス]
|
|
230
368
|
/plugins/filter/tumblr_resize.rb
|
|
231
369
|
|
|
@@ -240,32 +378,6 @@ FilterTumblrResize
|
|
|
240
378
|
- module: FilterTumblrResize
|
|
241
379
|
|
|
242
380
|
|
|
243
|
-
FilterOne
|
|
244
|
-
---------
|
|
245
|
-
[パス]
|
|
246
|
-
/plugins/filter/one.rb
|
|
247
|
-
|
|
248
|
-
[概要]
|
|
249
|
-
アイテムをフィードから 1 件だけ取り出す
|
|
250
|
-
|
|
251
|
-
[レシピ記法]
|
|
252
|
-
- module: FilterOne
|
|
253
|
-
config:
|
|
254
|
-
pick: last (省略時は先頭から)
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
FilterRand
|
|
258
|
-
----------
|
|
259
|
-
[パス]
|
|
260
|
-
/plugins/filter/rand.rb
|
|
261
|
-
|
|
262
|
-
[概要]
|
|
263
|
-
フィードの順番をランダムにする
|
|
264
|
-
|
|
265
|
-
[レシピ記法]
|
|
266
|
-
- module: FilterRand
|
|
267
|
-
|
|
268
|
-
|
|
269
381
|
StorePermalink
|
|
270
382
|
--------------
|
|
271
383
|
[パス]
|
|
@@ -299,7 +411,7 @@ StoreFullText
|
|
|
299
411
|
|
|
300
412
|
|
|
301
413
|
StoreTargetLink
|
|
302
|
-
|
|
414
|
+
---------------
|
|
303
415
|
[パス]
|
|
304
416
|
/plugins/store/target_link.rb
|
|
305
417
|
|
|
@@ -315,7 +427,7 @@ StoreTargetLink
|
|
|
315
427
|
|
|
316
428
|
|
|
317
429
|
PublishConsole
|
|
318
|
-
|
|
430
|
+
--------------
|
|
319
431
|
[パス]
|
|
320
432
|
/plugins/publish/console.rb
|
|
321
433
|
|
|
@@ -326,6 +438,47 @@ PublishConsole
|
|
|
326
438
|
- module: PublishConsole
|
|
327
439
|
|
|
328
440
|
|
|
441
|
+
PublishFluentd
|
|
442
|
+
--------------
|
|
443
|
+
[パス]
|
|
444
|
+
/plugins/publish/fluentd.rb
|
|
445
|
+
|
|
446
|
+
[概要]
|
|
447
|
+
fluentd にフィードを出力する
|
|
448
|
+
|
|
449
|
+
[説明]
|
|
450
|
+
このプラグインは fluentd にフィードを出力する
|
|
451
|
+
受け手側では以下のように fluentd を設定し起動しておく
|
|
452
|
+
|
|
453
|
+
<source>
|
|
454
|
+
type forward
|
|
455
|
+
port 9999
|
|
456
|
+
</source>
|
|
457
|
+
|
|
458
|
+
[レシピ記法]
|
|
459
|
+
- module: PublishFluentd
|
|
460
|
+
config:
|
|
461
|
+
host: ホスト名
|
|
462
|
+
port: ポート番号
|
|
463
|
+
tag: タグ (例 automatic.feed)
|
|
464
|
+
|
|
465
|
+
|
|
466
|
+
PublishMemcached
|
|
467
|
+
----------------
|
|
468
|
+
[パス]
|
|
469
|
+
/plugins/publish/memcached.rb
|
|
470
|
+
|
|
471
|
+
[概要]
|
|
472
|
+
フィードをハッシュに変換して memcached に出力する
|
|
473
|
+
|
|
474
|
+
[レシピ記法]
|
|
475
|
+
- module: PublishMemcached
|
|
476
|
+
config:
|
|
477
|
+
host: ホスト名
|
|
478
|
+
port: ポート番号
|
|
479
|
+
key: 出力するキーの名称
|
|
480
|
+
|
|
481
|
+
|
|
329
482
|
PublishHatenaBookmark
|
|
330
483
|
---------------------
|
|
331
484
|
[パス]
|
|
@@ -367,7 +520,7 @@ PublishTwitter
|
|
|
367
520
|
|
|
368
521
|
|
|
369
522
|
PublishPocket
|
|
370
|
-
|
|
523
|
+
-------------
|
|
371
524
|
[パス]
|
|
372
525
|
/plugins/publish/pocket.rb
|
|
373
526
|
|
|
@@ -425,6 +578,44 @@ PublishGoogleCalendar
|
|
|
425
578
|
interval: 複数の予定の投稿間隔 (秒)
|
|
426
579
|
|
|
427
580
|
|
|
581
|
+
PublishEject
|
|
582
|
+
------------
|
|
583
|
+
[パス]
|
|
584
|
+
/plugins/publish/eject.rb
|
|
585
|
+
|
|
586
|
+
[概要]
|
|
587
|
+
Feedのリンク個数分だけeject
|
|
588
|
+
|
|
589
|
+
[レシピ記法]
|
|
590
|
+
- module: PublishEject
|
|
591
|
+
config:
|
|
592
|
+
interval: 複数の予定の投稿間隔 (秒)
|
|
593
|
+
|
|
594
|
+
|
|
595
|
+
PublishHipchat
|
|
596
|
+
--------------
|
|
597
|
+
[パス]
|
|
598
|
+
/plugins/publish/hipchat.rb
|
|
599
|
+
|
|
600
|
+
[概要]
|
|
601
|
+
HipChat の room にメッセージを送信する
|
|
602
|
+
|
|
603
|
+
[説明]
|
|
604
|
+
HipChat API (https://www.hipchat.com/docs/api) を利用して
|
|
605
|
+
item.description を任意の room にメッセージを送信する
|
|
606
|
+
|
|
607
|
+
[レシピ記法]
|
|
608
|
+
- module: PublishHipchat
|
|
609
|
+
config:
|
|
610
|
+
api_token: HipChat の API token (省略不可)
|
|
611
|
+
room_id: ルームID、もしくはルーム名 (省略不可)
|
|
612
|
+
username: 送信元のユーザ名 (省略不可)
|
|
613
|
+
color: 背景の色 (省略時 'yellow')
|
|
614
|
+
notify: メッセージをルームの人々に notice するかどうか (0 => false, 1 => true, 省略時 0)
|
|
615
|
+
retry: エラー時のリトライ回数 (回数, 省略時 0)
|
|
616
|
+
interval: エラー時のリトライ間隔 (秒数, 省略可)
|
|
617
|
+
|
|
618
|
+
|
|
428
619
|
NotifyIkachan
|
|
429
620
|
-------------
|
|
430
621
|
[パス]
|
data/doc/README
CHANGED
data/doc/README.ja
CHANGED
data/lib/automatic.rb
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
# Name:: Automatic::Ruby
|
|
3
3
|
# Author:: 774 <http://id774.net>
|
|
4
4
|
# Created:: Feb 18, 2012
|
|
5
|
-
# Updated::
|
|
6
|
-
# Copyright::
|
|
5
|
+
# Updated:: Jun 27, 2013
|
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
|
8
8
|
|
|
9
9
|
module Automatic
|
|
@@ -13,7 +13,7 @@ module Automatic
|
|
|
13
13
|
require 'automatic/log'
|
|
14
14
|
require 'automatic/feed_parser'
|
|
15
15
|
|
|
16
|
-
VERSION = "13.
|
|
16
|
+
VERSION = "13.6.0"
|
|
17
17
|
USER_DIR = "/.automatic"
|
|
18
18
|
|
|
19
19
|
class << self
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
# Author:: 774 <http://id774.net>
|
|
4
4
|
# Created:: Feb 19, 2012
|
|
5
5
|
# Updated:: Jan 8, 2013
|
|
6
|
-
# Copyright::
|
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
|
8
8
|
|
|
9
9
|
module Automatic
|
|
@@ -38,7 +38,7 @@ module Automatic
|
|
|
38
38
|
unless feeds.nil?
|
|
39
39
|
feeds.each {|feed|
|
|
40
40
|
unless feed.link.nil?
|
|
41
|
-
Automatic::Log.puts("info", "
|
|
41
|
+
Automatic::Log.puts("info", "Feed: #{feed.link}")
|
|
42
42
|
item = maker.items.new_item
|
|
43
43
|
item.title = feed.title
|
|
44
44
|
item.link = feed.link
|
data/lib/automatic/log.rb
CHANGED
|
@@ -3,14 +3,24 @@
|
|
|
3
3
|
# Author:: 774 <http://id774.net>
|
|
4
4
|
# Created:: Feb 20, 2012
|
|
5
5
|
# Updated:: Mar 11, 2012
|
|
6
|
-
# Copyright::
|
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
|
8
8
|
|
|
9
9
|
module Automatic
|
|
10
10
|
module Log
|
|
11
|
+
LOG_LEVELS = ['info', 'warn', 'error', 'none']
|
|
12
|
+
|
|
13
|
+
def self.level(level)
|
|
14
|
+
@level = level
|
|
15
|
+
end
|
|
16
|
+
|
|
11
17
|
def self.puts(level, message)
|
|
18
|
+
if LOG_LEVELS.index(@level).to_i > LOG_LEVELS.index(level).to_i
|
|
19
|
+
return
|
|
20
|
+
end
|
|
12
21
|
t = Time.now.strftime("%Y/%m/%d %X")
|
|
13
|
-
print "#{t} [#{level}] #{message}\n"
|
|
22
|
+
print log = "#{t} [#{level}] #{message}\n"
|
|
23
|
+
return log
|
|
14
24
|
end
|
|
15
25
|
end
|
|
16
26
|
end
|
data/lib/automatic/pipeline.rb
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
# Author:: 774 <http://id774.net>
|
|
4
4
|
# Created:: Feb 22, 2012
|
|
5
5
|
# Updated:: Mar 10, 2012
|
|
6
|
-
# Copyright::
|
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
|
8
8
|
|
|
9
9
|
require 'active_support/core_ext'
|
data/lib/automatic/recipe.rb
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
# 774 <http://id774.net>
|
|
5
5
|
# Created:: Feb 18, 2012
|
|
6
6
|
# Updated:: Jun 14, 2012
|
|
7
|
-
# Copyright::
|
|
7
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
|
8
8
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
|
9
9
|
|
|
10
10
|
require 'hashie'
|
|
@@ -21,8 +21,11 @@ module Automatic
|
|
|
21
21
|
def load_recipe(path)
|
|
22
22
|
dir = File.join((File.expand_path('~/.automatic/config/')), path)
|
|
23
23
|
path = dir if File.exist?(dir)
|
|
24
|
-
Automatic::Log.puts("info", "Loading: #{path}")
|
|
25
24
|
@procedure = Hashie::Mash.new(YAML.load(File.read(path)))
|
|
25
|
+
log_level = @procedure.global && @procedure.global.log && @procedure.global.log.level
|
|
26
|
+
Automatic::Log.level(log_level)
|
|
27
|
+
Automatic::Log.puts("info", "Loading: #{path}")
|
|
28
|
+
@procedure
|
|
26
29
|
end
|
|
27
30
|
|
|
28
31
|
def each_plugin
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
# Author:: kzgs
|
|
4
4
|
# Created:: Feb 29, 2012
|
|
5
5
|
# Updated:: Mar 3, 2012
|
|
6
|
-
# Copyright::
|
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
|
8
8
|
|
|
9
9
|
require 'rss/maker'
|
|
@@ -19,12 +19,12 @@ module Automatic::Plugin
|
|
|
19
19
|
|
|
20
20
|
def run
|
|
21
21
|
revisions = XmlSimple.xml_in(`svn log #{svn_log_argument}`)["logentry"]
|
|
22
|
-
@pipeline << RSS::Maker.make("1.0") {
|
|
22
|
+
@pipeline << RSS::Maker.make("1.0") {|maker|
|
|
23
23
|
maker.channel.title = @config["title"] || ""
|
|
24
24
|
maker.channel.about = ""
|
|
25
25
|
maker.channel.description = ""
|
|
26
26
|
maker.channel.link = base_url
|
|
27
|
-
revisions.each {
|
|
27
|
+
revisions.each {|rev|
|
|
28
28
|
item = maker.items.new_item
|
|
29
29
|
item.title = "#{rev["msg"]} by #{rev["author"]}"
|
|
30
30
|
item.link = base_url+"/!svn/bc/#{rev["revision"]}"
|