pantograph 0.1.12 → 0.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/pantograph/lib/pantograph/actions/artifactory.rb +15 -15
- data/pantograph/lib/pantograph/actions/bundle_install.rb +33 -33
- data/pantograph/lib/pantograph/actions/changelog_from_git_commits.rb +14 -14
- data/pantograph/lib/pantograph/actions/cloc.rb +15 -15
- data/pantograph/lib/pantograph/actions/danger.rb +26 -26
- data/pantograph/lib/pantograph/actions/download.rb +3 -3
- data/pantograph/lib/pantograph/actions/ensure_git_branch.rb +4 -4
- data/pantograph/lib/pantograph/actions/ensure_git_status_clean.rb +10 -10
- data/pantograph/lib/pantograph/actions/erb.rb +12 -12
- data/pantograph/lib/pantograph/actions/get_github_release.rb +10 -10
- data/pantograph/lib/pantograph/actions/github_api.rb +20 -20
- data/pantograph/lib/pantograph/actions/gradle.rb +67 -85
- data/pantograph/lib/pantograph/actions/jira.rb +14 -14
- data/pantograph/lib/pantograph/actions/make_changelog_from_jenkins.rb +9 -9
- data/pantograph/lib/pantograph/actions/nexus_upload.rb +37 -37
- data/pantograph/lib/pantograph/actions/number_of_commits.rb +6 -6
- data/pantograph/lib/pantograph/actions/push_git_tags.rb +7 -7
- data/pantograph/lib/pantograph/actions/push_to_git_remote.rb +19 -19
- data/pantograph/lib/pantograph/actions/reset_git_repo.rb +9 -9
- data/pantograph/lib/pantograph/actions/rsync.rb +14 -14
- data/pantograph/lib/pantograph/actions/set_github_release.rb +19 -19
- data/pantograph/lib/pantograph/actions/slack.rb +28 -28
- data/pantograph/lib/pantograph/actions/sonar.rb +32 -32
- data/pantograph/lib/pantograph/actions/ssh.rb +22 -22
- data/pantograph/lib/pantograph/actions/twitter.rb +14 -14
- data/pantograph/lib/pantograph/actions/update_pantograph.rb +16 -16
- data/pantograph/lib/pantograph/actions/zip.rb +12 -12
- data/pantograph/lib/pantograph/helper/gradle_helper.rb +2 -3
- data/pantograph/lib/pantograph/junit_generator.rb +1 -1
- data/pantograph/lib/pantograph/lane_manager.rb +1 -1
- data/pantograph/lib/pantograph/plugins/template/.rubocop.yml +2 -0
- data/pantograph/lib/pantograph/setup/setup.rb +6 -6
- data/pantograph/lib/pantograph/version.rb +1 -1
- data/pantograph_core/lib/pantograph_core/helper.rb +1 -1
- data/pantograph_core/lib/pantograph_core/print_table.rb +1 -1
- data/pantograph_core/lib/pantograph_core/swag.rb +2 -2
- metadata +2 -2
@@ -6,7 +6,7 @@ module Pantograph
|
|
6
6
|
|
7
7
|
class RsyncAction < Action
|
8
8
|
def self.run(params)
|
9
|
-
rsync_cmd = [
|
9
|
+
rsync_cmd = ['rsync']
|
10
10
|
rsync_cmd << params[:extra]
|
11
11
|
rsync_cmd << params[:source]
|
12
12
|
rsync_cmd << params[:destination]
|
@@ -18,39 +18,39 @@ module Pantograph
|
|
18
18
|
#####################################################
|
19
19
|
|
20
20
|
def self.description
|
21
|
-
|
21
|
+
'Rsync files from :source to :destination'
|
22
22
|
end
|
23
23
|
|
24
24
|
def self.details
|
25
|
-
|
25
|
+
'A wrapper around `rsync`, which is a tool that lets you synchronize files, including permissions and so on. For a more detailed information about `rsync`, please see [rsync(1) man page](https://linux.die.net/man/1/rsync).'
|
26
26
|
end
|
27
27
|
|
28
28
|
def self.available_options
|
29
29
|
[
|
30
30
|
PantographCore::ConfigItem.new(key: :extra,
|
31
|
-
short_option:
|
32
|
-
env_name:
|
33
|
-
description:
|
31
|
+
short_option: '-X',
|
32
|
+
env_name: 'RSYNC_EXTRA', # The name of the environment variable
|
33
|
+
description: 'Port', # a short description of this parameter
|
34
34
|
optional: true,
|
35
|
-
default_value:
|
35
|
+
default_value: '-av',
|
36
36
|
type: String),
|
37
37
|
PantographCore::ConfigItem.new(key: :source,
|
38
|
-
short_option:
|
39
|
-
env_name:
|
40
|
-
description:
|
38
|
+
short_option: '-S',
|
39
|
+
env_name: 'RSYNC_SRC', # The name of the environment variable
|
40
|
+
description: 'source file/folder', # a short description of this parameter
|
41
41
|
optional: false,
|
42
42
|
type: String),
|
43
43
|
PantographCore::ConfigItem.new(key: :destination,
|
44
|
-
short_option:
|
45
|
-
env_name:
|
46
|
-
description:
|
44
|
+
short_option: '-D',
|
45
|
+
env_name: 'RSYNC_DST', # The name of the environment variable
|
46
|
+
description: 'destination file/folder', # a short description of this parameter
|
47
47
|
optional: false,
|
48
48
|
type: String)
|
49
49
|
]
|
50
50
|
end
|
51
51
|
|
52
52
|
def self.authors
|
53
|
-
[
|
53
|
+
['hjanuschka']
|
54
54
|
end
|
55
55
|
|
56
56
|
def self.is_supported?(platform)
|
@@ -142,7 +142,7 @@ module Pantograph
|
|
142
142
|
#####################################################
|
143
143
|
|
144
144
|
def self.description
|
145
|
-
|
145
|
+
'This will create a new release on GitHub and upload assets for it'
|
146
146
|
end
|
147
147
|
|
148
148
|
def self.details
|
@@ -156,14 +156,14 @@ module Pantograph
|
|
156
156
|
def self.available_options
|
157
157
|
[
|
158
158
|
PantographCore::ConfigItem.new(key: :repository_name,
|
159
|
-
env_name:
|
159
|
+
env_name: 'SET_GITHUB_RELEASE_REPOSITORY_NAME',
|
160
160
|
description: "The path to your repo, e.g. 'pantograph/pantograph'",
|
161
161
|
verify_block: proc do |value|
|
162
162
|
UI.user_error!("Please only pass the path, e.g. 'pantograph/pantograph'") if value.include?("github.com")
|
163
163
|
UI.user_error!("Please only pass the path, e.g. 'pantograph/pantograph'") if value.split('/').count != 2
|
164
164
|
end),
|
165
165
|
PantographCore::ConfigItem.new(key: :server_url,
|
166
|
-
env_name:
|
166
|
+
env_name: 'GITHUB_RELEASE_SERVER_URL',
|
167
167
|
description: "The server url. e.g. 'https://your.internal.github.host/api/v3' (Default: 'https://api.github.com')",
|
168
168
|
default_value: "https://api.github.com",
|
169
169
|
optional: true,
|
@@ -171,7 +171,7 @@ module Pantograph
|
|
171
171
|
UI.user_error!("Please include the protocol in the server url, e.g. https://your.github.server/api/v3") unless value.include?("//")
|
172
172
|
end),
|
173
173
|
PantographCore::ConfigItem.new(key: :api_token,
|
174
|
-
env_name:
|
174
|
+
env_name: 'GITHUB_RELEASE_API_TOKEN',
|
175
175
|
description: "Personal API Token for GitHub - generate one at https://github.com/settings/tokens",
|
176
176
|
sensitive: true,
|
177
177
|
code_gen_sensitive: true,
|
@@ -180,47 +180,47 @@ module Pantograph
|
|
180
180
|
default_value_dynamic: true,
|
181
181
|
optional: false),
|
182
182
|
PantographCore::ConfigItem.new(key: :tag_name,
|
183
|
-
env_name:
|
183
|
+
env_name: 'SET_GITHUB_RELEASE_TAG_NAME',
|
184
184
|
description: "Pass in the tag name",
|
185
185
|
type: String,
|
186
186
|
optional: false),
|
187
187
|
PantographCore::ConfigItem.new(key: :name,
|
188
|
-
env_name:
|
188
|
+
env_name: 'SET_GITHUB_RELEASE_NAME',
|
189
189
|
description: "Name of this release",
|
190
190
|
type: String,
|
191
191
|
optional: true),
|
192
192
|
PantographCore::ConfigItem.new(key: :commitish,
|
193
|
-
env_name:
|
193
|
+
env_name: 'SET_GITHUB_RELEASE_COMMITISH',
|
194
194
|
description: "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch (usually master)",
|
195
195
|
type: String,
|
196
196
|
optional: true),
|
197
197
|
PantographCore::ConfigItem.new(key: :description,
|
198
|
-
env_name:
|
199
|
-
description:
|
198
|
+
env_name: 'SET_GITHUB_RELEASE_DESCRIPTION',
|
199
|
+
description: 'Description of this release',
|
200
200
|
type: String,
|
201
201
|
optional: true,
|
202
|
-
default_value: Actions.lane_context[SharedValues::
|
202
|
+
default_value: Actions.lane_context[SharedValues::PANT_CHANGELOG],
|
203
203
|
default_value_dynamic: true),
|
204
204
|
PantographCore::ConfigItem.new(key: :is_draft,
|
205
|
-
env_name:
|
206
|
-
description:
|
205
|
+
env_name: 'SET_GITHUB_RELEASE_IS_DRAFT',
|
206
|
+
description: 'Whether the release should be marked as draft',
|
207
207
|
optional: true,
|
208
208
|
default_value: false,
|
209
209
|
is_string: false),
|
210
210
|
PantographCore::ConfigItem.new(key: :is_prerelease,
|
211
|
-
env_name:
|
212
|
-
description:
|
211
|
+
env_name: 'SET_GITHUB_RELEASE_IS_PRERELEASE',
|
212
|
+
description: 'Whether the release should be marked as prerelease',
|
213
213
|
optional: true,
|
214
214
|
default_value: false,
|
215
215
|
is_string: false),
|
216
216
|
PantographCore::ConfigItem.new(key: :upload_assets,
|
217
|
-
env_name:
|
218
|
-
description:
|
217
|
+
env_name: 'SET_GITHUB_RELEASE_UPLOAD_ASSETS',
|
218
|
+
description: 'Path to assets to be uploaded with the release',
|
219
219
|
optional: true,
|
220
220
|
is_string: false,
|
221
221
|
type: Array,
|
222
222
|
verify_block: proc do |value|
|
223
|
-
UI.user_error!(
|
223
|
+
UI.user_error!('upload_assets must be an Array of paths to assets') unless value.kind_of?(Array)
|
224
224
|
end)
|
225
225
|
]
|
226
226
|
end
|
@@ -235,7 +235,7 @@ module Pantograph
|
|
235
235
|
|
236
236
|
def self.return_value
|
237
237
|
[
|
238
|
-
|
238
|
+
'A hash containing all relevant information of this release',
|
239
239
|
"Access things like 'html_url', 'tag_name', 'name', 'body'"
|
240
240
|
].join("\n")
|
241
241
|
end
|
@@ -245,7 +245,7 @@ module Pantograph
|
|
245
245
|
end
|
246
246
|
|
247
247
|
def self.authors
|
248
|
-
[
|
248
|
+
['czechboy0', 'tommeier']
|
249
249
|
end
|
250
250
|
|
251
251
|
def self.is_supported?(platform)
|
@@ -66,78 +66,78 @@ module Pantograph
|
|
66
66
|
end
|
67
67
|
|
68
68
|
def self.description
|
69
|
-
|
69
|
+
'Send a success/error message to your [Slack](https://slack.com) group'
|
70
70
|
end
|
71
71
|
|
72
72
|
def self.available_options
|
73
73
|
[
|
74
74
|
PantographCore::ConfigItem.new(key: :message,
|
75
|
-
env_name:
|
76
|
-
description:
|
75
|
+
env_name: 'SLACK_MESSAGE',
|
76
|
+
description: 'The message that should be displayed on Slack. This supports the standard Slack markup language',
|
77
77
|
optional: true),
|
78
78
|
PantographCore::ConfigItem.new(key: :pretext,
|
79
|
-
env_name:
|
80
|
-
description:
|
79
|
+
env_name: 'SLACK_PRETEXT',
|
80
|
+
description: 'This is optional text that appears above the message attachment block. This supports the standard Slack markup language',
|
81
81
|
optional: true),
|
82
82
|
PantographCore::ConfigItem.new(key: :channel,
|
83
|
-
env_name:
|
84
|
-
description:
|
83
|
+
env_name: 'SLACK_CHANNEL',
|
84
|
+
description: '#channel or @username',
|
85
85
|
optional: true),
|
86
86
|
PantographCore::ConfigItem.new(key: :use_webhook_configured_username_and_icon,
|
87
|
-
env_name:
|
87
|
+
env_name: 'SLACK_USE_WEBHOOK_CONFIGURED_USERNAME_AND_ICON',
|
88
88
|
description: "Use webhook's default username and icon settings? (true/false)",
|
89
89
|
default_value: false,
|
90
90
|
is_string: false,
|
91
91
|
optional: true),
|
92
92
|
PantographCore::ConfigItem.new(key: :slack_url,
|
93
|
-
env_name:
|
93
|
+
env_name: 'SLACK_URL',
|
94
94
|
sensitive: true,
|
95
|
-
description:
|
95
|
+
description: 'Create an Incoming WebHook for your Slack group',
|
96
96
|
verify_block: proc do |value|
|
97
|
-
UI.user_error!(
|
97
|
+
UI.user_error!('Invalid URL, must start with https://') unless value.start_with?('https://')
|
98
98
|
end),
|
99
99
|
PantographCore::ConfigItem.new(key: :username,
|
100
|
-
env_name:
|
100
|
+
env_name: 'SLACK_USERNAME',
|
101
101
|
description: "Overrides the webhook's username property if use_webhook_configured_username_and_icon is false",
|
102
|
-
default_value:
|
102
|
+
default_value: 'pantograph',
|
103
103
|
type: String,
|
104
104
|
optional: true),
|
105
105
|
PantographCore::ConfigItem.new(key: :icon_url,
|
106
|
-
env_name:
|
106
|
+
env_name: 'SLACK_ICON_URL',
|
107
107
|
description: "Overrides the webhook's image property if use_webhook_configured_username_and_icon is false",
|
108
|
-
default_value:
|
108
|
+
default_value: 'https://s3-eu-west-1.amazonaws.com/pantograph.tools/pantograph.png',
|
109
109
|
type: String,
|
110
110
|
optional: true),
|
111
111
|
PantographCore::ConfigItem.new(key: :payload,
|
112
|
-
env_name:
|
112
|
+
env_name: 'SLACK_PAYLOAD',
|
113
113
|
description: "Add additional information to this post. payload must be a hash containing any key with any value",
|
114
114
|
default_value: {},
|
115
115
|
is_string: false),
|
116
116
|
PantographCore::ConfigItem.new(key: :default_payloads,
|
117
|
-
env_name:
|
118
|
-
description:
|
117
|
+
env_name: 'SLACK_DEFAULT_PAYLOADS',
|
118
|
+
description: 'Remove some of the default payloads. More information about the available payloads on GitHub',
|
119
119
|
optional: true,
|
120
120
|
type: Array),
|
121
121
|
PantographCore::ConfigItem.new(key: :attachment_properties,
|
122
|
-
env_name:
|
123
|
-
description:
|
122
|
+
env_name: 'SLACK_ATTACHMENT_PROPERTIES',
|
123
|
+
description: 'Merge additional properties in the slack attachment, see https://api.slack.com/docs/attachments',
|
124
124
|
default_value: {},
|
125
125
|
is_string: false),
|
126
126
|
PantographCore::ConfigItem.new(key: :success,
|
127
|
-
env_name:
|
128
|
-
description:
|
127
|
+
env_name: 'SLACK_SUCCESS',
|
128
|
+
description: 'Was this build successful? (true/false)',
|
129
129
|
optional: true,
|
130
130
|
default_value: true,
|
131
131
|
is_string: false),
|
132
132
|
PantographCore::ConfigItem.new(key: :fail_on_error,
|
133
|
-
env_name:
|
134
|
-
description:
|
133
|
+
env_name: 'SLACK_FAIL_ON_ERROR',
|
134
|
+
description: 'Should an error sending the slack notification cause a failure? (true/false)',
|
135
135
|
optional: true,
|
136
136
|
default_value: true,
|
137
137
|
is_string: false),
|
138
138
|
PantographCore::ConfigItem.new(key: :link_names,
|
139
|
-
env_name:
|
140
|
-
description:
|
139
|
+
env_name: 'SLACK_LINK_NAMES',
|
140
|
+
description: 'Find and link channel names and usernames (true/false)',
|
141
141
|
optional: true,
|
142
142
|
default_value: false,
|
143
143
|
is_string: false)
|
@@ -145,7 +145,7 @@ module Pantograph
|
|
145
145
|
end
|
146
146
|
|
147
147
|
def self.author
|
148
|
-
|
148
|
+
'KrauseFx'
|
149
149
|
end
|
150
150
|
|
151
151
|
def self.example_code
|
@@ -179,7 +179,7 @@ module Pantograph
|
|
179
179
|
end
|
180
180
|
|
181
181
|
def self.details
|
182
|
-
|
182
|
+
'Create an Incoming WebHook and export this as `SLACK_URL`. Can send a message to **#channel** (by default), a direct message to **@username** or a message to a private group **group** with success (green) or failure (red) status.'
|
183
183
|
end
|
184
184
|
|
185
185
|
#####################################################
|
@@ -44,93 +44,93 @@ module Pantograph
|
|
44
44
|
#####################################################
|
45
45
|
|
46
46
|
def self.description
|
47
|
-
|
47
|
+
'Invokes sonar-scanner to programmatically run SonarQube analysis'
|
48
48
|
end
|
49
49
|
|
50
50
|
def self.details
|
51
51
|
[
|
52
|
-
|
53
|
-
|
52
|
+
'See [http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner](http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner) for details.',
|
53
|
+
'It can process unit test results if formatted as junit report as shown in [xctest](https://johnknapprs.github.io/pantograph/actions/xctest/) action. It can also integrate coverage reports in Cobertura format, which can be transformed into by the [slather](https://johnknapprs.github.io/pantograph/actions/slather/) action.'
|
54
54
|
].join("\n")
|
55
55
|
end
|
56
56
|
|
57
57
|
def self.available_options
|
58
58
|
[
|
59
59
|
PantographCore::ConfigItem.new(key: :project_configuration_path,
|
60
|
-
env_name:
|
61
|
-
description:
|
60
|
+
env_name: 'SONAR_RUNNER_PROPERTIES_PATH',
|
61
|
+
description: 'The path to your sonar project configuration file; defaults to `sonar-project.properties`', # default is enforced by sonar-scanner binary
|
62
62
|
optional: true,
|
63
63
|
verify_block: proc do |value|
|
64
64
|
UI.user_error!("Couldn't find file at path '#{value}'") unless value.nil? || File.exist?(value)
|
65
65
|
end),
|
66
66
|
PantographCore::ConfigItem.new(key: :project_key,
|
67
|
-
env_name:
|
68
|
-
description:
|
67
|
+
env_name: 'SONAR_RUNNER_PROJECT_KEY',
|
68
|
+
description: 'The key sonar uses to identify the project, e.g. `name.gretzki.awesomeApp`. Must either be specified here or inside the sonar project configuration file',
|
69
69
|
optional: true),
|
70
70
|
PantographCore::ConfigItem.new(key: :project_name,
|
71
|
-
env_name:
|
72
|
-
description:
|
71
|
+
env_name: 'SONAR_RUNNER_PROJECT_NAME',
|
72
|
+
description: 'The name of the project that gets displayed on the sonar report page. Must either be specified here or inside the sonar project configuration file',
|
73
73
|
optional: true),
|
74
74
|
PantographCore::ConfigItem.new(key: :project_version,
|
75
|
-
env_name:
|
75
|
+
env_name: 'SONAR_RUNNER_PROJECT_VERSION',
|
76
76
|
description: "The project's version that gets displayed on the sonar report page. Must either be specified here or inside the sonar project configuration file",
|
77
77
|
optional: true),
|
78
78
|
PantographCore::ConfigItem.new(key: :sources_path,
|
79
|
-
env_name:
|
80
|
-
description:
|
79
|
+
env_name: 'SONAR_RUNNER_SOURCES_PATH',
|
80
|
+
description: 'Comma-separated paths to directories containing source files. Must either be specified here or inside the sonar project configuration file',
|
81
81
|
optional: true),
|
82
82
|
PantographCore::ConfigItem.new(key: :project_language,
|
83
|
-
env_name:
|
84
|
-
description:
|
83
|
+
env_name: 'SONAR_RUNNER_PROJECT_LANGUAGE',
|
84
|
+
description: 'Language key, e.g. objc',
|
85
85
|
optional: true),
|
86
86
|
PantographCore::ConfigItem.new(key: :source_encoding,
|
87
|
-
env_name:
|
88
|
-
description:
|
87
|
+
env_name: 'SONAR_RUNNER_SOURCE_ENCODING',
|
88
|
+
description: 'Used encoding of source files, e.g., UTF-8',
|
89
89
|
optional: true),
|
90
90
|
PantographCore::ConfigItem.new(key: :sonar_runner_args,
|
91
|
-
env_name:
|
92
|
-
description:
|
91
|
+
env_name: 'SONAR_RUNNER_ARGS',
|
92
|
+
description: 'Pass additional arguments to sonar-scanner. Be sure to provide the arguments with a leading `-D` e.g. SONAR_RUNNER_ARGS=\"-Dsonar.verbose=true\"',
|
93
93
|
optional: true),
|
94
94
|
PantographCore::ConfigItem.new(key: :sonar_login,
|
95
|
-
env_name:
|
96
|
-
description:
|
95
|
+
env_name: 'SONAR_LOGIN',
|
96
|
+
description: 'Pass the Sonar Login token (e.g: xxxxxxprivate_token_XXXXbXX7e)',
|
97
97
|
optional: true,
|
98
98
|
type: String,
|
99
99
|
sensitive: true),
|
100
100
|
PantographCore::ConfigItem.new(key: :sonar_url,
|
101
|
-
env_name:
|
102
|
-
description:
|
101
|
+
env_name: 'SONAR_URL',
|
102
|
+
description: 'Pass the url of the Sonar server',
|
103
103
|
optional: true,
|
104
104
|
type: String),
|
105
105
|
PantographCore::ConfigItem.new(key: :branch_name,
|
106
|
-
env_name:
|
107
|
-
description:
|
106
|
+
env_name: 'SONAR_RUNNER_BRANCH_NAME',
|
107
|
+
description: 'Pass the branch name which is getting scanned',
|
108
108
|
optional: true,
|
109
109
|
type: String),
|
110
110
|
PantographCore::ConfigItem.new(key: :pull_request_branch,
|
111
|
-
env_name:
|
112
|
-
description:
|
111
|
+
env_name: 'SONAR_RUNNER_PULL_REQUEST_BRANCH',
|
112
|
+
description: 'The name of the branch that contains the changes to be merged',
|
113
113
|
optional: true,
|
114
114
|
type: String),
|
115
115
|
PantographCore::ConfigItem.new(key: :pull_request_base,
|
116
|
-
env_name:
|
117
|
-
description:
|
116
|
+
env_name: 'SONAR_RUNNER_PULL_REQUEST_BASE',
|
117
|
+
description: 'The long-lived branch into which the PR will be merged',
|
118
118
|
optional: true,
|
119
119
|
type: String),
|
120
120
|
PantographCore::ConfigItem.new(key: :pull_request_key,
|
121
|
-
env_name:
|
122
|
-
description:
|
121
|
+
env_name: 'SONAR_RUNNER_PULL_REQUEST_KEY',
|
122
|
+
description: 'Unique identifier of your PR. Must correspond to the key of the PR in GitHub or TFS',
|
123
123
|
optional: true,
|
124
124
|
type: String)
|
125
125
|
]
|
126
126
|
end
|
127
127
|
|
128
128
|
def self.return_value
|
129
|
-
|
129
|
+
'The exit code of the sonar-scanner binary'
|
130
130
|
end
|
131
131
|
|
132
132
|
def self.authors
|
133
|
-
[
|
133
|
+
['c_gretzki']
|
134
134
|
end
|
135
135
|
|
136
136
|
def self.is_supported?(platform)
|
@@ -76,50 +76,50 @@ module Pantograph
|
|
76
76
|
#####################################################
|
77
77
|
|
78
78
|
def self.description
|
79
|
-
|
79
|
+
'Allows remote command execution using ssh'
|
80
80
|
end
|
81
81
|
|
82
82
|
def self.details
|
83
|
-
|
83
|
+
'Lets you execute remote commands via ssh using username/password or ssh-agent. If one of the commands in command-array returns non 0, it fails.'
|
84
84
|
end
|
85
85
|
|
86
86
|
def self.available_options
|
87
87
|
[
|
88
88
|
PantographCore::ConfigItem.new(key: :username,
|
89
|
-
short_option:
|
90
|
-
env_name:
|
91
|
-
description:
|
89
|
+
short_option: '-u',
|
90
|
+
env_name: 'SSH_USERNAME',
|
91
|
+
description: 'Username',
|
92
92
|
type: String),
|
93
93
|
PantographCore::ConfigItem.new(key: :password,
|
94
|
-
short_option:
|
95
|
-
env_name:
|
94
|
+
short_option: '-p',
|
95
|
+
env_name: 'SSH_PASSWORD',
|
96
96
|
sensitive: true,
|
97
|
-
description:
|
97
|
+
description: 'Password',
|
98
98
|
optional: true,
|
99
99
|
type: String),
|
100
100
|
PantographCore::ConfigItem.new(key: :host,
|
101
|
-
short_option:
|
102
|
-
env_name:
|
103
|
-
description:
|
101
|
+
short_option: '-H',
|
102
|
+
env_name: 'SSH_HOST',
|
103
|
+
description: 'Hostname',
|
104
104
|
type: String),
|
105
105
|
PantographCore::ConfigItem.new(key: :port,
|
106
|
-
short_option:
|
107
|
-
env_name:
|
108
|
-
description:
|
106
|
+
short_option: '-P',
|
107
|
+
env_name: 'SSH_PORT',
|
108
|
+
description: 'Port',
|
109
109
|
optional: true,
|
110
|
-
default_value:
|
110
|
+
default_value: '22',
|
111
111
|
type: String),
|
112
112
|
PantographCore::ConfigItem.new(key: :commands,
|
113
|
-
short_option:
|
114
|
-
env_name:
|
115
|
-
description:
|
113
|
+
short_option: '-C',
|
114
|
+
env_name: 'SSH_COMMANDS',
|
115
|
+
description: 'Commands',
|
116
116
|
optional: true,
|
117
117
|
is_string: false,
|
118
118
|
type: Array),
|
119
119
|
PantographCore::ConfigItem.new(key: :log,
|
120
|
-
short_option:
|
121
|
-
env_name:
|
122
|
-
description:
|
120
|
+
short_option: '-l',
|
121
|
+
env_name: 'SSH_LOG',
|
122
|
+
description: 'Log commands and output',
|
123
123
|
optional: true,
|
124
124
|
default_value: true,
|
125
125
|
is_string: false)
|
@@ -134,7 +134,7 @@ module Pantograph
|
|
134
134
|
end
|
135
135
|
|
136
136
|
def self.authors
|
137
|
-
[
|
137
|
+
['hjanuschka']
|
138
138
|
end
|
139
139
|
|
140
140
|
def self.is_supported?(platform)
|