Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update default version to 2.4.1 with scala 2.12 #291

Merged
merged 1 commit into from Mar 25, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
39 changes: 36 additions & 3 deletions .travis.yml
Expand Up @@ -10,9 +10,6 @@ script:
matrix:
fast_finish: true
include:
- rvm: 2.1.9
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 4.0" CHECK=test PARALLEL_TEST_PROCESSORS=12
- rvm: 2.4.4
bundler_args: --without system_tests development release
env: PUPPET_VERSION="~> 5.0" CHECK=test
Expand All @@ -31,6 +28,12 @@ matrix:
env: PUPPET_INSTALL_TYPE=agent BEAKER_PUPPET_COLLECTION=puppet5 BEAKER_debug=true BEAKER_setfile=ubuntu1604-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_PUPPET_COLLECTION=puppet5 BEAKER_debug=true BEAKER_setfile=centos6-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
Expand All @@ -49,6 +52,36 @@ matrix:
env: PUPPET_INSTALL_TYPE=agent BEAKER_PUPPET_COLLECTION=puppet5 BEAKER_debug=true BEAKER_setfile=debian9-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_PUPPET_COLLECTION=puppet6 BEAKER_debug=true BEAKER_setfile=ubuntu1604-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_PUPPET_COLLECTION=puppet6 BEAKER_debug=true BEAKER_setfile=centos6-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_PUPPET_COLLECTION=puppet6 BEAKER_debug=true BEAKER_setfile=centos7-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_PUPPET_COLLECTION=puppet6 BEAKER_debug=true BEAKER_setfile=debian8-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
- rvm: 2.5.1
bundler_args: --without development release
dist: trusty
env: PUPPET_INSTALL_TYPE=agent BEAKER_PUPPET_COLLECTION=puppet6 BEAKER_debug=true BEAKER_setfile=debian9-64{hypervisor=docker} CHECK=beaker
services: docker
sudo: required
branches:
only:
- master
Expand Down
29 changes: 15 additions & 14 deletions Gemfile
Expand Up @@ -11,9 +11,8 @@ def location_for(place, fake_version = nil)
end

group :test do
gem 'puppetlabs_spec_helper', '~> 2.6', :require => false
gem 'rspec-puppet', '~> 2.5', :require => false
gem 'rspec-puppet-facts', :require => false
gem 'puppetlabs_spec_helper', '>= 2.14.0', :require => false
gem 'rspec-puppet-facts', '>= 1.9.5', :require => false
gem 'rspec-puppet-utils', :require => false
gem 'puppet-lint-leading_zero-check', :require => false
gem 'puppet-lint-trailing_comma-check', :require => false
Expand All @@ -23,12 +22,11 @@ group :test do
gem 'puppet-lint-variable_contains_upcase', :require => false
gem 'metadata-json-lint', :require => false
gem 'redcarpet', :require => false
gem 'rubocop', '~> 0.49.1', :require => false if RUBY_VERSION >= '2.3.0'
gem 'rubocop-rspec', '~> 1.15.0', :require => false if RUBY_VERSION >= '2.3.0'
gem 'rubocop', '~> 0.49.1', :require => false
gem 'rubocop-rspec', '~> 1.15.0', :require => false
gem 'mocha', '~> 1.4.0', :require => false
gem 'coveralls', :require => false
gem 'simplecov-console', :require => false
gem 'rack', '~> 1.0', :require => false if RUBY_VERSION < '2.2.2'
gem 'parallel_tests', :require => false
end

Expand All @@ -44,27 +42,30 @@ group :system_tests do
if beaker_version = ENV['BEAKER_VERSION']
gem 'beaker', *location_for(beaker_version)
else
gem 'beaker', '>= 3.9.0', :require => false
gem 'beaker', '>= 4.2.0', :require => false
end
if beaker_rspec_version = ENV['BEAKER_RSPEC_VERSION']
gem 'beaker-rspec', *location_for(beaker_rspec_version)
else
gem 'beaker-rspec', :require => false
end
gem 'serverspec', :require => false
gem 'beaker-hostgenerator', '>= 1.1.10', :require => false
gem 'beaker-hostgenerator', '>= 1.1.22', :require => false
gem 'beaker-docker', :require => false
gem 'beaker-puppet', :require => false
gem 'beaker-puppet_install_helper', :require => false
gem 'beaker-module_install_helper', :require => false
gem 'rbnacl', '~> 4', :require => false if RUBY_VERSION >= '2.2.6'
gem 'rbnacl-libsodium', :require => false if RUBY_VERSION >= '2.2.6'
gem 'rbnacl', '>= 4', :require => false
gem 'rbnacl-libsodium', :require => false
gem 'bcrypt_pbkdf', :require => false
gem 'ed25519', :require => false
end

