allure-report-publisher 0.7.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d33ea0e4d124c07ae275376e075ab14d3bcfedc7b5d71fdd23b78882e436c09
4
- data.tar.gz: 94d3d70c631aeb9b79aa71fbd18cc920f95cfbe29320c12166d81d1de913cc7a
3
+ metadata.gz: 7722c37f99dfb77c35ecc2d813ab65430855d30fa84ebb8836b48e8819e32c56
4
+ data.tar.gz: 2f992f399433095c273d05b41b15a76958730aeb574b025f1ab804ea993eb290
5
5
  SHA512:
6
- metadata.gz: e4ba711128088e03fdf2a0f77e9890d33b6eee5e5e1671b613203e2700fdbd715e690ddf4964bcc82762f144560e83333af7e46f22d82c6c96b408f931a33830
7
- data.tar.gz: 2b263c7e7e48d244f30df4efec6358599f31f79f832888a6083b7d3c2dbdaa40458f0216e13142ac9004f20be3efc58c9d2b9f87f57a500da662791ef68151a9
6
+ metadata.gz: 1c5b08dba58c1d367c6481d21481ebe62044fbec30765d0d0a0ab2f270d7b241e070b4cbb2c6d6773c08888e313b690089a4ff2faa928a4a9f68d5befed8d5c5
7
+ data.tar.gz: c0cab48cf344df067e70660ec347ca8c11e2b4d7d2517b4364434c576355653067ef3d8a2e8db334d4b1d028b4d1b4ecd338512aad0c72474ed51cb80ba6d83c
data/README.md CHANGED
@@ -1,13 +1,12 @@
1
1
  # allure-report-publisher
2
2
 
