nesta 0.12.0 → 0.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/tests.yml +21 -0
- data/.gitignore +1 -0
- data/.gitmodules +0 -6
- data/CHANGES +99 -0
- data/Gemfile.lock +43 -39
- data/LICENSE +1 -1
- data/README.md +9 -14
- data/RELEASING.md +9 -7
- data/Rakefile +2 -2
- data/bin/nesta +5 -2
- data/config/deploy.rb.sample +1 -1
- data/lib/nesta/app.rb +1 -2
- data/lib/nesta/commands/build.rb +38 -0
- data/lib/nesta/commands/demo/content.rb +8 -10
- data/lib/nesta/commands/edit.rb +2 -6
- data/lib/nesta/commands/new.rb +11 -12
- data/lib/nesta/commands/plugin/create.rb +7 -9
- data/lib/nesta/commands/template.rb +20 -0
- data/lib/nesta/commands/theme/create.rb +8 -8
- data/lib/nesta/commands/theme/enable.rb +3 -5
- data/lib/nesta/commands/theme/install.rb +6 -10
- data/lib/nesta/commands.rb +9 -0
- data/lib/nesta/config.rb +49 -75
- data/lib/nesta/config_file.rb +29 -0
- data/lib/nesta/helpers.rb +0 -5
- data/lib/nesta/models.rb +33 -34
- data/lib/nesta/navigation.rb +0 -5
- data/lib/nesta/overrides.rb +32 -43
- data/lib/nesta/plugin.rb +0 -16
- data/lib/nesta/static/assets.rb +50 -0
- data/lib/nesta/static/html_file.rb +26 -0
- data/lib/nesta/static/site.rb +104 -0
- data/lib/nesta/system_command.rb +15 -0
- data/lib/nesta/version.rb +1 -1
- data/lib/nesta.rb +7 -4
- data/nesta.gemspec +5 -5
- data/templates/config/config.yml +28 -2
- data/templates/themes/README.md +1 -1
- data/templates/themes/views/master.sass +1 -1
- data/test/integration/atom_feed_test.rb +1 -1
- data/test/integration/commands/build_test.rb +53 -0
- data/test/integration/commands/demo/content_test.rb +8 -6
- data/test/integration/commands/edit_test.rb +4 -4
- data/test/integration/commands/new_test.rb +22 -51
- data/test/integration/commands/plugin/create_test.rb +7 -4
- data/test/integration/commands/theme/create_test.rb +8 -2
- data/test/integration/commands/theme/enable_test.rb +7 -1
- data/test/integration/commands/theme/install_test.rb +13 -9
- data/test/integration/overrides_test.rb +1 -1
- data/test/integration/sitemap_test.rb +1 -1
- data/test/support/temporary_files.rb +1 -1
- data/test/support/test_configuration.rb +2 -4
- data/test/unit/config_test.rb +25 -94
- data/test/unit/static/assets_test.rb +56 -0
- data/test/unit/static/html_file_test.rb +41 -0
- data/test/unit/static/site_test.rb +104 -0
- data/test/unit/system_command_test.rb +20 -0
- data/views/atom.haml +2 -2
- data/views/comments.haml +2 -2
- data/views/footer.haml +1 -1
- data/views/header.haml +2 -3
- data/views/layout.haml +2 -2
- data/views/master.sass +1 -1
- data/views/mixins.sass +2 -2
- data/views/normalize.scss +0 -1
- data/views/sitemap.haml +1 -1
- metadata +44 -31
- data/.hound.yml +0 -2
- data/.rspec +0 -1
- data/.travis.yml +0 -11
- data/lib/nesta/commands/command.rb +0 -57
- data/test/support/silence_commands_during_tests.rb +0 -5
- data/test/unit/commands_test.rb +0 -23
data/.rspec
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
--color
|
data/.travis.yml
DELETED
@@ -1,57 +0,0 @@
|
|
1
|
-
module Nesta
|
2
|
-
module Commands
|
3
|
-
class UsageError < RuntimeError; end
|
4
|
-
|
5
|
-
module Command
|
6
|
-
def run_process(*args)
|
7
|
-
system(*args)
|
8
|
-
if ! $?.success?
|
9
|
-
message = if $?.exitstatus == 127
|
10
|
-
"#{args[0]} not found"
|
11
|
-
else
|
12
|
-
"'#{args.join(' ')}' failed with status #{$?.exitstatus}"
|
13
|
-
end
|
14
|
-
fail(message)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
def fail(message)
|
19
|
-
$stderr.puts "Error: #{message}"
|
20
|
-
exit 1
|
21
|
-
end
|
22
|
-
|
23
|
-
def template_root
|
24
|
-
File.expand_path('../../../templates', File.dirname(__FILE__))
|
25
|
-
end
|
26
|
-
|
27
|
-
def copy_template(src, dest)
|
28
|
-
FileUtils.mkdir_p(File.dirname(dest))
|
29
|
-
template = ERB.new(File.read(File.join(template_root, src)), nil, "-")
|
30
|
-
File.open(dest, 'w') { |file| file.puts template.result(binding) }
|
31
|
-
end
|
32
|
-
|
33
|
-
def copy_templates(templates)
|
34
|
-
templates.each { |src, dest| copy_template(src, dest) }
|
35
|
-
end
|
36
|
-
|
37
|
-
def update_config_yaml(pattern, replacement)
|
38
|
-
configured = false
|
39
|
-
File.open(Nesta::Config.yaml_path, 'r+') do |file|
|
40
|
-
output = ''
|
41
|
-
file.each_line do |line|
|
42
|
-
if configured
|
43
|
-
output << line
|
44
|
-
else
|
45
|
-
output << line.sub(pattern, replacement)
|
46
|
-
configured = true if line =~ pattern
|
47
|
-
end
|
48
|
-
end
|
49
|
-
output << "#{replacement}\n" unless configured
|
50
|
-
file.pos = 0
|
51
|
-
file.print(output)
|
52
|
-
file.truncate(file.pos)
|
53
|
-
end
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
data/test/unit/commands_test.rb
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
require_relative '../../lib/nesta/commands'
|
3
|
-
|
4
|
-
class TestCommand
|
5
|
-
include Nesta::Commands::Command
|
6
|
-
end
|
7
|
-
|
8
|
-
describe 'Nesta::Commands::Command' do
|
9
|
-
describe '#run_process' do
|
10
|
-
it 'catches errors when running external processes' do
|
11
|
-
TestCommand.new.run_process('ls / >/dev/null')
|
12
|
-
begin
|
13
|
-
stderr, $stderr = $stderr, File.open('/dev/null', 'w')
|
14
|
-
assert_raises(SystemExit) do
|
15
|
-
TestCommand.new.run_process('ls no-such-file 2>/dev/null')
|
16
|
-
end
|
17
|
-
ensure
|
18
|
-
$stderr.close
|
19
|
-
$stderr = stderr
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|