group :release do
gem 'github_changelog_generator', :require => false, :git => 'https://github.com/skywinder/github-changelog-generator' if RUBY_VERSION >= '2.2.2'
gem 'github_changelog_generator', :require => false, :git => 'https://github.com/voxpupuli/github-changelog-generator', :branch => 'voxpupuli_essential_fixes'
gem 'puppet-blacksmith', :require => false
gem 'voxpupuli-release', :require => false, :git => 'https://github.com/voxpupuli/voxpupuli-release-gem'
gem 'puppet-strings', '>= 1.0', :require => false
gem 'voxpupuli-release', :require => false
gem 'puppet-strings', '>= 2.2', :require => false
end


Expand All @@ -75,7 +76,7 @@ else
gem 'facter', :require => false, :groups => [:test]
end

ENV['PUPPET_VERSION'].nil? ? puppetversion = '~> 5.0' : puppetversion = ENV['PUPPET_VERSION'].to_s
ENV['PUPPET_VERSION'].nil? ? puppetversion = '~> 6.0' : puppetversion = ENV['PUPPET_VERSION'].to_s
gem 'puppet', puppetversion, :require => false, :groups => [:test]

# vim: syntax=ruby
9 changes: 5 additions & 4 deletions README.md
Expand Up @@ -343,12 +343,13 @@ This module only supports Kafka >= 0.9.0.0.

This module is tested on the following platforms:

* CentOS 5
* CentOS 6
* Ubuntu 12.04
* Ubuntu 14.04
* CentOS 7
* Ubuntu 16.04
* Debian 8
* Debian 9

It is tested with the OSS version of Puppet (>= 4.7.0) only.
It is tested with the OSS version of Puppet (>= 5.5) only.

## Development

Expand Down
13 changes: 5 additions & 8 deletions manifests/params.pp
Expand Up @@ -14,8 +14,8 @@
unless $facts['os']['family'] =~ /(RedHat|Debian)/ {
warning("${facts['os']['family']} is not supported")
}
$version = '0.11.0.3'
$scala_version = '2.11'
$version = '2.4.1'
$scala_version = '2.12'
$install_dir = "/opt/kafka-${scala_version}-${version}"
$config_dir = '/opt/kafka/config'
$bin_dir = '/opt/kafka/bin'
Expand Down Expand Up @@ -61,16 +61,13 @@
$broker_opts = ''

$mirror_heap_opts = '-Xmx256M'
$mirror_jmx_opts = '-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=9991'
$mirror_jmx_opts = '-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=9991'
$mirror_log4j_opts = $broker_log4j_opts

$producer_jmx_opts = '-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=9992'
$producer_jmx_opts = '-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=9992'
$producer_log4j_opts = $broker_log4j_opts