3
- [![Gem Version](https://img.shields.io/gem/v/allure-report-publisher?color=red)](https://rubygems.org/gems/allure-report-publisher)
4
- [![Gem Pulls](https://img.shields.io/gem/dt/allure-report-publisher)](https://rubygems.org/gems/allure-report-publisher)
5
3
  [![Docker Image Version (latest semver)](https://img.shields.io/docker/v/andrcuns/allure-report-publisher?color=blue&label=docker&sort=semver)](https://hub.docker.com/r/andrcuns/allure-report-publisher)
6
4
  [![Docker Pulls](https://img.shields.io/docker/pulls/andrcuns/allure-report-publisher)](https://hub.docker.com/r/andrcuns/allure-report-publisher)
7
5
  ![Workflow status](https://github.com/andrcuns/allure-report-publisher/workflows/Test/badge.svg)
8
- [![Test Report](https://img.shields.io/badge/report-allure-blue.svg)](https://storage.googleapis.com/allure-test-reports/allure-report-publisher/refs/heads/main/index.html)
9
6
  [![Maintainability](https://api.codeclimate.com/v1/badges/210eaa4f74588fb08313/maintainability)](https://codeclimate.com/github/andrcuns/allure-report-publisher/maintainability)
10
7
  [![Test Coverage](https://api.codeclimate.com/v1/badges/210eaa4f74588fb08313/test_coverage)](https://codeclimate.com/github/andrcuns/allure-report-publisher/test_coverage)
8
+ [![Known Vulnerabilities](https://snyk.io/test/github/andrcuns/allure-report-publisher/badge.svg)](https://snyk.io/test/github/andrcuns/allure-report-publisher)
9
+ [![Test Report](https://img.shields.io/badge/report-allure-blue.svg)](https://storage.googleapis.com/allure-test-reports/allure-report-publisher/refs/heads/main/index.html)
11
10
 
12
11
  Upload your report to a file storage of your choice.
13
12
 
@@ -47,7 +46,7 @@ Options:
47
46
  --results-glob=VALUE # Allure results files glob. Required: true
48
47
  --bucket=VALUE # Bucket name. Required: true
49
48
  --prefix=VALUE # Optional prefix for report path. Required: false
50
- --update-pr=VALUE # Add report url to PR via comment or description update. Required: false: (comment/description)
49
+ --update-pr=VALUE # Add report url to PR via comment or description update. Required: false: (comment/description/actions)
51
50
  --summary=VALUE # Additionally add summary table to PR comment or description. Required: false: (behaviors/suites/packages/total)
52
51
  --summary-table-type=VALUE # Summary table type. Required: false: (ascii/markdown), default: :ascii
53
52
  --[no-]collapse-summary # Create summary as a collapsable section, default: false
@@ -109,7 +108,7 @@ Following CI providers are supported:
109
108
 
110
109
  It is possible to update pull requests with urls to published reports and execution summary.
111
110
 
112
- - `--update-pr=(comment|description)`: post report urls in pr description or as a comment
111
+ - `--update-pr=(comment|description|actions)`: post report urls in pr description, as a comment or step summary for github actions
113
112
  - `--summary=(behaviors|suites|packages|total)`: add execution summary table
114
113
  - `--summary-table-type=(ascii|markdown)`: use markdown or ascii table formatting
115
114
  - `--[no-]collapse-summary`: add summary in collapsable section
@@ -148,6 +147,10 @@ Following environment variables can override default CI values:
148
147
 
149
148
  - `ALLURE_JOB_NAME`: overrides default `GITHUB_JOB` value which is used as name for report url section
150
149
 
150
+ ### allure-publish-action
151
+
152
+ [allure-publish-action](https://github.com/marketplace/actions/allure-publish-action) can be used to easily run report publishing from any github actions job.
153
+
151
154
  ## Gitlab CI
152
155
 
153
156
  Additional configuration is done via environment variables
@@ -22,7 +22,7 @@ module Publisher
22
22
  option :update_pr,
23
23
  type: :string,
24
24
  desc: "Add report url to PR via comment or description update. Required: false",
25
- values: %w[comment description]
25
+ values: %w[comment description actions]
26
26
  option :summary,
27
27
  type: :string,
28
28
  desc: "Additionally add summary table to PR comment or description. Required: false",
@@ -77,7 +77,7 @@ module Publisher
77
77
  return unless args[:update_pr] && uploader.pr?
78
78
 
79
79
  log("Adding reports urls")
80
- Spinner.spin("updating", exit_on_error: false) { uploader.add_url_to_pr }
80
+ Spinner.spin("updating", exit_on_error: false) { uploader.add_result_summary }
81
81
  end
82
82
 
83
83
  private
@@ -53,7 +53,7 @@ module Publisher
53
53
  # Add report url to pull request description
54
54
  #
55
55
  # @return [void]
56
- def add_report_url
56
+ def add_result_summary
57
57
  raise("Not a pull request, skipped!") unless pr?
58
58
  return add_comment if comment?
59
59
 
@@ -58,6 +58,8 @@ module Publisher
58
58
  #
59
59
  # @return [void]
60
60
  def update_pr_description
61
+ return File.write(step_summary_file, url_section_builder.comment_body) if actions?
62
+
61
63
  client.update_pull_request(repository, pr_id, body: url_section_builder.updated_pr_description(pr_description))
62
64
  end
63
65
 
@@ -137,6 +139,26 @@ module Publisher
137
139
 
138
140
  "[#{short_sha}](#{server_url}/#{repository}/pull/#{pr_id}/commits/#{sha})"
139
141
  end
142
+
143
+ # Use actions summary for results
144
+ #
145
+ # @return [Boolean]
146
+ def actions?
147
+ update_pr == "actions"
148
+ end
149
+
150
+ # Github actions summary file
151
+ #
152
+ # @return [String]
153
+ def step_summary_file
154
+ @step_summary_file ||= begin
155
+ summary_file = ENV["GITHUB_STEP_SUMMARY"]
156
+ raise("Environment variable GITHUB_STEP_SUMMARY is empty!") unless summary_file
157
+ raise("Step summary file '#{summary_file}' does not exist!") unless File.exist?(summary_file)
158
+
159
+ summary_file
160
+ end
161
+ end
140
162
  end
141
163
  end
142
164
  end
@@ -47,7 +47,7 @@ module Publisher
47
47
  def execute
48
48
  generate_report
49
49
  upload
50
- add_url_to_pr
50
+ add_result_summary
51
51
  end
52
52
 
53
53
  # Generate allure report
@@ -70,10 +70,10 @@ module Publisher
70
70
  # Add allure report url to pull request description
71
71
  #
72
72
  # @return [void]
73
- def add_url_to_pr
73
+ def add_result_summary
74
74
  return unless update_pr && ci_provider
75
75
 
76
- ci_provider.add_report_url
76
+ ci_provider.add_result_summary
77
77
  end
78
78
 
79
79
  # Uploaded report urls
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Publisher
4
- VERSION = "0.7.0"
4
+ VERSION = "0.10.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: allure-report-publisher
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrejs Cunskis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-05-04 00:00:00.000000000 Z
11
+ date: 2022-08-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-s3
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: 1.93.1
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: 1.114.0
22
+ version: 1.115.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: 1.93.1
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: 1.114.0
32
+ version: 1.115.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: dry-cli
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -50,6 +50,26 @@ dependencies:
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
52
  version: '0.8'
53
+ - !ruby/object:Gem::Dependency
54
+ name: faraday-retry
55
+ requirement: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: '1'
60
+ - - "<"
61
+ - !ruby/object:Gem::Version
62
+ version: '3'
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '1'
70
+ - - "<"
71
+ - !ruby/object:Gem::Version
72
+ version: '3'
53
73
  - !ruby/object:Gem::Dependency
54
74
  name: gitlab
55
75
  requirement: !ruby/object:Gem::Requirement
@@ -96,16 +116,22 @@ dependencies:
96
116
  name: octokit
97
117
  requirement: !ruby/object:Gem::Requirement
98
118
  requirements:
99
- - - "~>"
119
+ - - ">="
100
120
  - !ruby/object:Gem::Version
101
121
  version: '4.21'
122
+ - - "<"
123
+ - !ruby/object:Gem::Version
124
+ version: '6.0'
102
125
  type: :runtime
103
126
  prerelease: false
104
127
  version_requirements: !ruby/object:Gem::Requirement
105
128
  requirements:
106
- - - "~>"
129
+ - - ">="
107
130
  - !ruby/object:Gem::Version
108
131
  version: '4.21'
132
+ - - "<"
133
+ - !ruby/object:Gem::Version
134
+ version: '6.0'
109
135
  - !ruby/object:Gem::Dependency
110
136
  name: parallel
111
137
  requirement: !ruby/object:Gem::Requirement
@@ -182,28 +208,28 @@ dependencies:
182
208
  requirements:
183
209
  - - "~>"
184
210
  - !ruby/object:Gem::Version
185
- version: 2.17.0
211
+ version: 2.18.0
186
212
  type: :development
187
213
  prerelease: false
188
214
  version_requirements: !ruby/object:Gem::Requirement
189
215
  requirements:
190
216
  - - "~>"
191
217
  - !ruby/object:Gem::Version
192
- version: 2.17.0
218
+ version: 2.18.0
193
219
  - !ruby/object:Gem::Dependency
194
220
  name: climate_control
195
221
  requirement: !ruby/object:Gem::Requirement
196
222
  requirements:
197
223
  - - "~>"
198
224
  - !ruby/object:Gem::Version
199
- version: 1.0.1
225
+ version: 1.2.0
200
226
  type: :development
201
227
  prerelease: false
202
228
  version_requirements: !ruby/object:Gem::Requirement
203
229
  requirements:
204
230
  - - "~>"
205
231
  - !ruby/object:Gem::Version
206
- version: 1.0.1
232
+ version: 1.2.0
207
233
  - !ruby/object:Gem::Dependency
208
234
  name: pry-byebug
209
235
  requirement: !ruby/object:Gem::Requirement
@@ -336,14 +362,14 @@ dependencies:
336
362
  requirements:
337
363
  - - "~>"
338
364
  - !ruby/object:Gem::Version
339
- version: 0.44.3
365
+ version: 0.45.0
340
366
  type: :development
341
367
  prerelease: false
342
368
  version_requirements: !ruby/object:Gem::Requirement
343
369
  requirements:
344
370
  - - "~>"
345
371
  - !ruby/object:Gem::Version
346
- version: 0.44.3
372
+ version: 0.45.0
347
373
  description: Upload allure reports to different file storage providers
348
374
  email:
349
375
  - andrejs.cunskis@gmail.com