pantograph 0.1.0
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/.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
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: '018b4427a06e29a18faebd4c42437f947f5408ab788f7863b4e2409c04d64aba'
|
4
|
+
data.tar.gz: d4b9c3e4f8d2a8ab2cd7e02ee72b8832b6f22c9324b47fc7b43641538c1bc4e7
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 2261f79d8c8e5e4c6cb6466991b132f92fc5a0b30fcd8ff7d478181766d5f42e66be06defa1ecbe7be88d75983b49d5a4070a10f43e529e4584696b29ed9faa2
|
7
|
+
data.tar.gz: 04c115dfb09681ad777e1ab3440407e73a7aab45c8785c0d44a35c59e3ab7760331ad6184172d0fd0992a1fe76866e93f05b55402a01414338918824ee8e48b9
|
data/.yardopts
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
**/lib/**/*.rb
|
data/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2015-2019 The Pantograph Authors
|
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/README.md
ADDED
@@ -0,0 +1,197 @@
|
|
1
|
+
# THIS IS A WORK IN PROGRESS - BROKEN FORK OF FASTLANE GEM
|
2
|
+
|
3
|
+
<h3 align="center">
|
4
|
+
<a href="https://github.com/pantograph/pantograph/blob/master/pantograph/assets/pantograph_text.png">
|
5
|
+
<img src="https://github.com/pantograph/pantograph/blob/master/pantograph/assets/pantograph_text.png?raw=true" alt="pantograph Logo" width="500">
|
6
|
+
</a>
|
7
|
+
</h3>
|
8
|
+
|
9
|
+
[](https://twitter.com/PantographTools)
|
10
|
+
[](https://github.com/pantograph/pantograph/blob/master/LICENSE)
|
11
|
+
[](https://rubygems.org/gems/pantograph)
|
12
|
+
[](https://circleci.com/gh/pantograph/pantograph)
|
13
|
+
[](https://github.com/pantograph/pantograph/blob/master/CONTRIBUTING.md)
|
14
|
+
|
15
|
+
_pantograph_ is a tool for iOS and Android developers to automate tedious tasks like generating screenshots, dealing with provisioning profiles, and releasing your application.
|
16
|
+
|
17
|
+
<hr />
|
18
|
+
<h2 align="center">
|
19
|
+
✨ All pantograph docs were moved to <a href="https://docs.pantograph.tools/">docs.pantograph.tools</a> ✨
|
20
|
+
</h2>
|
21
|
+
<hr />
|
22
|
+
|
23
|
+
## Need Help?
|
24
|
+
|
25
|
+
Before submitting a new GitHub issue, please make sure to
|
26
|
+
|
27
|
+
- Check out [docs.pantograph.tools](https://docs.pantograph.tools)
|
28
|
+
- Search for [existing GitHub issues](https://github.com/pantograph/pantograph/issues)
|
29
|
+
|
30
|
+
If the above doesn't help, please [submit an issue](https://github.com/pantograph/pantograph/issues) on GitHub and provide information about your setup, in particular the output of the `pantograph env` command.
|
31
|
+
|
32
|
+
**Note**: If you want to report a regression in _pantograph_ (something that has worked before, but broke with a new release), please mark your issue title as such using `[Regression] Your title here`. This enables us to quickly detect and fix regressions.
|
33
|
+
|
34
|
+
## _pantograph_ team
|
35
|
+
|
36
|
+
<!-- This table is regenerated and resorted on each release -->
|
37
|
+
<table id='team'>
|
38
|
+
<tr>
|
39
|
+
<td id='helmut-januschka'>
|
40
|
+
<a href='https://github.com/hjanuschka'>
|
41
|
+
<img src='https://github.com/hjanuschka.png?size=140'>
|
42
|
+
</a>
|
43
|
+
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
44
|
+
</td>
|
45
|
+
<td id='manu-wallner'>
|
46
|
+
<a href='https://github.com/milch'>
|
47
|
+
<img src='https://github.com/milch.png?size=140'>
|
48
|
+
</a>
|
49
|
+
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
50
|
+
</td>
|
51
|
+
<td id='aaron-brager'>
|
52
|
+
<a href='https://github.com/getaaron'>
|
53
|
+
<img src='https://github.com/getaaron.png?size=140'>
|
54
|
+
</a>
|
55
|
+
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
56
|
+
</td>
|
57
|
+
<td id='matthew-ellis'>
|
58
|
+
<a href='https://github.com/matthewellis'>
|
59
|
+
<img src='https://github.com/matthewellis.png?size=140'>
|
60
|
+
</a>
|
61
|
+
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
62
|
+
</td>
|
63
|
+
<td id='olivier-halligon'>
|
64
|
+
<a href='https://github.com/AliSoftware'>
|
65
|
+
<img src='https://github.com/AliSoftware.png?size=140'>
|
66
|
+
</a>
|
67
|
+
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
68
|
+
</td>
|
69
|
+
</tr>
|
70
|
+
<tr>
|
71
|
+
<td id='kohki-miki'>
|
72
|
+
<a href='https://github.com/giginet'>
|
73
|
+
<img src='https://github.com/giginet.png?size=140'>
|
74
|
+
</a>
|
75
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
76
|
+
</td>
|
77
|
+
<td id='luka-mirosevic'>
|
78
|
+
<a href='https://github.com/lmirosevic'>
|
79
|
+
<img src='https://github.com/lmirosevic.png?size=140'>
|
80
|
+
</a>
|
81
|
+
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
82
|
+
</td>
|
83
|
+
<td id='josh-holtz'>
|
84
|
+
<a href='https://github.com/joshdholtz'>
|
85
|
+
<img src='https://github.com/joshdholtz.png?size=140'>
|
86
|
+
</a>
|
87
|
+
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
88
|
+
</td>
|
89
|
+
<td id='joshua-liebowitz'>
|
90
|
+
<a href='https://github.com/taquitos'>
|
91
|
+
<img src='https://github.com/taquitos.png?size=140'>
|
92
|
+
</a>
|
93
|
+
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
94
|
+
</td>
|
95
|
+
<td id='jan-piotrowski'>
|
96
|
+
<a href='https://github.com/janpio'>
|
97
|
+
<img src='https://github.com/janpio.png?size=140'>
|
98
|
+
</a>
|
99
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
100
|
+
</td>
|
101
|
+
</tr>
|
102
|
+
<tr>
|
103
|
+
<td id='fumiya-nakamura'>
|
104
|
+
<a href='https://github.com/nafu'>
|
105
|
+
<img src='https://github.com/nafu.png?size=140'>
|
106
|
+
</a>
|
107
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
108
|
+
</td>
|
109
|
+
<td id='jorge-revuelta-h'>
|
110
|
+
<a href='https://github.com/minuscorp'>
|
111
|
+
<img src='https://github.com/minuscorp.png?size=140'>
|
112
|
+
</a>
|
113
|
+
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
114
|
+
</td>
|
115
|
+
<td id='jimmy-dee'>
|
116
|
+
<a href='https://github.com/jdee'>
|
117
|
+
<img src='https://github.com/jdee.png?size=140'>
|
118
|
+
</a>
|
119
|
+
<h4 align='center'>Jimmy Dee</h4>
|
120
|
+
</td>
|
121
|
+
<td id='stefan-natchev'>
|
122
|
+
<a href='https://github.com/snatchev'>
|
123
|
+
<img src='https://github.com/snatchev.png?size=140'>
|
124
|
+
</a>
|
125
|
+
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
126
|
+
</td>
|
127
|
+
<td id='danielle-tomlinson'>
|
128
|
+
<a href='https://github.com/endocrimes'>
|
129
|
+
<img src='https://github.com/endocrimes.png?size=140'>
|
130
|
+
</a>
|
131
|
+
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
132
|
+
</td>
|
133
|
+
</tr>
|
134
|
+
<tr>
|
135
|
+
<td id='felix-krause'>
|
136
|
+
<a href='https://github.com/KrauseFx'>
|
137
|
+
<img src='https://github.com/KrauseFx.png?size=140'>
|
138
|
+
</a>
|
139
|
+
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
140
|
+
</td>
|
141
|
+
<td id='iulian-onofrei'>
|
142
|
+
<a href='https://github.com/revolter'>
|
143
|
+
<img src='https://github.com/revolter.png?size=140'>
|
144
|
+
</a>
|
145
|
+
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
146
|
+
</td>
|
147
|
+
<td id='jérôme-lacoste'>
|
148
|
+
<a href='https://github.com/lacostej'>
|
149
|
+
<img src='https://github.com/lacostej.png?size=140'>
|
150
|
+
</a>
|
151
|
+
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
152
|
+
</td>
|
153
|
+
<td id='maksym-grebenets'>
|
154
|
+
<a href='https://github.com/mgrebenets'>
|
155
|
+
<img src='https://github.com/mgrebenets.png?size=140'>
|
156
|
+
</a>
|
157
|
+
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
158
|
+
</td>
|
159
|
+
<td id='andrew-mcburney'>
|
160
|
+
<a href='https://github.com/armcburney'>
|
161
|
+
<img src='https://github.com/armcburney.png?size=140'>
|
162
|
+
</a>
|
163
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
164
|
+
</td>
|
165
|
+
</tr>
|
166
|
+
</table>
|
167
|
+
|
168
|
+
Special thanks to all [contributors](https://github.com/pantograph/pantograph/graphs/contributors) for extending and improving _pantograph_.
|
169
|
+
|
170
|
+
## Contribute to _pantograph_
|
171
|
+
|
172
|
+
Check out [CONTRIBUTING.md](CONTRIBUTING.md) for more information on how to help with _pantograph_.
|
173
|
+
|
174
|
+
## Code of Conduct
|
175
|
+
|
176
|
+
Help us keep _pantograph_ open and inclusive. Please read and follow our [Code of Conduct](https://github.com/pantograph/pantograph/blob/master/CODE_OF_CONDUCT.md).
|
177
|
+
|
178
|
+
## Metrics
|
179
|
+
|
180
|
+
_pantograph_ tracks a few key metrics to understand how developers are using the tool and to help us know what areas need improvement. No personal/sensitive information is ever collected. Metrics that are collected include:
|
181
|
+
|
182
|
+
* The number of _pantograph_ runs
|
183
|
+
* A salted hash of the app identifier or package name, which helps us anonymously identify unique usage of _pantograph_
|
184
|
+
|
185
|
+
You can easily opt-out of metrics collection by adding `opt_out_usage` at the top of your `Pantfile` or by setting the environment variable `PANTOGRAPH_OPT_OUT_USAGE`. [Check out the metrics code on GitHub](https://github.com/pantograph/pantograph/tree/master/pantograph_core/lib/pantograph_core/analytics)
|
186
|
+
|
187
|
+
## License
|
188
|
+
|
189
|
+
This project is licensed under the terms of the MIT license. See the [LICENSE](LICENSE) file.
|
190
|
+
|
191
|
+
> This project and all pantograph tools are in no way affiliated with Apple Inc. This project is open source under the MIT license, which means you have full access to the source code and can modify it to fit your own needs. All pantograph tools run on your own computer or server, so your credentials or other sensitive information will never leave your own computer. You are responsible for how you use pantograph tools.
|
192
|
+
|
193
|
+
<hr />
|
194
|
+
<h2 align="center">
|
195
|
+
✨ All pantograph docs were moved to <a href="https://docs.pantograph.tools/">docs.pantograph.tools</a> ✨
|
196
|
+
</h2>
|
197
|
+
<hr />
|
data/bin/bin-proxy
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "colored"
|
4
|
+
require "shellwords"
|
5
|
+
|
6
|
+
tool_name = File.basename($0)
|
7
|
+
|
8
|
+
full_params = ARGV.shelljoin
|
9
|
+
|
10
|
+
puts("[WARNING] You are calling #{tool_name} directly. Usage of the tool name without the `pantograph` prefix is deprecated in pantograph 2.0".yellow)
|
11
|
+
puts("Please update your scripts to use `pantograph #{tool_name} #{full_params}` instead.".yellow)
|
12
|
+
|
13
|
+
exec_arr = ["pantograph", tool_name] + ARGV
|
14
|
+
|
15
|
+
# The * turns the array into a parameter list
|
16
|
+
# This is using the form of exec which takes a variable parameter list, e.g. `exec(command, param1, param2, ...)`
|
17
|
+
# We need to use that, because otherwise invocations like
|
18
|
+
# `spaceauth -u user@pantograph.tools` would recognize "-u user@pantograph.tools" as a single parameter and throw errors
|
19
|
+
exec(*exec_arr)
|
data/bin/pantograph
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
if RUBY_VERSION < '2.0.0'
|
4
|
+
abort("pantograph requires Ruby 2.0.0 or higher")
|
5
|
+
end
|
6
|
+
|
7
|
+
def self.windows?
|
8
|
+
# taken from: https://stackoverflow.com/a/171011/1945875
|
9
|
+
(/cygwin|mswin|mingw|bccwin|wince|emx/ =~ RUBY_PLATFORM) != nil
|
10
|
+
end
|
11
|
+
|
12
|
+
require "pantograph/cli_tools_distributor"
|
13
|
+
|
14
|
+
if Pantograph::CLIToolsDistributor.running_version_command?
|
15
|
+
# This will print out the pantograph binary path right above the
|
16
|
+
# version number. Very often, users are not aware they have
|
17
|
+
# e.g. bundled pantograph installed
|
18
|
+
puts("pantograph installation at path:")
|
19
|
+
puts(File.expand_path(__FILE__))
|
20
|
+
puts("-----------------------------")
|
21
|
+
end
|
22
|
+
|
23
|
+
Pantograph::CLIToolsDistributor.take_off
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<h3 align="center">
|
2
|
+
<a href="https://docs.pantograph.tools/">
|
3
|
+
<img src="https://raw.githubusercontent.com/pantograph/pantograph/master/pantograph/assets/pantograph.png" width="100" />
|
4
|
+
<br />
|
5
|
+
pantograph
|
6
|
+
</a>
|
7
|
+
</h3>
|
8
|
+
|
9
|
+
------
|
10
|
+
|
11
|
+
<h3 align="center">The <i>pantograph</i> docs were moved to <a href='https://docs.pantograph.tools/'>docs.pantograph.tools</a></h3>
|
@@ -0,0 +1,106 @@
|
|
1
|
+
<!--
|
2
|
+
This file is auto-generated and will be re-generated every time the docs are updated.
|
3
|
+
To modify it, go to its source at https://github.com/johnknapprs/pantograph/blob/master/pantograph/lib/pantograph/actions/<%= @action_filename %>
|
4
|
+
-->
|
5
|
+
|
6
|
+
# <%= @action.action_name %>
|
7
|
+
|
8
|
+
<% action = @action %>
|
9
|
+
<%= action.description %>
|
10
|
+
|
11
|
+
<%= "> #{action.deprecated_notes.gsub("\n", "<br>")}" unless action.deprecated_notes.to_s.empty? %>
|
12
|
+
|
13
|
+
<% if @custom_content %>
|
14
|
+
<%= @custom_content %>
|
15
|
+
<hr />
|
16
|
+
<% else %>
|
17
|
+
<%= "> #{action.details.gsub(/(?<!\|)\n/, "<br>").gsub(/\|(?=\n|$)/, "")}" unless action.details.to_s.empty? %>
|
18
|
+
<% end %>
|
19
|
+
|
20
|
+
<%= action.action_name %> ||
|
21
|
+
---|---
|
22
|
+
Supported platforms | <%= [:ios, :android, :mac].find_all { |a| action.is_supported?(a) }.join(", ") %>
|
23
|
+
Author | @<%= Array(action.author || action.authors).join(", @") %>
|
24
|
+
<%- unless action.return_value.to_s.empty? -%>
|
25
|
+
Returns | <%= action.return_value.gsub("\n", "<br>") %>
|
26
|
+
<%- end -%>
|
27
|
+
|
28
|
+
<% if (action.example_code || []).count > 0 %>
|
29
|
+
|
30
|
+
## <%= action.example_code.count %> Example<%= (action.example_code.count > 1) ? "s" : "" %>
|
31
|
+
<% action.example_code.each do |current_sample| %>
|
32
|
+
```ruby
|
33
|
+
<%= current_sample.gsub(" ", "") %>
|
34
|
+
```
|
35
|
+
<% end %><%# End of action.example_code... %>
|
36
|
+
<% end %><%# End of if %>
|
37
|
+
|
38
|
+
<% if action.available_options && action.available_options.first.kind_of?(PantographCore::ConfigItem) %>
|
39
|
+
|
40
|
+
## Parameters
|
41
|
+
|
42
|
+
Key | Description | Default
|
43
|
+
----|-------------|--------
|
44
|
+
<%- (action.available_options || []).each do |config_item| -%>
|
45
|
+
<%- next unless config_item.kind_of?(PantographCore::ConfigItem) -%>
|
46
|
+
<%- next if config_item.description.to_s.length == 0 -%>
|
47
|
+
`<%= config_item.key %>` | <%= config_item.description.gsub(/(?<!\\)\|/, "\\|") %> | <%= config_item.doc_default_value %>
|
48
|
+
<%- end %>
|
49
|
+
<em id="parameters-legend-dynamic">* = default value is dependent on the user's system</em>
|
50
|
+
<% end %><%# End of action.available_options... %>
|
51
|
+
|
52
|
+
<hr />
|
53
|
+
|
54
|
+
<% if action.output && action.output.kind_of?(Array) && action.output.length > 0 %>
|
55
|
+
|
56
|
+
## Lane Variables
|
57
|
+
|
58
|
+
Actions can communicate with each other using a shared hash `lane_context`, that can be accessed in other actions, plugins or your lanes: `lane_context[SharedValues:XYZ]`. The `<%= @action.action_name %>` action generates the following Lane Variables:
|
59
|
+
|
60
|
+
SharedValue | Description
|
61
|
+
------------|-------------
|
62
|
+
<%- (action.output || []).each do |array_item| -%>
|
63
|
+
<%- next unless array_item.kind_of?(Array) -%>
|
64
|
+
<%- next if array_item.length != 2 -%>
|
65
|
+
`SharedValues::<%= array_item[0] %>` | <%= array_item[1] %>
|
66
|
+
<%- end %>
|
67
|
+
To get more information check the [Lanes documentation](https://docs.pantograph.tools/advanced/lanes/#lane-context).
|
68
|
+
<hr />
|
69
|
+
<% end %><%# End of action.output... %>
|
70
|
+
|
71
|
+
## Documentation
|
72
|
+
|
73
|
+
To show the documentation in your terminal, run
|
74
|
+
```no-highlight
|
75
|
+
pantograph action <%= action.action_name %>
|
76
|
+
```
|
77
|
+
|
78
|
+
<hr />
|
79
|
+
|
80
|
+
## CLI
|
81
|
+
|
82
|
+
It is recommended to add the above action into your `Pantfile`, however sometimes you might want to run one-offs. To do so, you can run the following command from your terminal
|
83
|
+
|
84
|
+
```no-highlight
|
85
|
+
pantograph run <%= @action.action_name %>
|
86
|
+
```
|
87
|
+
|
88
|
+
To pass parameters, make use of the `:` symbol, for example
|
89
|
+
|
90
|
+
```no-highlight
|
91
|
+
pantograph run <%= @action.action_name %> parameter1:"value1" parameter2:"value2"
|
92
|
+
```
|
93
|
+
|
94
|
+
It's important to note that the CLI supports primitive types like integers, floats, booleans, and strings. Arrays can be passed as a comma delimited string (e.g. `param:"1,2,3"`). Hashes are not currently supported.
|
95
|
+
|
96
|
+
It is recommended to add all _pantograph_ actions you use to your `Pantfile`.
|
97
|
+
|
98
|
+
<hr />
|
99
|
+
|
100
|
+
## Source code
|
101
|
+
|
102
|
+
This action, just like the rest of _pantograph_, is fully open source, <a href="https://github.com/johnknapprs/pantograph/blob/master/pantograph/lib/pantograph/actions/<%= @action_filename %>" target="_blank">view the source code on GitHub</a>
|
103
|
+
|
104
|
+
<hr />
|
105
|
+
|
106
|
+
<a href="/actions/"><b>Back to actions</b></a>
|
@@ -0,0 +1,43 @@
|
|
1
|
+
<!--
|
2
|
+
This file is auto-generated and will be re-generated every time the docs are updated.
|
3
|
+
To modify it, go to its source at https://github.com/johnknapprs/pantograph/blob/master/pantograph/lib/assets/Actions.md.erb
|
4
|
+
-->
|
5
|
+
|
6
|
+
{!docs/includes/setup-pantograph-header.md!}
|
7
|
+
|
8
|
+
# pantograph actions
|
9
|
+
|
10
|
+
This page contains a list of all built-in pantograph actions and their available options.
|
11
|
+
|
12
|
+
To get the most up-to-date information from the command line on your current version you can also run
|
13
|
+
|
14
|
+
```sh
|
15
|
+
pantograph actions # list all available pantograph actions
|
16
|
+
pantograph action [action_name] # more information for a specific action
|
17
|
+
```
|
18
|
+
|
19
|
+
You can import another `Pantfile` by using the `import` action. This is useful if you have shared lanes across multiple apps and you want to store a `Pantfile` in a separate folder. The path must be relative to the `Pantfile` this is called from.
|
20
|
+
|
21
|
+
```ruby
|
22
|
+
import './path/to/other/Pantfile'
|
23
|
+
```
|
24
|
+
|
25
|
+
For _pantograph_ plugins, check out the [available plugins](/plugins/available-plugins/) page.
|
26
|
+
If you want to create your own action, check out the [local actions](/create-action/#local-actions) page.
|
27
|
+
|
28
|
+
<%- @categories.each do |category, actions| -%>
|
29
|
+
- [<%= category %>](#<%= category.gsub(" ", "-").downcase %>)
|
30
|
+
<%- end -%>
|
31
|
+
- [Plugins](/plugins/available-plugins/)
|
32
|
+
|
33
|
+
<%- @categories.each do |category, actions| %>
|
34
|
+
# <%= category %>
|
35
|
+
|
36
|
+
Action | Description | Supported Platforms
|
37
|
+
---|---|---
|
38
|
+
<%- actions.sort.to_h.each do |_number_of_launches, action| -%>
|
39
|
+
<%- link = "/actions/#{action.action_name}/" -%>
|
40
|
+
<a href="<%= link %>"><%= action.action_name %></a> | <%= action.description %> | <%= [:ios, :android, :mac].find_all { |a| action.is_supported?(a) }.join(", ") %>
|
41
|
+
<%- end %><%# End of actions.sort... %>
|
42
|
+
|
43
|
+
<%- end %><%# End of categories.each %>
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# This file contains the pantograph.tools configuration
|
2
|
+
# You can find the documentation at https://docs.pantograph.tools
|
3
|
+
#
|
4
|
+
# For a list of all available actions, check out
|
5
|
+
#
|
6
|
+
# https://docs.pantograph.tools/actions
|
7
|
+
#
|
8
|
+
# For a list of all available plugins, check out
|
9
|
+
#
|
10
|
+
# https://docs.pantograph.tools/plugins/available-plugins
|
11
|
+
#
|
12
|
+
|
13
|
+
# Uncomment the line if you want pantograph to automatically update itself
|
14
|
+
# update_pantograph
|
15
|
+
|
16
|
+
default_platform(:ios)
|
17
|
+
|
18
|
+
platform :ios do
|
19
|
+
[[LANES]]
|
20
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
|
3
|
+
_pantograph_complete() {
|
4
|
+
COMPREPLY=()
|
5
|
+
local word="${COMP_WORDS[COMP_CWORD]}"
|
6
|
+
local completions=""
|
7
|
+
|
8
|
+
# look for Pantfile either in this directory or pantograph/ then grab the lane names
|
9
|
+
if [[ -e "Pantfile" ]]; then
|
10
|
+
file="Pantfile"
|
11
|
+
elif [[ -e "pantograph/Pantfile" ]]; then
|
12
|
+
file="pantograph/Pantfile"
|
13
|
+
elif [[ -e ".pantograph/Pantfile" ]]; then
|
14
|
+
file=".pantograph/Pantfile"
|
15
|
+
fi
|
16
|
+
|
17
|
+
# parse 'beta' out of 'lane :beta do', etc
|
18
|
+
completions=$(grep "^\s*lane \:" $file | awk -F ':' '{print $2}' | awk -F ' ' '{print $1}')
|
19
|
+
completions="$completions update_pantograph"
|
20
|
+
|
21
|
+
COMPREPLY=( $(compgen -W "$completions" -- "$word") )
|
22
|
+
}
|
23
|
+
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# This function was taken from https://github.com/Carthage/Carthage/blob/master/Source/Scripts/carthage-fish-completion
|
2
|
+
function __fish_pantograph_needs_subcommand
|
3
|
+
set cmd (commandline -opc)
|
4
|
+
if [ (count $cmd) -eq 1 -a $cmd[1] = 'pantograph' ]
|
5
|
+
return 0
|
6
|
+
end
|
7
|
+
return 1
|
8
|
+
end
|
9
|
+
|
10
|
+
if test -e "Pantfile"
|
11
|
+
set file "Pantfile"
|
12
|
+
else if test -e "pantograph/Pantfile"
|
13
|
+
set file "pantograph/Pantfile"
|
14
|
+
else if test -e ".pantograph/Pantfile"
|
15
|
+
set file ".pantograph/Pantfile"
|
16
|
+
else
|
17
|
+
exit 1
|
18
|
+
end
|
19
|
+
|
20
|
+
set commands (string match --regex '.*lane\ \:(?!private_)([^\s]*)\ do' (cat $file))
|
21
|
+
|
22
|
+
set commands_string
|
23
|
+
|
24
|
+
# Fish returns the fully matched string, plus the capture group. The actual captured value
|
25
|
+
# is every other line, starting at line 2.
|
26
|
+
set use_command false
|
27
|
+
|
28
|
+
for line in $commands
|
29
|
+
if [ $use_command = true ]
|
30
|
+
set commands_string "$commands_string $line"
|
31
|
+
set use_command false
|
32
|
+
else
|
33
|
+
set use_command true
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
set commands_string "$commands_string update_pantograph"
|
38
|
+
|
39
|
+
complete -c pantograph -n '__fish_pantograph_needs_subcommand' -a (string trim $commands_string) -f
|
@@ -0,0 +1,12 @@
|
|
1
|
+
#!/bin/sh
|
2
|
+
# shellcheck disable=SC2155
|
3
|
+
# shellcheck disable=SC1090
|
4
|
+
# shellcheck disable=SC2039
|
5
|
+
|
6
|
+
if [ -n "$BASH_VERSION" ]; then
|
7
|
+
source ~/.pantograph/completions/completion.bash
|
8
|
+
elif [ -n "$ZSH_VERSION" ]; then
|
9
|
+
source ~/.pantograph/completions/completion.zsh
|
10
|
+
fi
|
11
|
+
|
12
|
+
# Do not remove v0.0.1
|
@@ -0,0 +1,23 @@
|
|
1
|
+
#!/bin/zsh
|
2
|
+
|
3
|
+
_pantograph_complete() {
|
4
|
+
local word completions
|
5
|
+
word="$1"
|
6
|
+
|
7
|
+
# look for Pantfile either in this directory or pantograph/ then grab the lane names
|
8
|
+
if [[ -e "Pantfile" ]] then
|
9
|
+
file="Pantfile"
|
10
|
+
elif [[ -e "pantograph/Pantfile" ]] then
|
11
|
+
file="pantograph/Pantfile"
|
12
|
+
elif [[ -e ".pantograph/Pantfile" ]] then
|
13
|
+
file=".pantograph/Pantfile"
|
14
|
+
fi
|
15
|
+
|
16
|
+
# parse 'beta' out of 'lane :beta do', etc
|
17
|
+
completions=`cat $file | grep "^\s*lane \:" | awk -F ':' '{print $2}' | awk -F ' ' '{print $1}'`
|
18
|
+
completions="$completions
|
19
|
+
update_pantograph"
|
20
|
+
|
21
|
+
reply=( "${(ps:\n:)completions}" )
|
22
|
+
}
|
23
|
+
|
@@ -0,0 +1,80 @@
|
|
1
|
+
module Pantograph
|
2
|
+
module Actions
|
3
|
+
module SharedValues
|
4
|
+
[[NAME_UP]]_CUSTOM_VALUE = :[[NAME_UP]]_CUSTOM_VALUE
|
5
|
+
end
|
6
|
+
|
7
|
+
class [[NAME_CLASS]] < Action
|
8
|
+
def self.run(params)
|
9
|
+
# pantograph will take care of reading in the parameter and fetching the environment variable:
|
10
|
+
UI.message("Parameter API Token: #{params[:api_token]}")
|
11
|
+
|
12
|
+
# sh("shellcommand ./path")
|
13
|
+
|
14
|
+
# Actions.lane_context[SharedValues::[[NAME_UP]]_CUSTOM_VALUE] = "my_val"
|
15
|
+
end
|
16
|
+
|
17
|
+
#####################################################
|
18
|
+
# @!group Documentation
|
19
|
+
#####################################################
|
20
|
+
|
21
|
+
def self.description
|
22
|
+
'A short description with <= 80 characters of what this action does'
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.details
|
26
|
+
# Optional:
|
27
|
+
# this is your chance to provide a more detailed description of this action
|
28
|
+
'You can use this action to do cool things...'
|
29
|
+
end
|
30
|
+
|
31
|
+
def self.available_options
|
32
|
+
# Define all options your action supports.
|
33
|
+
|
34
|
+
# Below a few examples
|
35
|
+
[
|
36
|
+
PantographCore::ConfigItem.new(key: :api_token,
|
37
|
+
env_name: '[[NAME_UP]]_API_TOKEN', # The name of the environment variable
|
38
|
+
description: 'API Token for [[NAME_CLASS]]', # a short description of this parameter
|
39
|
+
verify_block: proc do |value|
|
40
|
+
UI.user_error!('No API token for [[NAME_CLASS]] given, pass using `api_token: "token"`') unless (value and not value.empty?)
|
41
|
+
end),
|
42
|
+
PantographCore::ConfigItem.new(key: :development,
|
43
|
+
env_name: '[[NAME_UP]]_DEVELOPMENT',
|
44
|
+
description: 'Create a development certificate instead of a distribution one',
|
45
|
+
is_string: false, # true: verifies the input is a string, false: every kind of value
|
46
|
+
default_value: false) # the default value if the user didn't provide one
|
47
|
+
]
|
48
|
+
end
|
49
|
+
|
50
|
+
def self.output
|
51
|
+
# Define the shared values you are going to provide
|
52
|
+
# Example
|
53
|
+
[
|
54
|
+
['[[NAME_UP]]_CUSTOM_VALUE', 'A description of what this value contains']
|
55
|
+
]
|
56
|
+
end
|
57
|
+
|
58
|
+
def self.return_value
|
59
|
+
# If your method provides a return value, you can describe here what it does
|
60
|
+
end
|
61
|
+
|
62
|
+
def self.authors
|
63
|
+
# So no one will ever forget your contribution to pantograph :) You are awesome btw!
|
64
|
+
['Your GitHub/Twitter Name']
|
65
|
+
end
|
66
|
+
|
67
|
+
def self.is_supported?(platform)
|
68
|
+
# you can do things like
|
69
|
+
#
|
70
|
+
# true
|
71
|
+
#
|
72
|
+
# platform == :ios
|
73
|
+
#
|
74
|
+
# [:ios, :mac].include?(platform)
|
75
|
+
#
|
76
|
+
true
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<testsuites>
|
3
|
+
<testsuite name="pantograph.lanes">
|
4
|
+
<%# prefix index with leading zeroes to help alpha-numeric sorting. Note that index starts at 0 %>
|
5
|
+
<% log = (@steps.count-1).to_s.length %>
|
6
|
+
<% @steps.each_with_index do |step, index| %>
|
7
|
+
<% name = [index.to_s.rjust(log, "0"), step[:name]].join(": ") %>
|
8
|
+
<testcase classname="pantograph.lanes" name=<%= name.encode(:xml => :attr) %> time="<%= step[:time] %>">
|
9
|
+
<% if step[:error] %>
|
10
|
+
<failure message=<%= step[:error].encode(:xml => :attr).gsub("\n", " ") %> />
|
11
|
+
<% end %>
|
12
|
+
</testcase>
|
13
|
+
<% end %>
|
14
|
+
</testsuite>
|
15
|
+
</testsuites>
|