pantograph 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.yardopts +1 -0
- data/LICENSE +21 -0
- data/README.md +197 -0
- data/bin/bin-proxy +19 -0
- data/bin/pantograph +23 -0
- data/pantograph/README.md +11 -0
- data/pantograph/lib/assets/ActionDetails.md.erb +106 -0
- data/pantograph/lib/assets/Actions.md.erb +43 -0
- data/pantograph/lib/assets/DefaultPantfileTemplate +20 -0
- data/pantograph/lib/assets/completions/completion.bash +23 -0
- data/pantograph/lib/assets/completions/completion.fish +39 -0
- data/pantograph/lib/assets/completions/completion.sh +12 -0
- data/pantograph/lib/assets/completions/completion.zsh +23 -0
- data/pantograph/lib/assets/custom_action_template.rb +80 -0
- data/pantograph/lib/assets/report_template.xml.erb +15 -0
- data/pantograph/lib/pantograph/action.rb +194 -0
- data/pantograph/lib/pantograph/action_collector.rb +35 -0
- data/pantograph/lib/pantograph/actions/README.md +3 -0
- data/pantograph/lib/pantograph/actions/actions_helper.rb +166 -0
- data/pantograph/lib/pantograph/actions/add_extra_platforms.rb +45 -0
- data/pantograph/lib/pantograph/actions/artifactory.rb +157 -0
- data/pantograph/lib/pantograph/actions/bundle_install.rb +156 -0
- data/pantograph/lib/pantograph/actions/changelog_from_git_commits.rb +197 -0
- data/pantograph/lib/pantograph/actions/clipboard.rb +52 -0
- data/pantograph/lib/pantograph/actions/cloc.rb +89 -0
- data/pantograph/lib/pantograph/actions/create_pull_request.rb +190 -0
- data/pantograph/lib/pantograph/actions/danger.rb +131 -0
- data/pantograph/lib/pantograph/actions/debug.rb +32 -0
- data/pantograph/lib/pantograph/actions/default_platform.rb +47 -0
- data/pantograph/lib/pantograph/actions/download.rb +76 -0
- data/pantograph/lib/pantograph/actions/echo.rb +14 -0
- data/pantograph/lib/pantograph/actions/ensure_bundle_exec.rb +59 -0
- data/pantograph/lib/pantograph/actions/ensure_env_vars.rb +58 -0
- data/pantograph/lib/pantograph/actions/ensure_git_branch.rb +69 -0
- data/pantograph/lib/pantograph/actions/ensure_git_status_clean.rb +81 -0
- data/pantograph/lib/pantograph/actions/erb.rb +88 -0
- data/pantograph/lib/pantograph/actions/get_build_number_repository.rb +120 -0
- data/pantograph/lib/pantograph/actions/get_github_release.rb +163 -0
- data/pantograph/lib/pantograph/actions/git_add.rb +93 -0
- data/pantograph/lib/pantograph/actions/git_branch.rb +58 -0
- data/pantograph/lib/pantograph/actions/git_commit.rb +80 -0
- data/pantograph/lib/pantograph/actions/git_pull.rb +53 -0
- data/pantograph/lib/pantograph/actions/git_submodule_update.rb +52 -0
- data/pantograph/lib/pantograph/actions/git_tag_exists.rb +74 -0
- data/pantograph/lib/pantograph/actions/github_api.rb +262 -0
- data/pantograph/lib/pantograph/actions/gradle.rb +278 -0
- data/pantograph/lib/pantograph/actions/import.rb +49 -0
- data/pantograph/lib/pantograph/actions/import_from_git.rb +71 -0
- data/pantograph/lib/pantograph/actions/is_ci.rb +51 -0
- data/pantograph/lib/pantograph/actions/jira.rb +115 -0
- data/pantograph/lib/pantograph/actions/lane_context.rb +60 -0
- data/pantograph/lib/pantograph/actions/last_git_commit.rb +58 -0
- data/pantograph/lib/pantograph/actions/last_git_tag.rb +51 -0
- data/pantograph/lib/pantograph/actions/make_changelog_from_jenkins.rb +81 -0
- data/pantograph/lib/pantograph/actions/min_pantograph_version.rb +57 -0
- data/pantograph/lib/pantograph/actions/nexus_upload.rb +230 -0
- data/pantograph/lib/pantograph/actions/notification.rb +75 -0
- data/pantograph/lib/pantograph/actions/number_of_commits.rb +75 -0
- data/pantograph/lib/pantograph/actions/opt_out_usage.rb +40 -0
- data/pantograph/lib/pantograph/actions/pantograph_version.rb +15 -0
- data/pantograph/lib/pantograph/actions/println.rb +14 -0
- data/pantograph/lib/pantograph/actions/prompt.rb +119 -0
- data/pantograph/lib/pantograph/actions/push_git_tags.rb +76 -0
- data/pantograph/lib/pantograph/actions/push_to_git_remote.rb +127 -0
- data/pantograph/lib/pantograph/actions/puts.rb +68 -0
- data/pantograph/lib/pantograph/actions/reset_git_repo.rb +121 -0
- data/pantograph/lib/pantograph/actions/rocket.rb +83 -0
- data/pantograph/lib/pantograph/actions/rsync.rb +74 -0
- data/pantograph/lib/pantograph/actions/ruby_version.rb +56 -0
- data/pantograph/lib/pantograph/actions/say.rb +56 -0
- data/pantograph/lib/pantograph/actions/scp.rb +114 -0
- data/pantograph/lib/pantograph/actions/set_github_release.rb +274 -0
- data/pantograph/lib/pantograph/actions/sh.rb +71 -0
- data/pantograph/lib/pantograph/actions/skip_docs.rb +52 -0
- data/pantograph/lib/pantograph/actions/slack.rb +288 -0
- data/pantograph/lib/pantograph/actions/sonar.rb +156 -0
- data/pantograph/lib/pantograph/actions/ssh.rb +162 -0
- data/pantograph/lib/pantograph/actions/twitter.rb +89 -0
- data/pantograph/lib/pantograph/actions/update_pantograph.rb +177 -0
- data/pantograph/lib/pantograph/actions/zip.rb +120 -0
- data/pantograph/lib/pantograph/auto_complete.rb +82 -0
- data/pantograph/lib/pantograph/boolean.rb +5 -0
- data/pantograph/lib/pantograph/cli_tools_distributor.rb +183 -0
- data/pantograph/lib/pantograph/command_line_handler.rb +43 -0
- data/pantograph/lib/pantograph/commands_generator.rb +344 -0
- data/pantograph/lib/pantograph/configuration_helper.rb +26 -0
- data/pantograph/lib/pantograph/core_ext/bundler_monkey_patch.rb +14 -0
- data/pantograph/lib/pantograph/documentation/actions_list.rb +214 -0
- data/pantograph/lib/pantograph/documentation/docs_generator.rb +95 -0
- data/pantograph/lib/pantograph/documentation/markdown_docs_generator.rb +221 -0
- data/pantograph/lib/pantograph/environment_printer.rb +282 -0
- data/pantograph/lib/pantograph/erb_template_helper.rb +30 -0
- data/pantograph/lib/pantograph/features.rb +4 -0
- data/pantograph/lib/pantograph/helper/README.md +29 -0
- data/pantograph/lib/pantograph/helper/dotenv_helper.rb +50 -0
- data/pantograph/lib/pantograph/helper/gem_helper.rb +26 -0
- data/pantograph/lib/pantograph/helper/git_helper.rb +135 -0
- data/pantograph/lib/pantograph/helper/gradle_helper.rb +62 -0
- data/pantograph/lib/pantograph/helper/sh_helper.rb +134 -0
- data/pantograph/lib/pantograph/junit_generator.rb +27 -0
- data/pantograph/lib/pantograph/lane.rb +97 -0
- data/pantograph/lib/pantograph/lane_list.rb +77 -0
- data/pantograph/lib/pantograph/lane_manager.rb +140 -0
- data/pantograph/lib/pantograph/lane_manager_base.rb +92 -0
- data/pantograph/lib/pantograph/markdown_table_formatter.rb +62 -0
- data/pantograph/lib/pantograph/new_action.rb +47 -0
- data/pantograph/lib/pantograph/one_off.rb +45 -0
- data/pantograph/lib/pantograph/other_action.rb +29 -0
- data/pantograph/lib/pantograph/pant_file.rb +377 -0
- data/pantograph/lib/pantograph/pantograph_require.rb +75 -0
- data/pantograph/lib/pantograph/plugins/plugin_fetcher.rb +55 -0
- data/pantograph/lib/pantograph/plugins/plugin_generator.rb +86 -0
- data/pantograph/lib/pantograph/plugins/plugin_generator_ui.rb +19 -0
- data/pantograph/lib/pantograph/plugins/plugin_info.rb +49 -0
- data/pantograph/lib/pantograph/plugins/plugin_info_collector.rb +159 -0
- data/pantograph/lib/pantograph/plugins/plugin_manager.rb +387 -0
- data/pantograph/lib/pantograph/plugins/plugin_search.rb +46 -0
- data/pantograph/lib/pantograph/plugins/plugin_update_manager.rb +70 -0
- data/pantograph/lib/pantograph/plugins/plugins.rb +12 -0
- data/pantograph/lib/pantograph/plugins/template/%gem_name%.gemspec.erb +35 -0
- data/pantograph/lib/pantograph/plugins/template/.circleci/config.yml +43 -0
- data/pantograph/lib/pantograph/plugins/template/.gitignore +12 -0
- data/pantograph/lib/pantograph/plugins/template/.rspec +5 -0
- data/pantograph/lib/pantograph/plugins/template/.rubocop.yml +179 -0
- data/pantograph/lib/pantograph/plugins/template/.travis.yml +4 -0
- data/pantograph/lib/pantograph/plugins/template/Gemfile +6 -0
- data/pantograph/lib/pantograph/plugins/template/LICENSE.erb +21 -0
- data/pantograph/lib/pantograph/plugins/template/README.md.erb +52 -0
- data/pantograph/lib/pantograph/plugins/template/Rakefile +9 -0
- data/pantograph/lib/pantograph/plugins/template/lib/pantograph/plugin/%plugin_name%/actions/%plugin_name%_action.rb.erb +47 -0
- data/pantograph/lib/pantograph/plugins/template/lib/pantograph/plugin/%plugin_name%/helper/%plugin_name%_helper.rb.erb +16 -0
- data/pantograph/lib/pantograph/plugins/template/lib/pantograph/plugin/%plugin_name%/version.rb.erb +5 -0
- data/pantograph/lib/pantograph/plugins/template/lib/pantograph/plugin/%plugin_name%.rb.erb +16 -0
- data/pantograph/lib/pantograph/plugins/template/pantograph/Pantfile.erb +3 -0
- data/pantograph/lib/pantograph/plugins/template/pantograph/Pluginfile.erb +1 -0
- data/pantograph/lib/pantograph/plugins/template/spec/%plugin_name%_action_spec.rb.erb +9 -0
- data/pantograph/lib/pantograph/plugins/template/spec/spec_helper.rb.erb +15 -0
- data/pantograph/lib/pantograph/runner.rb +371 -0
- data/pantograph/lib/pantograph/server/action_command.rb +61 -0
- data/pantograph/lib/pantograph/server/action_command_return.rb +14 -0
- data/pantograph/lib/pantograph/server/command_executor.rb +7 -0
- data/pantograph/lib/pantograph/server/command_parser.rb +36 -0
- data/pantograph/lib/pantograph/server/control_command.rb +23 -0
- data/pantograph/lib/pantograph/server/json_return_value_processor.rb +72 -0
- data/pantograph/lib/pantograph/server/socket_server.rb +232 -0
- data/pantograph/lib/pantograph/server/socket_server_action_command_executor.rb +101 -0
- data/pantograph/lib/pantograph/setup/setup.rb +290 -0
- data/pantograph/lib/pantograph/setup/setup_android.rb +64 -0
- data/pantograph/lib/pantograph/setup/setup_ios.rb +412 -0
- data/pantograph/lib/pantograph/shells.rb +6 -0
- data/pantograph/lib/pantograph/supported_platforms.rb +28 -0
- data/pantograph/lib/pantograph/tools.rb +10 -0
- data/pantograph/lib/pantograph/version.rb +5 -0
- data/pantograph/lib/pantograph.rb +51 -0
- data/pantograph_core/README.md +79 -0
- data/pantograph_core/lib/assets/XMLTemplate.xml.erb +12 -0
- data/pantograph_core/lib/pantograph_core/analytics/action_completion_context.rb +34 -0
- data/pantograph_core/lib/pantograph_core/analytics/action_launch_context.rb +38 -0
- data/pantograph_core/lib/pantograph_core/analytics/analytics_event_builder.rb +23 -0
- data/pantograph_core/lib/pantograph_core/analytics/analytics_ingester_client.rb +54 -0
- data/pantograph_core/lib/pantograph_core/analytics/analytics_session.rb +71 -0
- data/pantograph_core/lib/pantograph_core/cert_checker.rb +116 -0
- data/pantograph_core/lib/pantograph_core/command_executor.rb +99 -0
- data/pantograph_core/lib/pantograph_core/configuration/commander_generator.rb +103 -0
- data/pantograph_core/lib/pantograph_core/configuration/config_item.rb +314 -0
- data/pantograph_core/lib/pantograph_core/configuration/configuration.rb +332 -0
- data/pantograph_core/lib/pantograph_core/configuration/configuration_file.rb +182 -0
- data/pantograph_core/lib/pantograph_core/core_ext/shellwords.rb +63 -0
- data/pantograph_core/lib/pantograph_core/core_ext/string.rb +17 -0
- data/pantograph_core/lib/pantograph_core/env.rb +9 -0
- data/pantograph_core/lib/pantograph_core/feature/feature.rb +51 -0
- data/pantograph_core/lib/pantograph_core/features.rb +4 -0
- data/pantograph_core/lib/pantograph_core/globals.rb +27 -0
- data/pantograph_core/lib/pantograph_core/helper.rb +409 -0
- data/pantograph_core/lib/pantograph_core/keychain_importer.rb +74 -0
- data/pantograph_core/lib/pantograph_core/languages.rb +14 -0
- data/pantograph_core/lib/pantograph_core/module.rb +29 -0
- data/pantograph_core/lib/pantograph_core/pantograph_folder.rb +39 -0
- data/pantograph_core/lib/pantograph_core/pantograph_pty.rb +57 -0
- data/pantograph_core/lib/pantograph_core/pkg_file_analyser.rb +44 -0
- data/pantograph_core/lib/pantograph_core/print_table.rb +131 -0
- data/pantograph_core/lib/pantograph_core/string_filters.rb +51 -0
- data/pantograph_core/lib/pantograph_core/swag.rb +85 -0
- data/pantograph_core/lib/pantograph_core/tag_version.rb +31 -0
- data/pantograph_core/lib/pantograph_core/test_parser.rb +107 -0
- data/pantograph_core/lib/pantograph_core/ui/disable_colors.rb +17 -0
- data/pantograph_core/lib/pantograph_core/ui/errors/pantograph_common_error.rb +19 -0
- data/pantograph_core/lib/pantograph_core/ui/errors/pantograph_crash.rb +11 -0
- data/pantograph_core/lib/pantograph_core/ui/errors/pantograph_error.rb +25 -0
- data/pantograph_core/lib/pantograph_core/ui/errors/pantograph_exception.rb +19 -0
- data/pantograph_core/lib/pantograph_core/ui/errors/pantograph_shell_error.rb +11 -0
- data/pantograph_core/lib/pantograph_core/ui/errors.rb +1 -0
- data/pantograph_core/lib/pantograph_core/ui/github_issue_inspector_reporter.rb +62 -0
- data/pantograph_core/lib/pantograph_core/ui/implementations/shell.rb +159 -0
- data/pantograph_core/lib/pantograph_core/ui/interface.rb +205 -0
- data/pantograph_core/lib/pantograph_core/ui/pantograph_runner.rb +276 -0
- data/pantograph_core/lib/pantograph_core/ui/ui.rb +26 -0
- data/pantograph_core/lib/pantograph_core/update_checker/changelog.rb +37 -0
- data/pantograph_core/lib/pantograph_core/update_checker/update_checker.rb +107 -0
- data/pantograph_core/lib/pantograph_core.rb +45 -0
- metadata +987 -0
@@ -0,0 +1,35 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
lib = File.expand_path("../lib", __FILE__)
|
4
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
|
+
require '<%= require_path %>/version'
|
6
|
+
|
7
|
+
Gem::Specification.new do |spec|
|
8
|
+
spec.name = '<%= gem_name %>'
|
9
|
+
spec.version = Pantograph::<%= plugin_name.pantograph_class %>::VERSION
|
10
|
+
spec.author = '<%= author %>'
|
11
|
+
spec.email = '<%= email %>'
|
12
|
+
|
13
|
+
spec.summary = '<%= summary %>'
|
14
|
+
# spec.homepage = "https://github.com/<GITHUB_USERNAME>/<%= gem_name %>"
|
15
|
+
spec.license = "MIT"
|
16
|
+
|
17
|
+
spec.files = Dir["lib/**/*"] + %w(README.md LICENSE)
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ['lib']
|
20
|
+
|
21
|
+
# Don't add a dependency to pantograph or pantograph_re
|
22
|
+
# since this would cause a circular dependency
|
23
|
+
|
24
|
+
# spec.add_dependency 'your-dependency', '~> 1.0.0'
|
25
|
+
|
26
|
+
spec.add_development_dependency('pry')
|
27
|
+
spec.add_development_dependency('bundler')
|
28
|
+
spec.add_development_dependency('rspec')
|
29
|
+
spec.add_development_dependency('rspec_junit_formatter')
|
30
|
+
spec.add_development_dependency('rake')
|
31
|
+
spec.add_development_dependency('rubocop', '<%= Pantograph::RUBOCOP_REQUIREMENT %>')
|
32
|
+
spec.add_development_dependency('rubocop-require_tools')
|
33
|
+
spec.add_development_dependency('simplecov')
|
34
|
+
spec.add_development_dependency('pantograph', '>= <%= Pantograph::VERSION %>')
|
35
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# Ruby CircleCI 2.0 configuration file
|
2
|
+
#
|
3
|
+
# Check https://circleci.com/docs/2.0/language-ruby/ for more details
|
4
|
+
#
|
5
|
+
version: 2
|
6
|
+
jobs:
|
7
|
+
build:
|
8
|
+
docker:
|
9
|
+
# specify the version you desire here
|
10
|
+
- image: circleci/ruby:2.4.2
|
11
|
+
|
12
|
+
working_directory: ~/repo
|
13
|
+
|
14
|
+
steps:
|
15
|
+
- checkout
|
16
|
+
|
17
|
+
# Download and cache dependencies
|
18
|
+
- restore_cache:
|
19
|
+
keys:
|
20
|
+
- v1-dependencies-{{ checksum "Gemfile" }}
|
21
|
+
# fallback to using the latest cache if no exact match is found
|
22
|
+
- v1-dependencies-
|
23
|
+
|
24
|
+
- run:
|
25
|
+
name: install dependencies
|
26
|
+
command: bundle check || bundle install --jobs=4 --retry=3 --path vendor/bundle
|
27
|
+
|
28
|
+
- save_cache:
|
29
|
+
paths:
|
30
|
+
- ./vendor
|
31
|
+
key: v1-dependencies-{{ checksum "Gemfile" }}
|
32
|
+
|
33
|
+
# run tests!
|
34
|
+
- run:
|
35
|
+
name: run tests
|
36
|
+
command: bundle exec rake
|
37
|
+
|
38
|
+
# collect reports
|
39
|
+
- store_test_results:
|
40
|
+
path: ~/repo/test-results
|
41
|
+
- store_artifacts:
|
42
|
+
path: ~/repo/test-results
|
43
|
+
destination: test-results
|
@@ -0,0 +1,179 @@
|
|
1
|
+
---
|
2
|
+
Style/MultipleComparison:
|
3
|
+
Enabled: false
|
4
|
+
Style/PercentLiteralDelimiters:
|
5
|
+
Enabled: false
|
6
|
+
Style/ClassCheck:
|
7
|
+
EnforcedStyle: kind_of?
|
8
|
+
Style/FrozenStringLiteralComment:
|
9
|
+
Enabled: false
|
10
|
+
Style/SafeNavigation:
|
11
|
+
Enabled: false
|
12
|
+
Performance/RegexpMatch:
|
13
|
+
Enabled: false
|
14
|
+
Performance/StringReplacement:
|
15
|
+
Enabled: false
|
16
|
+
Style/NumericPredicate:
|
17
|
+
Enabled: false
|
18
|
+
Metrics/BlockLength:
|
19
|
+
Enabled: false
|
20
|
+
Metrics/ModuleLength:
|
21
|
+
Enabled: false
|
22
|
+
Style/VariableNumber:
|
23
|
+
Enabled: false
|
24
|
+
Style/MethodMissing:
|
25
|
+
Enabled: false
|
26
|
+
MultilineBlockChain:
|
27
|
+
Enabled: false
|
28
|
+
Style/NumericLiteralPrefix:
|
29
|
+
Enabled: false
|
30
|
+
Style/TernaryParentheses:
|
31
|
+
Enabled: false
|
32
|
+
Style/EmptyMethod:
|
33
|
+
Enabled: false
|
34
|
+
Style/BracesAroundHashParameters:
|
35
|
+
Enabled: false
|
36
|
+
Lint/UselessAssignment:
|
37
|
+
Exclude:
|
38
|
+
- "**/spec/**/*"
|
39
|
+
Require/MissingRequireStatement:
|
40
|
+
Exclude:
|
41
|
+
- "**/spec/**/*.rb"
|
42
|
+
- "**/spec_helper.rb"
|
43
|
+
- "**/Pantfile"
|
44
|
+
- "**/*.gemspec"
|
45
|
+
- rakelib/**/*
|
46
|
+
- "**/*.rake"
|
47
|
+
- "**/Rakefile"
|
48
|
+
- pantograph/**/*
|
49
|
+
Layout/IndentHash:
|
50
|
+
Enabled: false
|
51
|
+
Layout/AlignHash:
|
52
|
+
Enabled: false
|
53
|
+
Layout/DotPosition:
|
54
|
+
Enabled: false
|
55
|
+
Style/DoubleNegation:
|
56
|
+
Enabled: false
|
57
|
+
Style/SymbolArray:
|
58
|
+
Enabled: false
|
59
|
+
Layout/IndentHeredoc:
|
60
|
+
Enabled: false
|
61
|
+
Style/MixinGrouping:
|
62
|
+
Exclude:
|
63
|
+
- "**/spec/**/*"
|
64
|
+
Lint/HandleExceptions:
|
65
|
+
Enabled: false
|
66
|
+
Lint/UnusedBlockArgument:
|
67
|
+
Enabled: false
|
68
|
+
Lint/AmbiguousBlockAssociation:
|
69
|
+
Enabled: false
|
70
|
+
Style/GlobalVars:
|
71
|
+
Enabled: false
|
72
|
+
Style/ClassAndModuleChildren:
|
73
|
+
Enabled: false
|
74
|
+
Style/SpecialGlobalVars:
|
75
|
+
Enabled: false
|
76
|
+
Metrics/AbcSize:
|
77
|
+
Enabled: false
|
78
|
+
Metrics/MethodLength:
|
79
|
+
Enabled: false
|
80
|
+
Metrics/CyclomaticComplexity:
|
81
|
+
Enabled: false
|
82
|
+
Style/WordArray:
|
83
|
+
MinSize: 19
|
84
|
+
Style/SignalException:
|
85
|
+
Enabled: false
|
86
|
+
Style/RedundantReturn:
|
87
|
+
Enabled: false
|
88
|
+
Style/IfUnlessModifier:
|
89
|
+
Enabled: false
|
90
|
+
Style/AndOr:
|
91
|
+
Enabled: true
|
92
|
+
EnforcedStyle: conditionals
|
93
|
+
Metrics/ClassLength:
|
94
|
+
Max: 320
|
95
|
+
Metrics/LineLength:
|
96
|
+
Max: 370
|
97
|
+
Metrics/ParameterLists:
|
98
|
+
Max: 17
|
99
|
+
Metrics/PerceivedComplexity:
|
100
|
+
Max: 18
|
101
|
+
Style/GuardClause:
|
102
|
+
Enabled: false
|
103
|
+
Style/StringLiterals:
|
104
|
+
Enabled: false
|
105
|
+
Style/ConditionalAssignment:
|
106
|
+
Enabled: false
|
107
|
+
Style/RedundantSelf:
|
108
|
+
Enabled: false
|
109
|
+
Lint/UnusedMethodArgument:
|
110
|
+
Enabled: false
|
111
|
+
Lint/ParenthesesAsGroupedExpression:
|
112
|
+
Exclude:
|
113
|
+
- "**/spec/**/*"
|
114
|
+
Style/PredicateName:
|
115
|
+
Enabled: false
|
116
|
+
Style/PerlBackrefs:
|
117
|
+
Enabled: false
|
118
|
+
Layout/SpaceAroundOperators:
|
119
|
+
Exclude:
|
120
|
+
- "**/spec/actions_specs/xcodebuild_spec.rb"
|
121
|
+
AllCops:
|
122
|
+
TargetRubyVersion: 2.0
|
123
|
+
Include:
|
124
|
+
- "*/lib/assets/*Template"
|
125
|
+
- "*/lib/assets/*TemplateAndroid"
|
126
|
+
Exclude:
|
127
|
+
- "**/lib/assets/custom_action_template.rb"
|
128
|
+
- "./vendor/**/*"
|
129
|
+
- "**/lib/assets/DefaultPantfileTemplate"
|
130
|
+
- "**/spec/fixtures/broken_files/broken_file.rb"
|
131
|
+
Style/FileName:
|
132
|
+
Exclude:
|
133
|
+
- "**/Dangerfile"
|
134
|
+
- "**/Brewfile"
|
135
|
+
- "**/Gemfile"
|
136
|
+
- "**/Podfile"
|
137
|
+
- "**/Rakefile"
|
138
|
+
- "**/Pantfile"
|
139
|
+
- "**/Snapfile"
|
140
|
+
- "**/*.gemspec"
|
141
|
+
Style/Documentation:
|
142
|
+
Enabled: false
|
143
|
+
Style/MutableConstant:
|
144
|
+
Enabled: false
|
145
|
+
Style/ZeroLengthPredicate:
|
146
|
+
Enabled: false
|
147
|
+
Style/IfInsideElse:
|
148
|
+
Enabled: false
|
149
|
+
Style/CollectionMethods:
|
150
|
+
Enabled: false
|
151
|
+
CrossPlatform/ForkUsage:
|
152
|
+
Exclude:
|
153
|
+
- "**/plugins/template/**/*"
|
154
|
+
Lint/IsStringUsage:
|
155
|
+
Include:
|
156
|
+
- gym/**/*
|
157
|
+
Style/MethodCallWithArgsParentheses:
|
158
|
+
Enabled: true
|
159
|
+
IgnoredMethods:
|
160
|
+
- require
|
161
|
+
- require_relative
|
162
|
+
- pantograph_require
|
163
|
+
- gem
|
164
|
+
- program
|
165
|
+
- command
|
166
|
+
- raise
|
167
|
+
- attr_accessor
|
168
|
+
- attr_reader
|
169
|
+
- desc
|
170
|
+
- lane
|
171
|
+
- private_lane
|
172
|
+
- platform
|
173
|
+
- to
|
174
|
+
- describe
|
175
|
+
- it
|
176
|
+
- be
|
177
|
+
- context
|
178
|
+
- before
|
179
|
+
- after
|
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) <%= Time.now.year %> <%= author %> <<%= email %>>
|
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.
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# <%= plugin_name %> plugin
|
2
|
+
|
3
|
+
[![pantograph Plugin Badge](https://rawcdn.githack.com/pantograph/pantograph/master/pantograph/assets/plugin-badge.svg)](https://rubygems.org/gems/<%= gem_name %>)
|
4
|
+
|
5
|
+
## Getting Started
|
6
|
+
|
7
|
+
This project is a [_pantograph_](https://github.com/pantograph/pantograph) plugin. To get started with `<%= gem_name %>`, add it to your project by running:
|
8
|
+
|
9
|
+
```bash
|
10
|
+
pantograph add_plugin <%= plugin_name %>
|
11
|
+
```
|
12
|
+
|
13
|
+
## About <%= plugin_name %>
|
14
|
+
|
15
|
+
<%= summary %>
|
16
|
+
|
17
|
+
**Note to author:** Add a more detailed description about this plugin here. If your plugin contains multiple actions, make sure to mention them here.
|
18
|
+
|
19
|
+
## Example
|
20
|
+
|
21
|
+
Check out the [example `Pantfile`](pantograph/Pantfile) to see how to use this plugin. Try it by cloning the repo, running `pantograph install_plugins` and `bundle exec pantograph test`.
|
22
|
+
|
23
|
+
**Note to author:** Please set up a sample project to make it easy for users to explore what your plugin does. Provide everything that is necessary to try out the plugin in this project (including a sample Xcode/Android project if necessary)
|
24
|
+
|
25
|
+
## Run tests for this plugin
|
26
|
+
|
27
|
+
To run both the tests, and code style validation, run
|
28
|
+
|
29
|
+
```
|
30
|
+
rake
|
31
|
+
```
|
32
|
+
|
33
|
+
To automatically fix many of the styling issues, use
|
34
|
+
```
|
35
|
+
rubocop -a
|
36
|
+
```
|
37
|
+
|
38
|
+
## Issues and Feedback
|
39
|
+
|
40
|
+
For any other issues and feedback about this plugin, please submit it to this repository.
|
41
|
+
|
42
|
+
## Troubleshooting
|
43
|
+
|
44
|
+
If you have trouble using plugins, check out the [Plugins Troubleshooting](https://docs.pantograph.tools/plugins/plugins-troubleshooting/) guide.
|
45
|
+
|
46
|
+
## Using _pantograph_ Plugins
|
47
|
+
|
48
|
+
For more information about how the `pantograph` plugin system works, check out the [Plugins documentation](https://docs.pantograph.tools/plugins/create-plugin/).
|
49
|
+
|
50
|
+
## About _pantograph_
|
51
|
+
|
52
|
+
_pantograph_ is the easiest way to automate beta deployments and releases for your iOS and Android apps. To learn more, check out [pantograph.tools](https://pantograph.tools).
|
@@ -0,0 +1,47 @@
|
|
1
|
+
require 'pantograph/action'
|
2
|
+
require_relative '../helper/<%= plugin_name %>_helper'
|
3
|
+
|
4
|
+
module Pantograph
|
5
|
+
module Actions
|
6
|
+
class <%= plugin_name.pantograph_class %>Action < Action
|
7
|
+
def self.run(params)
|
8
|
+
UI.message("The <%= plugin_name %> plugin is working!")
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.description
|
12
|
+
"<%= summary.gsub('"', "'") %>"
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.authors
|
16
|
+
["<%= author.gsub('"', "'") %>"]
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.return_value
|
20
|
+
# If your method provides a return value, you can describe here what it does
|
21
|
+
end
|
22
|
+
|
23
|
+
def self.details
|
24
|
+
# Optional:
|
25
|
+
"<%= details.gsub('"', "'") %>"
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.available_options
|
29
|
+
[
|
30
|
+
# PantographCore::ConfigItem.new(key: :your_option,
|
31
|
+
# env_name: "<%= plugin_name.upcase %>_YOUR_OPTION",
|
32
|
+
# description: "A description of your option",
|
33
|
+
# optional: false,
|
34
|
+
# type: String)
|
35
|
+
]
|
36
|
+
end
|
37
|
+
|
38
|
+
def self.is_supported?(platform)
|
39
|
+
# Adjust this if your plugin only works for a particular platform (iOS vs. Android, for example)
|
40
|
+
# See: https://docs.pantograph.tools/advanced/#control-configuration-by-lane-and-by-platform
|
41
|
+
#
|
42
|
+
# [:ios, :mac, :android].include?(platform)
|
43
|
+
true
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'pantograph_core/ui/ui'
|
2
|
+
|
3
|
+
module Pantograph
|
4
|
+
UI = PantographCore::UI unless Pantograph.const_defined?("UI")
|
5
|
+
|
6
|
+
module Helper
|
7
|
+
class <%= plugin_name.pantograph_class %>Helper
|
8
|
+
# class methods that you define here become available in your action
|
9
|
+
# as `Helper::<%= plugin_name.pantograph_class %>Helper.your_method`
|
10
|
+
#
|
11
|
+
def self.show_message
|
12
|
+
UI.message("Hello from the <%= plugin_name %> plugin helper!")
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require '<%= require_path %>/version'
|
2
|
+
|
3
|
+
module Pantograph
|
4
|
+
module <%= plugin_name.pantograph_class %>
|
5
|
+
# Return all .rb files inside the "actions" and "helper" directory
|
6
|
+
def self.all_classes
|
7
|
+
Dir[File.expand_path('**/{actions,helper}/*.rb', File.dirname(__FILE__))]
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
# By default we want to import all available actions and helpers
|
13
|
+
# A plugin can contain any number of actions and plugins
|
14
|
+
Pantograph::<%= plugin_name.pantograph_class %>.all_classes.each do |current|
|
15
|
+
require current
|
16
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
# Autogenerated by pantograph
|
@@ -0,0 +1,9 @@
|
|
1
|
+
describe Pantograph::Actions::<%= plugin_name.pantograph_class %>Action do
|
2
|
+
describe '#run' do
|
3
|
+
it 'prints a message' do
|
4
|
+
expect(Pantograph::UI).to receive(:message).with("The <%= plugin_name %> plugin is working!")
|
5
|
+
|
6
|
+
Pantograph::Actions::<%= plugin_name.pantograph_class %>Action.run(nil)
|
7
|
+
end
|
8
|
+
end
|
9
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.expand_path('../../lib', __FILE__))
|
2
|
+
|
3
|
+
require 'simplecov'
|
4
|
+
|
5
|
+
# SimpleCov.minimum_coverage 95
|
6
|
+
SimpleCov.start
|
7
|
+
|
8
|
+
# This module is only used to check the environment is currently a testing env
|
9
|
+
module SpecHelper
|
10
|
+
end
|
11
|
+
|
12
|
+
require 'pantograph' # to import the Action super class
|
13
|
+
require '<%= require_path %>' # import the actual plugin
|
14
|
+
|
15
|
+
Pantograph.load_actions # load other actions (in case your plugin calls other actions or shared values)
|