$consumer_jmx_opts = '-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=9993'
$consumer_jmx_opts = '-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=9993'
$consumer_log4j_opts = $broker_log4j_opts

}
2 changes: 1 addition & 1 deletion metadata.json
Expand Up @@ -61,7 +61,7 @@
"requirements": [
{
"name": "puppet",
"version_requirement": ">= 4.10.0 < 6.0.0"
"version_requirement": ">= 4.10.0 < 7.0.0"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this should be bumped to 5.5.whatever now?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the sake of a separate changelog entry, I was going to do this in a separate PR later.

}
],
"tags": [
Expand Down
41 changes: 41 additions & 0 deletions spec/acceptance/01_zookeeper_spec.rb
@@ -0,0 +1,41 @@
require 'spec_helper_acceptance'

describe 'zookeeper prereq' do
zookeeper = <<-EOS
if $::osfamily == 'RedHat' {
class { 'java' :
package => 'java-1.8.0-openjdk-devel',
}

exec { 'create pid dir':
command => '/bin/mkdir -p /var/run/',
creates => '/var/run/',
}

file { '/var/run/zookeeper/':
ensure => directory,
owner => 'zookeeper',
group => 'zookeeper',
}

$zookeeper_service_provider = $facts['os']['release']['major'] ? {
'6' => 'redhat',
'7' => 'systemd',
}

class { 'zookeeper':
install_method => 'archive',
archive_version => '3.6.0',
service_provider => $zookeeper_service_provider,
manage_service_file => true,
}
} else {
include zookeeper
}
EOS

it 'installs zookeeper with no errors' do
apply_manifest(zookeeper, catch_failures: true)
apply_manifest(zookeeper, catch_changes: true)
end
end
50 changes: 5 additions & 45 deletions spec/acceptance/broker_spec.rb
@@ -1,35 +1,7 @@
require 'spec_helper_acceptance'

describe 'kafka::broker' do
zookeeper = <<-EOS
if $::osfamily == 'RedHat' {
class { 'java': }

exec { 'create pid dir':
command => '/bin/mkdir -p /var/run/',
creates => '/var/run/',
}

file { '/var/run/zookeeper/':
ensure => directory,
owner => 'zookeeper',
group => 'zookeeper',
}

class { 'zookeeper':
repo => 'cloudera',
cdhver => '5',
initialize_datastore => true,
}

} else {
class { 'zookeeper': }
}
EOS

it 'works with no errors' do
apply_manifest(zookeeper, catch_failures: true)

pp = <<-EOS
class { 'kafka::broker':
config => {
Expand All @@ -49,8 +21,6 @@ class { 'kafka::broker':
describe 'kafka::broker::install' do
context 'with default parameters' do
it 'works with no errors' do
apply_manifest(zookeeper, catch_failures: true)

pp = <<-EOS
class { 'kafka::broker':
config => {
Expand Down Expand Up @@ -78,14 +48,14 @@ class { 'kafka::broker':
it { is_expected.to be_grouped_into 'kafka' }
end

describe file('/opt/kafka-2.11-0.11.0.3') do
describe file('/opt/kafka-2.12-2.4.1') do
it { is_expected.to be_directory }
it { is_expected.to be_owned_by 'kafka' }
it { is_expected.to be_grouped_into 'kafka' }
end

describe file('/opt/kafka') do
it { is_expected.to be_linked_to('/opt/kafka-2.11-0.11.0.3') }
it { is_expected.to be_linked_to('/opt/kafka-2.12-2.4.1') }
end

describe file('/opt/kafka/config') do
Expand All @@ -105,8 +75,6 @@ class { 'kafka::broker':
describe 'kafka::broker::config' do
context 'with default parameters' do
it 'works with no errors' do
apply_manifest(zookeeper, catch_failures: true)

pp = <<-EOS
class { 'kafka::broker':
config => {
Expand All @@ -128,8 +96,6 @@ class { 'kafka::broker':

context 'with custom config dir' do
it 'works with no errors' do
apply_manifest(zookeeper, catch_failures: true)

pp = <<-EOS
class { 'kafka::broker':
config => {
Expand All @@ -152,11 +118,9 @@ class { 'kafka::broker':

context 'with specific version' do
it 'works with no errors' do
apply_manifest(zookeeper, catch_failures: true)

pp = <<-EOS
class { 'kafka::broker':
version => '1.1.0',
version => '2.4.0',
config => {
'zookeeper.connect' => 'localhost:2181',
},
Expand All @@ -177,8 +141,6 @@ class { 'kafka::broker':
describe 'kafka::broker::service' do
context 'with default parameters' do
it 'works with no errors' do
apply_manifest(zookeeper, catch_failures: true)

pp = <<-EOS
class { 'kafka::broker':
config => {
Expand Down Expand Up @@ -212,8 +174,6 @@ class { 'kafka::broker':
describe 'kafka::broker::service' do
context 'with log4j/jmx parameters' do
it 'works with no errors' do
apply_manifest(zookeeper, catch_failures: true)

pp = <<-EOS
exec { 'create log dir':
command => '/bin/mkdir -p /some/path/to/logs',
Expand All @@ -239,9 +199,9 @@ class { 'kafka::broker':
it { is_expected.to be_file }
it { is_expected.to be_owned_by 'root' }
it { is_expected.to be_grouped_into 'root' }
it { is_expected.to contain 'export KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=9999"' }
it { is_expected.to contain 'export KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote"' }
it { is_expected.to contain 'export KAFKA_HEAP_OPTS="-Xmx512M -Xmx512M"' }
it { is_expected.to contain 'export KAFKA_LOG4J_OPTS="-Dlog4j.configuration=file:$base_dir/../config/log4j.properties"' }
it { is_expected.to contain 'export KAFKA_LOG4J_OPTS="-Dlog4j.configuration=file:/tmp/log4j.properties"' }
end

describe file('/etc/systemd/system/kafka.service'), if: (fact('operatingsystemmajrelease') == '7' && fact('osfamily') == 'RedHat') do
Expand Down