middleman-presentation-core 0.16.0.alpha
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 +7 -0
- data/.rdebugrc +7 -0
- data/.rspec +3 -0
- data/.rubocop.yml +52 -0
- data/.simplecov +25 -0
- data/.yardopts +5 -0
- data/Guardfile +13 -0
- data/LICENSE.software +21 -0
- data/Rakefile +200 -0
- data/config/license_finder.yml +13 -0
- data/cucumber.yml +2 -0
- data/doc/licenses/dependencies.csv +55 -0
- data/doc/licenses/dependencies.db +0 -0
- data/doc/licenses/dependencies.html +1415 -0
- data/doc/licenses/dependencies.md +603 -0
- data/doc/licenses/dependencies_detailed.csv +190 -0
- data/doc/yard/.keep +0 -0
- data/features/build_presentation.feature +62 -0
- data/features/code_highlighting.feature +43 -0
- data/features/components.feature +29 -0
- data/features/create_plugin-cli.feature +11 -0
- data/features/create_presentation-cli.feature +349 -0
- data/features/create_slide-cli.feature +188 -0
- data/features/create_slides-templates-cli.feature +114 -0
- data/features/create_theme-cli.feature +58 -0
- data/features/default_slides.feature +58 -0
- data/features/edit_slide-cli.feature +121 -0
- data/features/export_presentation-cli.feature +23 -0
- data/features/grouping_slides.feature +150 -0
- data/features/ignore_slides.feature +103 -0
- data/features/init_application-cli.feature +59 -0
- data/features/init_predefined_slides.feature +9 -0
- data/features/language_detection.feature +0 -0
- data/features/list_assets-cli.feature +13 -0
- data/features/list_components-cli.feature +13 -0
- data/features/list_helpers-cli.feature +13 -0
- data/features/list_plugins-cli.feature +13 -0
- data/features/list_styles-cli.feature +17 -0
- data/features/plugins.feature +63 -0
- data/features/presentation.feature +57 -0
- data/features/rename_slide-cli.feature +176 -0
- data/features/render_slides.feature +76 -0
- data/features/show_config-cli.feature +25 -0
- data/features/show_footer.feature +14 -0
- data/features/show_slide_number.feature +31 -0
- data/features/show_support_information-cli.feature +12 -0
- data/features/support/aruba.rb +18 -0
- data/features/support/ci.rb +3 -0
- data/features/support/env.rb +25 -0
- data/features/support/fixtures.rb +21 -0
- data/features/support/hash.rb +2 -0
- data/features/support/reporting.rb +2 -0
- data/features/version_number.feature +15 -0
- data/fixtures/middleman-presentation-simple_plugin/Rakefile +1 -0
- data/fixtures/middleman-presentation-simple_plugin/lib/middleman-presentation-plugin.rb +0 -0
- data/fixtures/middleman-presentation-simple_plugin/lib/middleman-presentation-simple_plugin/helpers.rb +13 -0
- data/fixtures/middleman-presentation-simple_plugin/lib/middleman-presentation-simple_plugin/plugin.rb +34 -0
- data/fixtures/middleman-presentation-simple_plugin/lib/middleman-presentation-simple_plugin/version.rb +8 -0
- data/fixtures/middleman-presentation-simple_plugin/lib/middleman-presentation-simple_plugin.rb +11 -0
- data/fixtures/middleman-presentation-simple_plugin/middleman-presentation-simple_plugin.gemspec +22 -0
- data/fixtures/middleman-presentation-simple_plugin/vendor/assets/stylesheets/test_simple.scss +3 -0
- data/lib/middleman-presentation-core/application_config.rb +198 -0
- data/lib/middleman-presentation-core/asset.rb +103 -0
- data/lib/middleman-presentation-core/asset_component.rb +34 -0
- data/lib/middleman-presentation-core/asset_list.rb +84 -0
- data/lib/middleman-presentation-core/asset_store.rb +73 -0
- data/lib/middleman-presentation-core/assets_loader.rb +95 -0
- data/lib/middleman-presentation-core/assets_manager.rb +73 -0
- data/lib/middleman-presentation-core/cache.rb +49 -0
- data/lib/middleman-presentation-core/cli/base.rb +30 -0
- data/lib/middleman-presentation-core/cli/base_group.rb +11 -0
- data/lib/middleman-presentation-core/cli/build.rb +13 -0
- data/lib/middleman-presentation-core/cli/build_presentation.rb +57 -0
- data/lib/middleman-presentation-core/cli/change.rb +13 -0
- data/lib/middleman-presentation-core/cli/change_slide.rb +82 -0
- data/lib/middleman-presentation-core/cli/create.rb +16 -0
- data/lib/middleman-presentation-core/cli/create_plugin.rb +62 -0
- data/lib/middleman-presentation-core/cli/create_presentation.rb +300 -0
- data/lib/middleman-presentation-core/cli/create_slide.rb +52 -0
- data/lib/middleman-presentation-core/cli/create_theme.rb +81 -0
- data/lib/middleman-presentation-core/cli/edit.rb +13 -0
- data/lib/middleman-presentation-core/cli/edit_slide.rb +49 -0
- data/lib/middleman-presentation-core/cli/export.rb +11 -0
- data/lib/middleman-presentation-core/cli/export_presentation.rb +55 -0
- data/lib/middleman-presentation-core/cli/init.rb +12 -0
- data/lib/middleman-presentation-core/cli/init_application.rb +48 -0
- data/lib/middleman-presentation-core/cli/init_predefined_slides.rb +31 -0
- data/lib/middleman-presentation-core/cli/list.rb +66 -0
- data/lib/middleman-presentation-core/cli/reset_thor.rb +18 -0
- data/lib/middleman-presentation-core/cli/runner.rb +47 -0
- data/lib/middleman-presentation-core/cli/serve.rb +13 -0
- data/lib/middleman-presentation-core/cli/serve_presentation.rb +30 -0
- data/lib/middleman-presentation-core/cli/shared.rb +51 -0
- data/lib/middleman-presentation-core/cli/show.rb +70 -0
- data/lib/middleman-presentation-core/comparable_slide.rb +69 -0
- data/lib/middleman-presentation-core/component.rb +86 -0
- data/lib/middleman-presentation-core/components_manager.rb +96 -0
- data/lib/middleman-presentation-core/configuration_file.rb +15 -0
- data/lib/middleman-presentation-core/css_class_extracter.rb +41 -0
- data/lib/middleman-presentation-core/custom_template.rb +15 -0
- data/lib/middleman-presentation-core/erb_template.rb +15 -0
- data/lib/middleman-presentation-core/errors.rb +10 -0
- data/lib/middleman-presentation-core/existing_slide.rb +92 -0
- data/lib/middleman-presentation-core/frontend_component.rb +75 -0
- data/lib/middleman-presentation-core/group_template.rb +15 -0
- data/lib/middleman-presentation-core/helpers_manager.rb +37 -0
- data/lib/middleman-presentation-core/ignore_file.rb +52 -0
- data/lib/middleman-presentation-core/liquid_template.rb +15 -0
- data/lib/middleman-presentation-core/list.rb +7 -0
- data/lib/middleman-presentation-core/locale_configurator.rb +84 -0
- data/lib/middleman-presentation-core/logger.rb +8 -0
- data/lib/middleman-presentation-core/main.rb +55 -0
- data/lib/middleman-presentation-core/markdown_template.rb +15 -0
- data/lib/middleman-presentation-core/middleman_environment.rb +108 -0
- data/lib/middleman-presentation-core/middleman_extension.rb +12 -0
- data/lib/middleman-presentation-core/middleman_step_definitions.rb +131 -0
- data/lib/middleman-presentation-core/new_slide.rb +140 -0
- data/lib/middleman-presentation-core/overwrite_sass.rb +22 -0
- data/lib/middleman-presentation-core/plugin.rb +8 -0
- data/lib/middleman-presentation-core/plugin_api.rb +65 -0
- data/lib/middleman-presentation-core/plugins_manager.rb +7 -0
- data/lib/middleman-presentation-core/predefined_slide_templates_directory.rb +15 -0
- data/lib/middleman-presentation-core/presentation_helper.rb +69 -0
- data/lib/middleman-presentation-core/register_extension.rb +4 -0
- data/lib/middleman-presentation-core/roles/comparable_by_name.rb +24 -0
- data/lib/middleman-presentation-core/slide_group.rb +33 -0
- data/lib/middleman-presentation-core/slide_list.rb +52 -0
- data/lib/middleman-presentation-core/slide_name.rb +61 -0
- data/lib/middleman-presentation-core/start.rb +68 -0
- data/lib/middleman-presentation-core/step_definitions.rb +238 -0
- data/lib/middleman-presentation-core/syntax_highlighter.rb +42 -0
- data/lib/middleman-presentation-core/test_helpers.rb +22 -0
- data/lib/middleman-presentation-core/transformers/file_keeper.rb +13 -0
- data/lib/middleman-presentation-core/transformers/group_slides.rb +34 -0
- data/lib/middleman-presentation-core/transformers/ignore_slides.rb +28 -0
- data/lib/middleman-presentation-core/transformers/remove_duplicate_slides.rb +32 -0
- data/lib/middleman-presentation-core/transformers/sort_slides.rb +13 -0
- data/lib/middleman-presentation-core/utils.rb +40 -0
- data/lib/middleman-presentation-core/version.rb +8 -0
- data/lib/middleman-presentation-core.rb +127 -0
- data/locales/de.yml +233 -0
- data/locales/en.yml +236 -0
- data/middleman-presentation-core.gemspec +40 -0
- data/source/slides/01.html.liquid +0 -0
- data/spec/asset_component_spec.rb +13 -0
- data/spec/asset_list_spec.rb +50 -0
- data/spec/asset_spec.rb +45 -0
- data/spec/asset_store_spec.rb +61 -0
- data/spec/assets_manager_spec.rb +111 -0
- data/spec/components_manager_spec.rb +142 -0
- data/spec/css_class_extracter_spec.rb +28 -0
- data/spec/existing_slide_spec.rb +177 -0
- data/spec/frontend_component_spec.rb +94 -0
- data/spec/helpers_manager_spec.rb +90 -0
- data/spec/ignore_file_spec.rb +75 -0
- data/spec/new_slide_spec.rb +155 -0
- data/spec/presentation_helper_spec.rb +137 -0
- data/spec/shared_examples/.keep +0 -0
- data/spec/slide_group_spec.rb +54 -0
- data/spec/slide_list_spec.rb +125 -0
- data/spec/slide_name_spec.rb +53 -0
- data/spec/spec_helper.rb +19 -0
- data/spec/support/aruba.rb +53 -0
- data/spec/support/ci.rb +20 -0
- data/spec/support/environment.rb +18 -0
- data/spec/support/filesystem.rb +22 -0
- data/spec/support/locale.rb +2 -0
- data/spec/support/reporting.rb +2 -0
- data/spec/support/rspec.rb +9 -0
- data/spec/support/string.rb +2 -0
- data/spec/transformers/file_keeper_spec.rb +24 -0
- data/spec/transformers/group_slides_spec.rb +44 -0
- data/spec/transformers/ignore_slides_spec.rb +64 -0
- data/spec/transformers/remove_duplicate_slides_spec.rb +120 -0
- data/spec/transformers/sort_slides_spec.rb +17 -0
- data/spec/utils_spec.rb +14 -0
- data/templates/.bowerrc.tt +4 -0
- data/templates/.gitignore +5 -0
- data/templates/Gemfile.tt +32 -0
- data/templates/LICENSE.presentation +1 -0
- data/templates/Rakefile +59 -0
- data/templates/bower.json.tt +8 -0
- data/templates/bundler_config.tt +6 -0
- data/templates/config.rb.tt +2 -0
- data/templates/config.yaml.tt +17 -0
- data/templates/gitignore.tt +14 -0
- data/templates/plugin/%plugin_name%.gemspec.tt +24 -0
- data/templates/plugin/.gitignore +13 -0
- data/templates/plugin/Gemfile.tt +4 -0
- data/templates/plugin/LICENSE.txt.tt +22 -0
- data/templates/plugin/README.md.tt +31 -0
- data/templates/plugin/Rakefile +1 -0
- data/templates/plugin/lib/%plugin_name%/version.rb.tt +8 -0
- data/templates/plugin/lib/%plugin_name%.rb.tt +10 -0
- data/templates/predefined_slides.d/00_00.html.erb.tt +26 -0
- data/templates/predefined_slides.d/00_01.html.md.tt +6 -0
- data/templates/predefined_slides.d/999980.html.erb.tt +4 -0
- data/templates/predefined_slides.d/999981.html.erb.tt +27 -0
- data/templates/predefined_slides.d/999982.html.erb.tt +4 -0
- data/templates/presentation_theme/bower.json.tt +20 -0
- data/templates/presentation_theme/images/.keep +0 -0
- data/templates/presentation_theme/javascripts/%theme_name%.js.tt +0 -0
- data/templates/presentation_theme/stylesheets/%theme_name%.scss.tt +9 -0
- data/templates/presentation_theme/stylesheets/_fonts.scss.tt +0 -0
- data/templates/presentation_theme/stylesheets/_images.scss.tt +5 -0
- data/templates/presentation_theme/stylesheets/_theme.scss.tt +251 -0
- data/templates/rackup.config.erb +16 -0
- data/templates/script/bootstrap +5 -0
- data/templates/script/build +3 -0
- data/templates/script/export +3 -0
- data/templates/script/presentation +3 -0
- data/templates/script/slide +3 -0
- data/templates/script/start +43 -0
- data/templates/slides/custom.md.tt +3 -0
- data/templates/slides/erb.tt +5 -0
- data/templates/slides/group.tt +3 -0
- data/templates/slides/liquid.tt +5 -0
- data/templates/slides/markdown.tt +3 -0
- data/templates/source/index.html.erb +1 -0
- data/templates/source/javascripts/application.js.tt +3 -0
- data/templates/source/layout.erb +133 -0
- data/templates/source/stylesheets/application.scss.tt +3 -0
- metadata +574 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 77157b46fbf6859e28e3a36b4118f81113e73926
|
|
4
|
+
data.tar.gz: 1beb090ded3538ceb23ce35f5db91211fd05a1af
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: ae3fce59b4e1db18baa8e3142505a7b317d8ab9ae5a3f3e5786a9a58a66e1397232750b894de570be8b3ce1213b756466453154d6b2bdbe0ab44c670ab185e84
|
|
7
|
+
data.tar.gz: 445ee94f785d4f6b8c290faa26c26bac3897ef86ccde86dbfa34970dec1b8fa09cab330afc1c647d1747a485ad0d471214c2d1fc922092df178f69081cf321c7
|
data/.rdebugrc
ADDED
data/.rspec
ADDED
data/.rubocop.yml
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
AllCops:
|
|
2
|
+
Exclude:
|
|
3
|
+
- 'tmp/**/*'
|
|
4
|
+
- lib/middleman-presentation-core/middleman_step_definitions.rb
|
|
5
|
+
|
|
6
|
+
# Configuration parameters: AllowURI.
|
|
7
|
+
Metrics/LineLength:
|
|
8
|
+
Max: 225
|
|
9
|
+
|
|
10
|
+
# Configuration parameters: CountKeywordArgs.
|
|
11
|
+
Metrics/ParameterLists:
|
|
12
|
+
Max: 6
|
|
13
|
+
|
|
14
|
+
# Configuration parameters: Exclude.
|
|
15
|
+
Style/FileName:
|
|
16
|
+
Enabled: false
|
|
17
|
+
|
|
18
|
+
# Configuration parameters: CountComments.
|
|
19
|
+
Metrics/MethodLength:
|
|
20
|
+
Max: 118
|
|
21
|
+
|
|
22
|
+
# Configuration parameters: CountComments.
|
|
23
|
+
Metrics/ClassLength:
|
|
24
|
+
Max: 160
|
|
25
|
+
Exclude:
|
|
26
|
+
- lib/middleman-presentation-core/cli/create_presentation.rb
|
|
27
|
+
- lib/middleman-presentation-core/application_config.rb
|
|
28
|
+
|
|
29
|
+
Metrics/CyclomaticComplexity:
|
|
30
|
+
Max: 9
|
|
31
|
+
Exclude:
|
|
32
|
+
- lib/middleman-presentation-core/file_extensions.rb
|
|
33
|
+
- lib/middleman-presentation-core/cli/change_slide.rb
|
|
34
|
+
|
|
35
|
+
Metrics/PerceivedComplexity:
|
|
36
|
+
Exclude:
|
|
37
|
+
- lib/middleman-presentation-core/cli/create_slide.rb
|
|
38
|
+
- lib/middleman-presentation-core/frontend_component.rb
|
|
39
|
+
- lib/middleman-presentation-core/assets_manager.rb
|
|
40
|
+
- lib/middleman-presentation-core/file_extensions.rb
|
|
41
|
+
- lib/middleman-presentation-core/commands/slide.rb
|
|
42
|
+
- lib/middleman-presentation-core/cli/change_slide.rb
|
|
43
|
+
|
|
44
|
+
# Configuration parameters: MaxSlashes.
|
|
45
|
+
Style/RegexpLiteral:
|
|
46
|
+
MaxSlashes: 0
|
|
47
|
+
|
|
48
|
+
Metrics/AbcSize:
|
|
49
|
+
Enabled: false
|
|
50
|
+
|
|
51
|
+
Lint/Debugger:
|
|
52
|
+
Enabled: false
|
data/.simplecov
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
class ExcludeRegexFilter < SimpleCov::Filter
|
|
4
|
+
def matches?(source_file)
|
|
5
|
+
source_file.filename !~ filter_argument
|
|
6
|
+
end
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
class IncludeRegexFilter < SimpleCov::Filter
|
|
10
|
+
def matches?(source_file)
|
|
11
|
+
source_file.filename =~ filter_argument
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
SimpleCov.start do
|
|
16
|
+
add_filter "/features/"
|
|
17
|
+
add_filter "/fixtures/"
|
|
18
|
+
add_filter "/spec/"
|
|
19
|
+
add_filter "/tmp"
|
|
20
|
+
add_filter "/vendor"
|
|
21
|
+
add_filter "/cli"
|
|
22
|
+
|
|
23
|
+
add_group "lib", ExcludeRegexFilter.new(%r{/cli/|/commands/})
|
|
24
|
+
#add_group "cli", IncludeRegexFilter.new(%r{/cli/|/commands/})
|
|
25
|
+
end
|
data/.yardopts
ADDED
data/Guardfile
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
# A sample Guardfile
|
|
3
|
+
# More info at https://github.com/guard/guard#readme
|
|
4
|
+
|
|
5
|
+
# Add files and commands to this file, like the example:
|
|
6
|
+
# watch(%r{file/path}) { `command(s)` }
|
|
7
|
+
#
|
|
8
|
+
guard :shell do
|
|
9
|
+
watch(%r{^source/slides/.+\.(?:erb|html)}) do
|
|
10
|
+
$stderr.puts 'Running middleman'
|
|
11
|
+
system('bundle exec middleman build')
|
|
12
|
+
end
|
|
13
|
+
end
|
data/LICENSE.software
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2014 maxmeyer
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
data/Rakefile
ADDED
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
#!/usr/bin/env rake
|
|
2
|
+
|
|
3
|
+
require 'filegen'
|
|
4
|
+
require 'fedux_org_stdlib/rake_tasks'
|
|
5
|
+
require 'active_support/all'
|
|
6
|
+
require 'open3'
|
|
7
|
+
|
|
8
|
+
def software
|
|
9
|
+
gemspec.name.sub(/mp-/, 'middleman-presentation-')
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def module_name
|
|
13
|
+
software.sub(/-core/, '').gsub(/-/, '/').camelcase
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def require_name
|
|
17
|
+
software
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def gemspec
|
|
21
|
+
# rubocop:disable Lint/Eval
|
|
22
|
+
eval File.read(Dir.glob(File.join(File.expand_path('../', __FILE__), '*.gemspec')).first)
|
|
23
|
+
# rubocop:enable Lint/Eval
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def hardware_architecture
|
|
27
|
+
`uname -m`.chomp
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def archlinux_package_name
|
|
31
|
+
File.join(archlinux_build_directory, "#{software}-#{version}-*-#{hardware_architecture}.pkg.tar.xz")
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def version
|
|
35
|
+
require "#{require_name}/version"
|
|
36
|
+
"#{module_name}::VERSION".constantize
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def root_directory
|
|
40
|
+
::File.expand_path('../', __FILE__)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def tar_file
|
|
44
|
+
::File.join(pkg_directory, "#{software}-#{version}.tar.gz")
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
def tmp_directory
|
|
48
|
+
::File.join(root_directory, 'tmp', "#{software}-#{version}")
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def archlinux_build_directory
|
|
52
|
+
::File.join(root_directory, 'share', 'archlinux')
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def gem_file
|
|
56
|
+
::File.join(root_directory, 'pkg', "#{software}-#{version}.gem")
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def pkg_directory
|
|
60
|
+
::File.join(root_directory, 'pkg')
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def gem_directory
|
|
64
|
+
::File.join(root_directory, 'vendor', 'cache')
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
task default: 'package:gem'
|
|
68
|
+
|
|
69
|
+
file tmp_directory do
|
|
70
|
+
FileUtils.mkdir_p tmp_directory
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
file archlinux_build_directory do
|
|
74
|
+
FileUtils.mkdir_p archlinux_build_directory
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
def extract_sha
|
|
78
|
+
`makepkg -g 2>/dev/null`.split(/\n/).find { |l| l =~ /sha256/ }
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
namespace :package do
|
|
82
|
+
|
|
83
|
+
desc 'build gem package'
|
|
84
|
+
task :gem do
|
|
85
|
+
sh 'RAILS_ENV=production bundle exec rake -f Rakefile.rails assets:clobber'
|
|
86
|
+
sh 'RAILS_ENV=production bundle exec rake -f Rakefile.rails assets:precompile'
|
|
87
|
+
|
|
88
|
+
base_path = File.expand_path('..', __FILE__)
|
|
89
|
+
FileUtils.chmod_R 'a+r', Dir.glob(File.join(base_path, 'public', 'assets', '**', '*')).keep_if { |f| File.file? f }
|
|
90
|
+
|
|
91
|
+
Rake::Task['gem:clean'].invoke
|
|
92
|
+
Rake::Task['gem:build'].invoke
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
desc 'build arch linux package'
|
|
96
|
+
task :archlinux do
|
|
97
|
+
Rake::Task['archlinux:build'].invoke
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
require 'coveralls/rake/task'
|
|
102
|
+
Coveralls::RakeTask.new
|
|
103
|
+
|
|
104
|
+
desc 'Run test suite'
|
|
105
|
+
task test: ['test:rspec', 'test:rubocop', 'test:cucumber']
|
|
106
|
+
|
|
107
|
+
namespace :test do
|
|
108
|
+
desc 'Test with coveralls'
|
|
109
|
+
task coveralls: ['test', 'coveralls:push']
|
|
110
|
+
|
|
111
|
+
require 'rubocop/rake_task'
|
|
112
|
+
RuboCop::RakeTask.new
|
|
113
|
+
|
|
114
|
+
desc 'Run rspec'
|
|
115
|
+
task :rspec do
|
|
116
|
+
sh 'bundle exec rspec'
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
desc 'Run cucumber'
|
|
120
|
+
task :cucumber do
|
|
121
|
+
sh 'bundle exec cucumber -p all'
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
task :parallel_cucumber do
|
|
125
|
+
sh 'bundle exec parallel_cucumber features -o "-p all" --serialize-stdout'
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
desc 'Run mutant'
|
|
129
|
+
task :mutant do
|
|
130
|
+
sh 'mutant --include lib --require middleman-presentation --use rspec "Middleman::Presentation*"'
|
|
131
|
+
end
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
namespace :gem do
|
|
135
|
+
desc 'Clean build packages'
|
|
136
|
+
task :clean do
|
|
137
|
+
FileUtils.rm Dir.glob(File.join(pkg_directory, '*.gem'))
|
|
138
|
+
end
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
namespace :archlinux do
|
|
142
|
+
desc 'Install arch linux package'
|
|
143
|
+
task :install do
|
|
144
|
+
sh "sudo pacman -U #{archlinux_package_name}"
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
desc 'Prepare package build'
|
|
148
|
+
task prepare: ['package:gem', archlinux_build_directory] do
|
|
149
|
+
generator = Filegen::Rubygen.new
|
|
150
|
+
template = File.read(File.expand_path('../share/archlinux/PKGBUILD.sh.erb', __FILE__))
|
|
151
|
+
build_file = File.expand_path('../share/archlinux/PKGBUILD', __FILE__)
|
|
152
|
+
|
|
153
|
+
if ENV.key?('LOCAL_BUILD')
|
|
154
|
+
package_file = ::File.join(pkg_directory, "#{software}-#{version}.gem")
|
|
155
|
+
source = ''
|
|
156
|
+
else
|
|
157
|
+
# package_file = '$pkgname-$pkgver.gem'
|
|
158
|
+
package_file = '$pkgname'
|
|
159
|
+
source = 'http://gems.rubyforge.org/gems/$pkgname-$pkgver.gem'
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
data = {
|
|
163
|
+
sha: nil,
|
|
164
|
+
version: version,
|
|
165
|
+
package: package_file,
|
|
166
|
+
source: source
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
Dir.chdir(archlinux_build_directory) do
|
|
170
|
+
File.open(build_file, 'w') do |f|
|
|
171
|
+
f.write generator.run(template, data)
|
|
172
|
+
end
|
|
173
|
+
|
|
174
|
+
data = {
|
|
175
|
+
sha: extract_sha,
|
|
176
|
+
version: version,
|
|
177
|
+
package: package_file,
|
|
178
|
+
source: source
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
File.open(build_file, 'w') do |f|
|
|
182
|
+
f.write generator.run(template, data)
|
|
183
|
+
end
|
|
184
|
+
end
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
desc 'Build package'
|
|
188
|
+
task build: 'archlinux:prepare' do
|
|
189
|
+
Dir.chdir(archlinux_build_directory) do
|
|
190
|
+
sh 'makepkg -f'
|
|
191
|
+
end
|
|
192
|
+
end
|
|
193
|
+
|
|
194
|
+
desc 'Build source package for aur'
|
|
195
|
+
task build_source: 'archlinux:prepare' do
|
|
196
|
+
Dir.chdir(archlinux_build_directory) do
|
|
197
|
+
sh 'makepkg --source'
|
|
198
|
+
end
|
|
199
|
+
end
|
|
200
|
+
end
|
data/cucumber.yml
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
activesupport, 4.1.4, MIT
|
|
2
|
+
addressable, 2.3.6, Apache 2.0
|
|
3
|
+
bundler, 1.6.5, MIT
|
|
4
|
+
celluloid, 0.15.2, MIT
|
|
5
|
+
chunky_png, 1.3.1, MIT
|
|
6
|
+
coffee-script, 2.3.0, MIT
|
|
7
|
+
coffee-script-source, 1.7.1, MIT
|
|
8
|
+
compass, 0.12.7, MIT
|
|
9
|
+
compass-import-once, 1.0.4, MIT
|
|
10
|
+
em-websocket, 0.5.1, MIT
|
|
11
|
+
erubis, 2.7.0, MIT
|
|
12
|
+
eventmachine, 1.0.3, ruby
|
|
13
|
+
execjs, 2.2.1, MIT
|
|
14
|
+
facter, 2.1.0, Apache 2.0
|
|
15
|
+
fedux_org-stdlib, 0.6.50, MIT
|
|
16
|
+
ffi, 1.9.3, BSD
|
|
17
|
+
fssm, 0.2.10, MIT
|
|
18
|
+
haml, 4.0.5, MIT
|
|
19
|
+
hike, 1.2.3, MIT
|
|
20
|
+
hooks, 0.4.0, MIT
|
|
21
|
+
http_parser.rb, 0.6.0, MIT
|
|
22
|
+
i18n, 0.6.11, MIT
|
|
23
|
+
json, 1.8.1, ruby
|
|
24
|
+
kramdown, 1.4.1, MIT
|
|
25
|
+
launchy, 2.4.2, ISC
|
|
26
|
+
liquid, 2.6.1, MIT
|
|
27
|
+
listen, 2.7.9, MIT
|
|
28
|
+
middleman, 3.3.4, MIT
|
|
29
|
+
middleman-core, 3.3.4, MIT
|
|
30
|
+
middleman-livereload, 3.3.4, MIT
|
|
31
|
+
middleman-presentation, 0.15.2, MIT
|
|
32
|
+
middleman-sprockets, 3.3.6, MIT
|
|
33
|
+
mini_portile, 0.6.0, MIT
|
|
34
|
+
minitest, 5.4.0, MIT
|
|
35
|
+
multi_json, 1.10.1, MIT
|
|
36
|
+
nokogiri, 1.6.3.1, MIT
|
|
37
|
+
padrino-helpers, 0.12.2, MIT
|
|
38
|
+
padrino-support, 0.12.2, MIT
|
|
39
|
+
rack, 1.5.2, MIT
|
|
40
|
+
rack-livereload, 0.3.15, MIT
|
|
41
|
+
rack-test, 0.6.2, MIT
|
|
42
|
+
rake, 10.3.2, MIT
|
|
43
|
+
rb-fsevent, 0.9.4, MIT
|
|
44
|
+
rb-inotify, 0.9.5, MIT
|
|
45
|
+
sass, 3.2.19, MIT
|
|
46
|
+
sprockets, 2.12.1, MIT
|
|
47
|
+
sprockets-helpers, 1.1.0, MIT
|
|
48
|
+
sprockets-sass, 1.2.0, MIT
|
|
49
|
+
thor, 0.19.1, MIT
|
|
50
|
+
thread_safe, 0.3.4, Apache 2.0
|
|
51
|
+
tilt, 1.4.1, MIT
|
|
52
|
+
timers, 1.1.0, MIT
|
|
53
|
+
tzinfo, 1.2.2, MIT
|
|
54
|
+
uber, 0.0.8, MIT
|
|
55
|
+
uglifier, 2.5.3, MIT
|
|
Binary file
|