mandrillamelo 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.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/mandrillamelo +42 -0
  3. metadata +87 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 9f9e70b0aff976b220e27829d38e7045f1baffba
4
+ data.tar.gz: f49aecee1139a5bb3afd29d7572955b8986bb235
5
+ SHA512:
6
+ metadata.gz: 7b52d091b81d5bdee3c8211ef0273dd42b9b06dc945afe7a05cd87094625fcf7a120a0a1c99d896c13678adb47f88a5e99ae304288e394075e4a4dc5136d95f5
7
+ data.tar.gz: 4596c834b20e79af8369eab7411859a60e5e59d88cc2f0d203c6928c07b7d5234a18868f984a9b4fe28a07b91f6513cc66d163dbe74effe49004a7d301f7992b
data/mandrillamelo ADDED
@@ -0,0 +1,42 @@
1
+ #!/usr/bin/env ruby
2
+ require 'vandamme'
3
+ require 'mandrill'
4
+
5
+ changelog = open('./CHANGELOG.md').read.force_encoding(Encoding::UTF_8)
6
+ parser = Vandamme::Parser.new(changelog: changelog, version_header_exp: '(\d\.\d+\.\d+) \(\d{4}-\d{2}-\d{2}\)', format: 'markdown')
7
+
8
+ last_release = parser.to_html.keys[0]
9
+
10
+ def send_mail(release, html_changelog)
11
+ begin
12
+ to = ENV['RECIPIENTS'].split(',').map{ |mail| {'email'=>mail} }
13
+ mandrill = Mandrill::API.new(ENV['MANDRILL_KEY'])
14
+ message = {
15
+ "tags"=>["changelog"],
16
+ "to"=> to,
17
+ "track_opens"=>nil,
18
+ "headers"=>{"Reply-To"=>"dev@chorally.com"},
19
+ "view_content_link"=>nil,
20
+ "auto_text"=>nil,
21
+ "track_clicks"=>nil,
22
+ "from_name"=>"Changelog",
23
+ "subject"=>"[CHANGELOG] Chorally #{release}",
24
+ "html"=>"<h1>Chorally Changelog</h1><h2>#{release}</h2>#{html_changelog}",
25
+ "from_email"=>"no-reply@chorally.com",
26
+ "preserve_recipients"=>true,
27
+ "auto_html"=>nil,
28
+ "important"=>false}
29
+ async = false
30
+ ip_pool = "Main Pool"
31
+ result = mandrill.messages.send message, async, ip_pool #, send_at
32
+
33
+
34
+ rescue Mandrill::Error => e
35
+ # Mandrill errors are thrown as exceptions
36
+ puts "A mandrill error occurred: #{e.class} - #{e.message}"
37
+ # A mandrill error occurred: Mandrill::UnknownSubaccountError - No subaccount exists with the id 'customer-123'
38
+ raise
39
+ end
40
+ end
41
+
42
+ puts send_mail(last_release, parser.to_html[last_release])
metadata ADDED
@@ -0,0 +1,87 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mandrillamelo
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Alessio Caiazza
8
+ autorequire:
9
+ bindir: "."
10
+ cert_chain: []
11
+ date: 2016-10-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.13'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.13'
27
+ - !ruby/object:Gem::Dependency
28
+ name: vandamme
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.0.11
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.0.11
41
+ - !ruby/object:Gem::Dependency
42
+ name: mandrill-api
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.0'
55
+ description: Parse a changelog and send it via mandrill
56
+ email: alessio@chorally.com
57
+ executables:
58
+ - mandrillamelo
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - "./mandrillamelo"
63
+ homepage: http://chorally.com/
64
+ licenses:
65
+ - MIT
66
+ metadata: {}
67
+ post_install_message:
68
+ rdoc_options: []
69
+ require_paths:
70
+ - lib
71
+ required_ruby_version: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ required_rubygems_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ requirements: []
82
+ rubyforge_project:
83
+ rubygems_version: 2.4.5.1
84
+ signing_key:
85
+ specification_version: 4
86
+ summary: Changelog sender
87
+ test_files: []