aweplug 1.0.0.a23 → 1.0.0.a24
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/aweplug.gemspec +1 -0
- data/lib/aweplug/extensions/asciidoc_example.rb +4 -3
- data/lib/aweplug/extensions/kramdown_quickstart.rb +6 -3
- data/lib/aweplug/extensions/vimeo.rb +10 -25
- data/lib/aweplug/helpers/searchisko.rb +10 -3
- data/lib/aweplug/helpers/vimeo.rb +27 -3
- data/lib/aweplug/version.rb +1 -1
- metadata +18 -5
data/aweplug.gemspec
CHANGED
@@ -25,6 +25,7 @@ Gem::Specification.new do |gem|
|
|
25
25
|
gem.add_dependency 'faraday_middleware', '>= 0.9.0'
|
26
26
|
gem.add_dependency 'curb', '~> 0.8.5'
|
27
27
|
gem.add_dependency 'oauth', '~> 0.3.6'
|
28
|
+
gem.add_dependency 'net-http-persistent', '~> 2.9.4'
|
28
29
|
|
29
30
|
gem.add_development_dependency 'guard-rspec', '~> 3.0.0'
|
30
31
|
gem.add_development_dependency 'rake', '~> 10.0.4'
|
@@ -3,7 +3,6 @@ require 'asciidoctor'
|
|
3
3
|
require 'aweplug/helpers/git_metadata'
|
4
4
|
require 'aweplug/helpers/searchisko'
|
5
5
|
require 'json'
|
6
|
-
require 'pry'
|
7
6
|
|
8
7
|
module Aweplug
|
9
8
|
module Extensions
|
@@ -19,7 +18,9 @@ module Aweplug
|
|
19
18
|
include Aweplug::Helper::Git::Commit::Metadata
|
20
19
|
include Aweplug::Helper::Git::Repository
|
21
20
|
|
22
|
-
# Public: Initialization method, used in the awestruct pipeline.
|
21
|
+
# Public: Initialization method, used in the awestruct pipeline. This
|
22
|
+
# makes use of the Aweplug::Helper::Searchisko class, please see
|
23
|
+
# that class for more info on options and settings for Searchisko.
|
23
24
|
#
|
24
25
|
# opts - A Hash of options, some being required, some not (default: {}).
|
25
26
|
# :repository - The String name of the directory
|
@@ -78,7 +79,7 @@ module Aweplug
|
|
78
79
|
:searchisko_username => ENV['dcp_user'],
|
79
80
|
:searchisko_password => ENV['dcp_password'],
|
80
81
|
:cache => site.cache,
|
81
|
-
:logger => site.
|
82
|
+
:logger => site.log_faraday})
|
82
83
|
Find.find @directory do |path|
|
83
84
|
Find.prune if File.directory?(path) && !@recurse_subdirectories
|
84
85
|
|
@@ -11,7 +11,9 @@ module Aweplug
|
|
11
11
|
# Public: An awestruct extension for guides / examples written in AsciiDoc.
|
12
12
|
# Files with the .asciidoc or .adoc extension are considered to be
|
13
13
|
# AsciiDoc files. This extension makes use of asciidoctor to
|
14
|
-
# render the files.
|
14
|
+
# render the files. This makes use of the
|
15
|
+
# Aweplug::Helper::Searchisko class, please see that class for
|
16
|
+
# more info on options and settings for Searchisko.
|
15
17
|
#
|
16
18
|
# Example
|
17
19
|
#
|
@@ -65,7 +67,7 @@ module Aweplug
|
|
65
67
|
:searchisko_username => ENV['dcp_user'],
|
66
68
|
:searchisko_password => ENV['dcp_password'],
|
67
69
|
:cache => site.cache,
|
68
|
-
:logger => site.
|
70
|
+
:logger => site.log_faraday})
|
69
71
|
Dir["#{@repo}/*/README.md"].each do |file|
|
70
72
|
next if @excludes.include?(File.dirname(file))
|
71
73
|
|
@@ -95,7 +97,8 @@ module Aweplug
|
|
95
97
|
:sys_created => metadata[:commits].collect { |c| DateTime.parse c[:date] }.last,
|
96
98
|
:sys_activity_dates => metadata[:commits].collect { |c| DateTime.parse c[:date] },
|
97
99
|
:sys_updated => metadata[:commits].collect { |c| DateTime.parse c[:date] }.first,
|
98
|
-
:target_product => metadata[:target_product]
|
100
|
+
:target_product => metadata[:target_product],
|
101
|
+
:github_repo_url => metadata[:github_repo_url]
|
99
102
|
}
|
100
103
|
|
101
104
|
unless site.profile =~ /development/
|
@@ -6,8 +6,10 @@ module Aweplug
|
|
6
6
|
module Extensions
|
7
7
|
module Video
|
8
8
|
# Public: Awestruct Extension which iterates over a site variable which
|
9
|
-
#
|
10
|
-
# over to a searchisko instance for indexing.
|
9
|
+
# contains vimeo URLs and creates pages out of them, also sends
|
10
|
+
# the info over to a searchisko instance for indexing. This
|
11
|
+
# makes use of the Aweplug::Helper::Searchisko class, please see
|
12
|
+
# that class for more info on options and settings for Searchisko.
|
11
13
|
class Vimeo
|
12
14
|
include Aweplug::Helpers::Vimeo
|
13
15
|
|
@@ -33,7 +35,7 @@ module Aweplug
|
|
33
35
|
:searchisko_username => ENV['dcp_user'],
|
34
36
|
:searchisko_password => ENV['dcp_password'],
|
35
37
|
:cache => site.cache,
|
36
|
-
:logger => site.
|
38
|
+
:logger => site.log_faraday})
|
37
39
|
|
38
40
|
site[@variable].each do |url|
|
39
41
|
id = url.match(/^.*\/(\d*)$/)[1]
|
@@ -48,29 +50,12 @@ module Aweplug
|
|
48
50
|
page.send('video=', video)
|
49
51
|
page.send('video_url=', url)
|
50
52
|
site.pages << page
|
51
|
-
|
52
|
-
unless video.
|
53
|
-
searchisko_payload = {
|
54
|
-
:sys_type => 'jbossdeveloper_video',
|
55
|
-
:sys_content_provider => 'jboss-developer',
|
56
|
-
:sys_content_type => 'video',
|
57
|
-
:sys_content_id => video.id,
|
58
|
-
:sys_updated => video.modified_date,
|
59
|
-
:sys_contributors => video.cast,
|
60
|
-
:sys_activity_dates => [video.modified_date, video.upload_date],
|
61
|
-
:sys_created => video.upload_date,
|
62
|
-
:sys_title => video.title,
|
63
|
-
:sys_url_view => "http://vimeo.com/#{video.id}",
|
64
|
-
:sys_description => video.description,
|
65
|
-
:duration => video.duration,
|
66
|
-
:thumbnail => video.thumb_url,
|
67
|
-
:tag => video.tags
|
68
|
-
}
|
69
|
-
|
53
|
+
|
54
|
+
unless (payload = video.searchisko_payload).nil?
|
70
55
|
unless site.profile =~ /development/
|
71
|
-
searchisko.push_content(
|
72
|
-
|
73
|
-
|
56
|
+
searchisko.push_content(payload[:sys_type],
|
57
|
+
payload[:sys_content_id],
|
58
|
+
payload.to_json)
|
74
59
|
end
|
75
60
|
end
|
76
61
|
end
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'faraday'
|
2
2
|
require 'faraday_middleware'
|
3
3
|
require 'aweplug/cache/yaml_file_cache'
|
4
|
+
require 'logger'
|
4
5
|
|
5
6
|
module Aweplug
|
6
7
|
module Helpers
|
@@ -13,7 +14,7 @@ module Aweplug
|
|
13
14
|
# :authenticate - boolean flag for authentication
|
14
15
|
# :searchisko_username - Username to use for auth
|
15
16
|
# :searchisko_password - Password to use for auth
|
16
|
-
# :
|
17
|
+
# :logger - Boolean to log responses or an instance of Logger to use
|
17
18
|
# :raise_error - Boolean flag if 404 and 500 should raise exceptions
|
18
19
|
# :adapter - faraday adapter to use, defaults to :net_http
|
19
20
|
# :cache - Instance of a cache to use, required.
|
@@ -28,11 +29,17 @@ module Aweplug
|
|
28
29
|
$LOG.warn 'Missing username and / or password for searchisko'
|
29
30
|
end
|
30
31
|
end
|
31
|
-
|
32
|
+
if (opts[:logger])
|
33
|
+
if (opts[:logger].is_a?(::Logger))
|
34
|
+
builder.response :logger, opts[:logger]
|
35
|
+
else
|
36
|
+
builder.response :logger, ::Logger.new('_tmp/faraday.log', 'daily')
|
37
|
+
end
|
38
|
+
end
|
32
39
|
builder.response :raise_error if opts[:raise_error]
|
33
40
|
builder.use FaradayMiddleware::Caching, opts[:cache], {}
|
34
41
|
#builder.response :json, :content_type => /\bjson$/
|
35
|
-
builder.adapter opts[:adapter] || :
|
42
|
+
builder.adapter opts[:adapter] || :net_http_persistent
|
36
43
|
end
|
37
44
|
end
|
38
45
|
|
@@ -153,11 +153,11 @@ module Aweplug
|
|
153
153
|
end
|
154
154
|
|
155
155
|
def author
|
156
|
-
@
|
156
|
+
@cast[0] ? @cast[0] : OpenStruct.new({"display_name" => "Unknown"})
|
157
157
|
end
|
158
158
|
|
159
159
|
def cast
|
160
|
-
@cast
|
160
|
+
@cast
|
161
161
|
end
|
162
162
|
|
163
163
|
def tags
|
@@ -182,6 +182,7 @@ module Aweplug
|
|
182
182
|
@video = JSON.parse(body)["video"][0]
|
183
183
|
@cache.write(@id, body)
|
184
184
|
else
|
185
|
+
@fetch_failed = true
|
185
186
|
@video = {"title" => "Unable to fetch video info from vimeo"}
|
186
187
|
end
|
187
188
|
else
|
@@ -189,6 +190,30 @@ module Aweplug
|
|
189
190
|
end
|
190
191
|
end
|
191
192
|
|
193
|
+
def searchisko_payload
|
194
|
+
unless @fetch_failed
|
195
|
+
cast_as_hash = []
|
196
|
+
@cast.each do |c|
|
197
|
+
cast_as_hash << c.marshal_dump
|
198
|
+
end
|
199
|
+
author_as_hash = @cast[0] ? @cast[0].marshal_dump : {}
|
200
|
+
searchisko_payload = {
|
201
|
+
:sys_title => title,
|
202
|
+
:sys_description => description,
|
203
|
+
:sys_url_view => "http://#{@site.base_url}/video/vimeo/#{id}",
|
204
|
+
:sys_type => 'jbossdeveloper_video',
|
205
|
+
:author => author_as_hash,
|
206
|
+
:contributors => cast_as_hash,
|
207
|
+
:sys_created => @video["upload_date"],
|
208
|
+
:sys_activity_dates => [@video["modified_date"], @video["upload_date"]],
|
209
|
+
:sys_updated => @video["modified_date"],
|
210
|
+
:duration => duration,
|
211
|
+
:thumbnail => thumb_url,
|
212
|
+
:tag => tags
|
213
|
+
}
|
214
|
+
end
|
215
|
+
end
|
216
|
+
|
192
217
|
def fetch_thumb_url
|
193
218
|
if @video['thumbnails']
|
194
219
|
@thumb = @video["thumbnails"]["thumbnail"][1]
|
@@ -214,7 +239,6 @@ module Aweplug
|
|
214
239
|
end
|
215
240
|
end
|
216
241
|
end
|
217
|
-
@author = @cast[0] ? @cast[0] : OpenStruct.new({"display_name" => "Unknown"})
|
218
242
|
end
|
219
243
|
|
220
244
|
# Internal: Execute a method against the Vimeo API
|
data/lib/aweplug/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aweplug
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.a24
|
5
5
|
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-03-
|
12
|
+
date: 2014-03-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: octokit
|
@@ -97,6 +97,22 @@ dependencies:
|
|
97
97
|
- - ~>
|
98
98
|
- !ruby/object:Gem::Version
|
99
99
|
version: 0.3.6
|
100
|
+
- !ruby/object:Gem::Dependency
|
101
|
+
name: net-http-persistent
|
102
|
+
requirement: !ruby/object:Gem::Requirement
|
103
|
+
none: false
|
104
|
+
requirements:
|
105
|
+
- - ~>
|
106
|
+
- !ruby/object:Gem::Version
|
107
|
+
version: 2.9.4
|
108
|
+
type: :runtime
|
109
|
+
prerelease: false
|
110
|
+
version_requirements: !ruby/object:Gem::Requirement
|
111
|
+
none: false
|
112
|
+
requirements:
|
113
|
+
- - ~>
|
114
|
+
- !ruby/object:Gem::Version
|
115
|
+
version: 2.9.4
|
100
116
|
- !ruby/object:Gem::Dependency
|
101
117
|
name: guard-rspec
|
102
118
|
requirement: !ruby/object:Gem::Requirement
|
@@ -189,9 +205,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
189
205
|
- - ! '>='
|
190
206
|
- !ruby/object:Gem::Version
|
191
207
|
version: '0'
|
192
|
-
segments:
|
193
|
-
- 0
|
194
|
-
hash: -1575929041350407489
|
195
208
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
196
209
|
none: false
|
197
210
|
requirements:
|