runeblog 0.2.26 → 0.2.27
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.
- checksums.yaml +4 -4
- data/empty_view.tgz +0 -0
- data/lib/helpers-blog.rb +13 -13
- data/lib/helpers-repl.rb +0 -13
- data/lib/liveblog.rb +1 -16
- data/lib/publish.rb +21 -12
- data/lib/repl.rb +12 -12
- data/lib/runeblog.rb +7 -19
- data/lib/runeblog_version.rb +1 -1
- data/lib/view.rb +2 -6
- data/test/general_test.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 631b81f8592a8997e7d8c6fee1fc2f71a03e97e42d33e64e221e9971d08319ec
|
4
|
+
data.tar.gz: 64b2c372f7d4f4c1d3cfa7fdd19c178087e0444f712773cb523e990ec220cf5b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a27f9f6fd7c8859bacfd7ad112918bfebd416e436b4852523b41f449311ae63cab5d085830947022f87fa1a3c2d70b639e0e5d672176e3fcdbc2ff461cc3effa
|
7
|
+
data.tar.gz: 16eebca900c51bbadbb9ebaa14832b5a91375f726db789c50e9aad188be2f853859bc7dbf8a31798ec79735bae150eccf2a9cbf97c68cff5656af686acc26f26
|
data/empty_view.tgz
CHANGED
Binary file
|
data/lib/helpers-blog.rb
CHANGED
@@ -67,17 +67,17 @@ module RuneBlog::Helpers
|
|
67
67
|
vals
|
68
68
|
end
|
69
69
|
|
70
|
-
def put_config(root:, view:"test_view", editor: "/usr/local/bin/vim")
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
end
|
70
|
+
# def put_config(root:, view:"test_view", editor: "/usr/local/bin/vim")
|
71
|
+
# log!(enter: __method__, args: [root, view, editor])
|
72
|
+
# Dir.mkdir(root) unless Dir.exist?(root)
|
73
|
+
# Dir.chdir(root) do
|
74
|
+
# File.open("config", "w") do |cfg|
|
75
|
+
# cfg.puts "root: #{root}"
|
76
|
+
# cfg.puts "current_view: #{view}"
|
77
|
+
# cfg.puts "editor: #{editor}"
|
78
|
+
# end
|
79
|
+
# end
|
80
|
+
# end
|
81
81
|
|
82
82
|
def write_config(obj, file)
|
83
83
|
log!(enter: __method__, args: [obj, file])
|
@@ -95,10 +95,10 @@ end
|
|
95
95
|
|
96
96
|
def new_dotfile(root: ".blogs", current_view: "test_view", editor: "vi")
|
97
97
|
log!(enter: __method__, args: [root, current_view, editor])
|
98
|
-
root = Dir.pwd
|
98
|
+
root = Dir.pwd/root
|
99
99
|
x = OpenStruct.new
|
100
100
|
x.root, x.current_view, x.editor = root, current_view, editor
|
101
|
-
write_config(x,
|
101
|
+
write_config(x, root/RuneBlog::ConfigFile)
|
102
102
|
end
|
103
103
|
|
104
104
|
def new_sequence
|
data/lib/helpers-repl.rb
CHANGED
@@ -207,19 +207,6 @@ module RuneBlog::REPL
|
|
207
207
|
error(err)
|
208
208
|
end
|
209
209
|
|
210
|
-
def ask_publishing_info # returns Publishing object
|
211
|
-
# user, server, root, path, protocol = "http"
|
212
|
-
puts "Please enter publishing data for view #{@blog.view}..."
|
213
|
-
user = ask("User: ")
|
214
|
-
root = ask("Doc root: ")
|
215
|
-
server = ask("Server: ")
|
216
|
-
path = ask("View path: ")
|
217
|
-
proto = ask("Protocol (ENTER for http): ")
|
218
|
-
[user, root, server, path, proto].each {|x| x.chomp! }
|
219
|
-
proto = "http" if proto.empty?
|
220
|
-
RuneBlog::Publishing.new(user, server, root, path, proto)
|
221
|
-
end
|
222
|
-
|
223
210
|
def tags_for_view(vname = @blog.view)
|
224
211
|
Dir.chdir(vname) do
|
225
212
|
fname = "tagpool"
|
data/lib/liveblog.rb
CHANGED
@@ -13,7 +13,7 @@ def init_liveblog # FIXME - a lot of this logic sucks
|
|
13
13
|
here = Dir.pwd
|
14
14
|
dir = here
|
15
15
|
loop { dir = Dir.pwd; break if File.exist?("config"); Dir.chdir("..") }
|
16
|
-
Dir.chdir(here)
|
16
|
+
Dir.chdir(here) # here??? or dir??
|
17
17
|
@blog = RuneBlog.new(dir)
|
18
18
|
@root = @blog.root
|
19
19
|
@view = @blog.view
|
@@ -23,21 +23,6 @@ def init_liveblog # FIXME - a lot of this logic sucks
|
|
23
23
|
@theme = @vdir/:themes/:standard
|
24
24
|
end
|
25
25
|
|
26
|
-
## FIXME - livetext is duplicated from helpers-blog
|
27
|
-
#
|
28
|
-
# def livetext(src, dst=nil, cwd=Dir.pwd)
|
29
|
-
# Dir.chdir(cwd) do
|
30
|
-
# src += ".lt3" unless src.end_with?(".lt3")
|
31
|
-
# if dst
|
32
|
-
# dst += ".html" unless dst.end_with?(".html")
|
33
|
-
# else
|
34
|
-
# dst = src.sub(/.lt3$/, "")
|
35
|
-
# end
|
36
|
-
# return unless stale?(src, dst)
|
37
|
-
# system("livetext #{src} >#{dst}")
|
38
|
-
# end
|
39
|
-
# end
|
40
|
-
|
41
26
|
##################
|
42
27
|
# "dot" commands
|
43
28
|
##################
|
data/lib/publish.rb
CHANGED
@@ -7,18 +7,27 @@ class RuneBlog::Publishing
|
|
7
7
|
BadRemoteLogin = Exception.new("Can't login remotely")
|
8
8
|
BadRemotePerms = Exception.new("Bad remote permissions")
|
9
9
|
|
10
|
-
def initialize(
|
11
|
-
log!(enter: __method__, args: [
|
10
|
+
def initialize(view)
|
11
|
+
log!(enter: __method__, args: [view.to_s])
|
12
12
|
@blog = RuneBlog.blog
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
13
|
+
# # Clunky...
|
14
|
+
# if params.size == 1 && params[0].is_a?(OpenStruct)
|
15
|
+
# obj = params[0]
|
16
|
+
# array = obj.to_h.values_at(:user, :server, :docroot,
|
17
|
+
# :path, :proto)
|
18
|
+
# @user, @server, @docroot, @path, @proto = *array
|
19
|
+
# else
|
20
|
+
# @user, @server, @docroot, @path, @proto = *params
|
21
|
+
# end
|
22
|
+
# find a better way?
|
23
|
+
gfile = @blog.root/:views/view/"themes/standard/global.lt3"
|
24
|
+
data = File.readlines(gfile)
|
25
|
+
grab = ->(var) { data.grep(/^#{var} /).first.chomp.split(" ", 2)[1] }
|
26
|
+
@user = grab.call("publish.user")
|
27
|
+
@server = grab.call("publish.server")
|
28
|
+
@docroot = grab.call("publish.docroot")
|
29
|
+
@path = grab.call("publish.path")
|
30
|
+
@proto = grab.call("publish.proto")
|
22
31
|
end
|
23
32
|
|
24
33
|
def to_h
|
@@ -44,7 +53,7 @@ class RuneBlog::Publishing
|
|
44
53
|
dir = @docroot/@path
|
45
54
|
view_name = @blog.view.name
|
46
55
|
viewpath = dir/view_name
|
47
|
-
|
56
|
+
# result = system!("ssh #@user@#@server -x mkdir -p #{viewpath}")
|
48
57
|
result = system!("ssh #@user@#@server -x mkdir -p #{viewpath}/assets")
|
49
58
|
files.each do |file|
|
50
59
|
dest = "#@user@#@server:" + dir/view_name
|
data/lib/repl.rb
CHANGED
@@ -39,10 +39,7 @@ module RuneBlog::REPL
|
|
39
39
|
def cmd_config(arg, testing = false)
|
40
40
|
check_empty(arg)
|
41
41
|
dir = @blog.view.dir
|
42
|
-
|
43
|
-
items = ["publish",
|
44
|
-
"themes/standard/blogview.lt3",
|
45
|
-
"themes/standard/post-index.lt3"]
|
42
|
+
items = ["themes/standard/blogview.lt3", "themes/standard/post-index.lt3"]
|
46
43
|
num, fname = STDSCR.menu(title: "Edit file:", items: items)
|
47
44
|
edit_file("#{dir}/#{fname}")
|
48
45
|
end
|
@@ -94,17 +91,26 @@ module RuneBlog::REPL
|
|
94
91
|
|
95
92
|
def cmd_publish(arg, testing = false)
|
96
93
|
# Future Hal says please refactor this
|
94
|
+
STDERR.puts :CP1
|
97
95
|
puts unless testing
|
96
|
+
STDERR.puts :CP2
|
98
97
|
reset_output
|
98
|
+
STDERR.puts :CP3
|
99
99
|
check_empty(arg)
|
100
|
+
STDERR.puts :CP4
|
100
101
|
unless @blog.view.can_publish?
|
101
|
-
|
102
|
-
|
102
|
+
STDERR.puts :CP5
|
103
|
+
msg = "Can't publish... see globals.lt3"
|
104
|
+
puts msg unless testing
|
105
|
+
output! msg
|
103
106
|
return @out
|
104
107
|
end
|
105
108
|
|
109
|
+
STDERR.puts :CP6
|
106
110
|
# Need to check dirty/clean status first
|
107
111
|
dirty, all, assets = @blog.view.publishable_files
|
112
|
+
STDERR.puts [dirty, all, assets].inspect
|
113
|
+
sleep 8
|
108
114
|
files = dirty
|
109
115
|
if dirty.empty?
|
110
116
|
puts fx("\n No files are out of date." + " "*20, :bold)
|
@@ -179,12 +185,6 @@ module RuneBlog::REPL
|
|
179
185
|
reset_output
|
180
186
|
@blog.create_view(arg)
|
181
187
|
@blog.change_view(arg)
|
182
|
-
resp = yesno("Add publishing/hosting info now? (Y/N): ")
|
183
|
-
if resp
|
184
|
-
@blog.view.publisher = ask_publishing_info
|
185
|
-
out = @blog.view.dir + "/publish"
|
186
|
-
write_config(@blog.view.publisher, out)
|
187
|
-
end
|
188
188
|
@out
|
189
189
|
rescue ViewAlreadyExists
|
190
190
|
puts 'Blog already exists'
|
data/lib/runeblog.rb
CHANGED
@@ -64,7 +64,10 @@ class RuneBlog
|
|
64
64
|
create_dirs(:drafts, :views, :posts)
|
65
65
|
new_sequence
|
66
66
|
end
|
67
|
-
|
67
|
+
# put_config(root: root)
|
68
|
+
x = OpenStruct.new
|
69
|
+
x.root, x.current_view, x.editor = root, "test_view", "/usr/bin/vim " # dumb - FIXME later
|
70
|
+
write_config(x, root/ConfigFile)
|
68
71
|
@blog = self.new(root)
|
69
72
|
@blog.create_view("test_view")
|
70
73
|
@blog
|
@@ -101,16 +104,13 @@ class RuneBlog
|
|
101
104
|
def _deploy_local(dir)
|
102
105
|
log!(enter: __method__, args: [dir])
|
103
106
|
Dir.chdir(dir) do
|
104
|
-
# views = File.readlines("metadata.txt").grep(/^views: /).first[7..-1].split
|
105
107
|
views = _retrieve_metadata(:views)
|
106
|
-
STDERR.puts "---- deploy: views = #{views.inspect}"
|
107
108
|
views.each {|v| system!("cp *html #@root/views/#{v}/remote") }
|
108
109
|
end
|
109
110
|
end
|
110
111
|
|
111
112
|
def _retrieve_metadata(key)
|
112
113
|
key = key.to_s
|
113
|
-
STDERR.puts "--- retrieve: key = #{key.inspect}"
|
114
114
|
lines = File.readlines("metadata.txt")
|
115
115
|
lines = lines.grep(/^#{key}: /)
|
116
116
|
case lines.size
|
@@ -172,10 +172,7 @@ STDERR.puts "--- retrieve: key = #{key.inspect}"
|
|
172
172
|
|
173
173
|
def _set_publisher
|
174
174
|
log!(enter: __method__)
|
175
|
-
|
176
|
-
@view.publisher = nil
|
177
|
-
return unless File.exist?(file)
|
178
|
-
@view.publisher = RuneBlog::Publishing.new(read_config(file))
|
175
|
+
@view.publisher = RuneBlog::Publishing.new(@view.to_s) # FIXME refactor
|
179
176
|
end
|
180
177
|
|
181
178
|
def view=(arg)
|
@@ -219,15 +216,6 @@ STDERR.puts "--- retrieve: key = #{key.inspect}"
|
|
219
216
|
Dir.exist?(DotDir) && File.exist?(DotDir/ConfigFile)
|
220
217
|
end
|
221
218
|
|
222
|
-
def make_dummy_publish_file(view_name)
|
223
|
-
log!(enter: __method__, args: [view_name])
|
224
|
-
vdir = @root/:views/view_name
|
225
|
-
pub = [:user, :server, :docroot, :path, :proto]
|
226
|
-
pub = pub.map {|x| x.to_s + ": undefined" }
|
227
|
-
pub = pub.join("\n") + "\n"
|
228
|
-
dump(pub, vdir/:publish)
|
229
|
-
end
|
230
|
-
|
231
219
|
def mark_last_published(str)
|
232
220
|
log!(enter: __method__, args: [str])
|
233
221
|
dump(str, "last_published")
|
@@ -267,7 +255,6 @@ STDERR.puts "--- retrieve: key = #{key.inspect}"
|
|
267
255
|
log!(enter: __method__, args: [view_name])
|
268
256
|
check_valid_new_view(view_name)
|
269
257
|
make_empty_view_tree(view_name)
|
270
|
-
make_dummy_publish_file(view_name)
|
271
258
|
mark_last_published("Initial creation")
|
272
259
|
add_view(view_name)
|
273
260
|
end
|
@@ -352,6 +339,7 @@ STDERR.puts "--- retrieve: key = #{key.inspect}"
|
|
352
339
|
def create_new_post(title, testing = false, teaser: nil, body: nil, other_views: [])
|
353
340
|
log!(enter: __method__, args: [title, testing, teaser, body, other_views])
|
354
341
|
meta = nil
|
342
|
+
STDERR.puts other_views.inspect
|
355
343
|
Dir.chdir(@root/:posts) do
|
356
344
|
post = Post.create(title: title, teaser: teaser, body: body, other_views: other_views)
|
357
345
|
post.edit unless testing
|
@@ -394,7 +382,7 @@ STDERR.puts "--- retrieve: key = #{key.inspect}"
|
|
394
382
|
raise ArgumentError unless view.is_a?(String) || view.is_a?(RuneBlog::View)
|
395
383
|
x = OpenStruct.new
|
396
384
|
x.root, x.current_view, x.editor = @root, view.to_s, @editor # dumb - FIXME later
|
397
|
-
write_config(x, ConfigFile)
|
385
|
+
write_config(x, @root/ConfigFile)
|
398
386
|
self.view = view # error checking?
|
399
387
|
end
|
400
388
|
|
data/lib/runeblog_version.rb
CHANGED
data/lib/view.rb
CHANGED
@@ -12,12 +12,8 @@ class RuneBlog::View
|
|
12
12
|
raise NoBlogAccessor if RuneBlog.blog.nil?
|
13
13
|
@blog = RuneBlog.blog
|
14
14
|
@name = name
|
15
|
-
@
|
16
|
-
|
17
|
-
if File.exist?(pub_file) && File.size(pub_file) != 0
|
18
|
-
@publisher = RuneBlog::Publishing.new(read_config(pub_file))
|
19
|
-
@can_publish = true
|
20
|
-
end
|
15
|
+
@publisher = RuneBlog::Publishing.new(name)
|
16
|
+
@can_publish = true # FIXME
|
21
17
|
end
|
22
18
|
|
23
19
|
def dir
|
data/test/general_test.rb
CHANGED