fastlane-plugin-gmail_notify 0.1.1 → 0.1.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a65c983d4b84841241522deef085b6e5be94d8c66378b799de2adf71db1a7d8f
4
- data.tar.gz: c810ff562a4206036e8489f73aa7dfce69e6c9108e498d03df3802a6b37a2aa4
3
+ metadata.gz: ad31026dd478b6c8d648ecbecc922ffc5d0d63833fd3a1a08cfd1ed8f3102cb3
4
+ data.tar.gz: 6f2ecf816e9a80246cc199fd5ee10ee9518385e4bcd7abf041239748a189047a
5
5
  SHA512:
6
- metadata.gz: 90bd144efbe4052a6c87c9689ec4e66f628f2a2dac68746634e4dae414ef68c8077c0045fb33d4012256047499ed098b688e60803904e41134673dd4db8c3f55
7
- data.tar.gz: 006cbd2d1d56671fdda86f21b4db19c1043ab4ac901d72df76dce69afccbddfa37d3417a28c61287539550dfbdc068c085f4c28556b70d910960dac737f9b861
6
+ metadata.gz: c74c93a9bfc88377e0af44f23a14908c783e176d6cd769fe665fac6e98f1d06a3626980bcddd933e1b975f11cea5172ef3b66a0fefcd2c3e965ed2c026c86b30
7
+ data.tar.gz: 4a02e606937aea78192fb2d371c3a14d77c1a621ca1399ad126e569561db860ce9e26e6e09f1ef64226487206cf5973f53b0bce7cef5727a9ce1733d064414ed
data/README.md CHANGED
@@ -14,13 +14,40 @@ fastlane add_plugin gmail_notify
14
14
 
15
15
  Sends a mail using SMTP
16
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.
17
+ `gmail_notify` allows you to send a gmail using smtp so that you can notify the team about a new release.
18
+
19
+ ## Usage
20
+
21
+ To get started you must have a gmail and [app password](https://knowledge.workspace.google.com/kb/how-to-generate-an-app-passwords-000009237) generated.
22
+
23
+ ```ruby
24
+ gmail_notify(
25
+ smtp_email: "<sender email>",
26
+ smtp_password: "<app password>",
27
+ recipients: "<recipients comma separated>",
28
+ cc: "<cc>",
29
+ subject: "<gmail subject>",
30
+ template_file: "<path to mail template>",
31
+ placeholders: {
32
+ var1: "world"
33
+ }
34
+ )
35
+ ```
36
+
37
+ The mail body is constructed using a [html template](template.html) file. The value for variables in the template file can be provided in the placeholder hash.
18
38
 
19
- ## Example
39
+ ### Parameters
20
40
 
21
- Check out the [example `Fastfile`](fastlane/Fastfile) to see how to use this plugin. Try it by cloning the repo, running `fastlane install_plugins` and `bundle exec fastlane test`.
41
+ | Key | Description |
42
+ |-----------------|--------------------|
43
+ | `smtp_email` | Email account for smtp authentication (Sender's email) |
44
+ | `smtp_password` | Password for smtp authentication |
45
+ | `recipients` | Comma separated list of recipients |
46
+ | `cc` | Comma separated list of cc |
47
+ | `subject` | Email subject |
48
+ | `template_file` | Path to template file |
49
+ | `placeholders` | Hash that contains value of variables in the template |
22
50
 
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
51
 
25
52
  ## Run tests for this plugin
26
53
 
@@ -13,7 +13,10 @@ module Fastlane
13
13
 
14
14
  body = ERB.new(File.read(params[:template_file]), trim_mode: nil).result_with_hash(params[:placeholders])
15
15
 
16
- Pony.mail({
16
+ begin
17
+ retries ||= 0
18
+
19
+ Pony.mail({
17
20
  to: params[:recipients],
18
21
  cc: params[:cc],
19
22
  subject: params[:subject],
@@ -24,12 +27,21 @@ module Fastlane
24
27
  address: "smtp.gmail.com",
25
28
  port: "587",
26
29
  enable_starttls_auto: true,
27
- user_name: params[:sender_email],
28
- password: params[:sender_password],
30
+ user_name: params[:smtp_email],
31
+ password: params[:smtp_password],
29
32
  authentication: :plain, # :plain, :login, :cram_md5, no auth by default
30
33
  domain: "localhost.localdomain" # the HELO domain provided by the client to the server
31
34
  }
32
35
  })
36
+ rescue Net::ReadTimeout
37
+ if (retries += 1) < 5
38
+ puts("retrying ##{retries}")
39
+ sleep(5)
40
+ retry
41
+ else
42
+ raise
43
+ end
44
+ end
33
45
  end
34
46
 
35
47
  def self.test(params)
@@ -59,12 +71,12 @@ module Fastlane
59
71
 
60
72
  def self.available_options
61
73
  [
62
- FastlaneCore::ConfigItem.new(key: :sender_email,
74
+ FastlaneCore::ConfigItem.new(key: :smtp_email,
63
75
  env_name: "GMAIL_NOTIFY_SENDER_EMAIL",
64
76
  description: "Gmail account to login with",
65
77
  optional: false,
66
78
  type: String),
67
- FastlaneCore::ConfigItem.new(key: :sender_password,
79
+ FastlaneCore::ConfigItem.new(key: :smtp_password,
68
80
  env_name: "GMAIL_NOTIFY_SENDER_PASSWORD",
69
81
  description: "Password of Gmail account to login with",
70
82
  optional: false,
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module GmailNotify
3
- VERSION = "0.1.1"
3
+ VERSION = "0.1.3"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-gmail_notify
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Antony Leons
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-14 00:00:00.000000000 Z
11
+ date: 2023-09-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pony