Skip to content

Commit

Permalink
Merge pull request #1, v0.1.0
Browse files Browse the repository at this point in the history
Initial release
  • Loading branch information
Felixoid authored Dec 18, 2018
2 parents dfc2f73 + 7e126ac commit 4334304
Show file tree
Hide file tree
Showing 26 changed files with 1,147 additions and 33 deletions.
11 changes: 11 additions & 0 deletions .fixtures.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
fixtures:
symlinks:
clickhouse: "#{source_dir}"
forge_modules:
stdlib:
repo: 'puppetlabs/stdlib'
ref: '4.20.0'
apt: 'puppetlabs-apt'
yumrepo: 'puppetlabs-yumrepo_core'
xmlsimple: 'innogames-xmlsimple'
5 changes: 5 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*.rb eol=lf
*.erb eol=lf
*.pp eol=lf
*.sh eol=lf
*.epp eol=lf
13 changes: 13 additions & 0 deletions .pdkignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,16 @@
/convert_report.txt
/update_report.txt
.DS_Store
/appveyor.yml
/.fixtures.yml
/Gemfile
/.gitattributes
/.gitignore
/.gitlab-ci.yml
/.pdkignore
/Rakefile
/.rspec
/.rubocop.yml
/.travis.yml
/.yardopts
/spec/
1 change: 1 addition & 0 deletions .puppet-lint.rc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

24 changes: 24 additions & 0 deletions .sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,27 @@ Gemfile:
required:
':dependencies':
- gem: xml-simple
':development':
- gem: pdk
'spec/spec_helper.rb':
mock_with: ':rspec'
spec_overrides: >-
RSpec.configure do |c|
c.after(:suite) do
RSpec::Puppet::Coverage.report!(94)
end
end
.travis.yml:
user: innogames
secure: "u/ze96IcjdM627IJADJeVdNb33njyCfmmq5YnAqbL4GSRANTtmsNclZfh+JVzb3sAuRrm7VI11Ri4TlCuX4o/aSGPa7S7ROQFLHVfhWFqmS5Sa/sE3EoRdfyP90QYdaoYSiCfLPgnOhZrNpmhA+anhGvcdcZ5Zn/+IExB1r0mTaLAf2UqZrpdnNlot6zcCsH5qvGCsc0K1SWRFQMgW/7ThrPjXQoXGlJ/45ZjpDjlThu6ZHjJVSwp3d4o4lFZh/fycT0UfD0Yyd04R6pjXEeGp5txVv7lnC4zyawVVRZaWMEqorCeW/akKjVMaXlGxsRVMBpKDjhJRDOoBSpuqQWGJGB9DsqxShhkfV1gx8ofLNwOPW8to+M/Ykm4je7n/mre4B4ObPVb6aHvFIkb+Y4LMT/eLKnt03DnzWQJLTxCftFdBOozDv4p+efQp3rs8MacRLQe58uV4MCzUR72itR49IG4mNbdFJnpKcHwsvLeds+BLcnyBaHtqX7l8Iaam4KiIpWs0l1zaYa7X9SLkkisZq3VpkyQlLlVEQIFLE27aodYT0Ms9ATOZqPyIcUohx/Oe0T30foZ9+3Sb9yrteJdkf4cBbPUn2Ne6JXwefrEoozdHyi+pKcYjQy+LX0epM0hTfyGjnGupUWm2944oKwLf2YcixeNaZP6YJgSDnMeCc="
stages:
- test
- name: deploy
if: tag =~ ^v
extras:
- stage: deploy
env: CHECK='build' DEPLOY_TO_FORGE=yes
Rakefile:
default_disabled_lint_checks:
- selector_inside_resource
- relative
15 changes: 11 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
---
sudo: false
dist: trusty
language: ruby
cache: bundler
Expand All @@ -13,10 +12,15 @@ script:
- 'bundle exec rake $CHECK'
bundler_args: --without system_tests
rvm:
- 2.5.0
- 2.5.1
env:
global:
- BEAKER_PUPPET_COLLECTION=puppet6 PUPPET_GEM_VERSION="~> 6.0"
stages:
- test
-
if: tag =~ ^v
name: deploy
matrix:
fast_finish: true
include:
Expand All @@ -30,6 +34,9 @@ matrix:
-
env: PUPPET_GEM_VERSION="~> 4.0" CHECK=parallel_spec
rvm: 2.1.9
-
env: CHECK='build' DEPLOY_TO_FORGE=yes
stage: deploy
branches:
only:
- master
Expand All @@ -38,9 +45,9 @@ notifications:
email: false
deploy:
provider: puppetforge
user: puppet
user: innogames
password:
secure: ""
secure: "u/ze96IcjdM627IJADJeVdNb33njyCfmmq5YnAqbL4GSRANTtmsNclZfh+JVzb3sAuRrm7VI11Ri4TlCuX4o/aSGPa7S7ROQFLHVfhWFqmS5Sa/sE3EoRdfyP90QYdaoYSiCfLPgnOhZrNpmhA+anhGvcdcZ5Zn/+IExB1r0mTaLAf2UqZrpdnNlot6zcCsH5qvGCsc0K1SWRFQMgW/7ThrPjXQoXGlJ/45ZjpDjlThu6ZHjJVSwp3d4o4lFZh/fycT0UfD0Yyd04R6pjXEeGp5txVv7lnC4zyawVVRZaWMEqorCeW/akKjVMaXlGxsRVMBpKDjhJRDOoBSpuqQWGJGB9DsqxShhkfV1gx8ofLNwOPW8to+M/Ykm4je7n/mre4B4ObPVb6aHvFIkb+Y4LMT/eLKnt03DnzWQJLTxCftFdBOozDv4p+efQp3rs8MacRLQe58uV4MCzUR72itR49IG4mNbdFJnpKcHwsvLeds+BLcnyBaHtqX7l8Iaam4KiIpWs0l1zaYa7X9SLkkisZq3VpkyQlLlVEQIFLE27aodYT0Ms9ATOZqPyIcUohx/Oe0T30foZ9+3Sb9yrteJdkf4cBbPUn2Ne6JXwefrEoozdHyi+pKcYjQy+LX0epM0hTfyGjnGupUWm2944oKwLf2YcixeNaZP6YJgSDnMeCc="
on:
tags: true
all_branches: true
Expand Down
1 change: 1 addition & 0 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ group :development do
gem "puppet-module-posix-dev-r#{minor_version}", require: false, platforms: [:ruby]
gem "puppet-module-win-default-r#{minor_version}", require: false, platforms: [:mswin, :mingw, :x64_mingw]
gem "puppet-module-win-dev-r#{minor_version}", require: false, platforms: [:mswin, :mingw, :x64_mingw]
gem "pdk", require: false
end
group :dependencies do
gem "xml-simple", require: false
Expand Down
37 changes: 37 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
[![Build Status](https://travis-ci.org/innogames/puppet-clickhouse.svg?branch=master)](https://travis-ci.org/innogames/puppet-clickhouse)
# Description
This module provides an easy way to install and configure ClickHouse DBMS. The easiest way to do the magic is:
```puppet
class { 'clickhouse':
server => true,
manage_repo => true,
}
```

# Setup
The module depends on `xml-simple` gem. It allows to use `clickhouse::server::config` and `clickhouse::client::config` to manage configuration with puppet Hash. To install it execute the next command on your puppet server:
```bash
sudo puppetserver gem install xml-simple
```

# Usage
See the [examples](./REFERENCE.md#examples)

# Reference
**Classes**
* [`clickhouse`](./REFERENCE.md#clickhouse): this class allows you to install ClickHouse DB's repo, client and server
* [`clickhouse::client`](./REFERENCE.md#clickhouseclient): ClickHouse client class
* [`clickhouse::repo`](./REFERENCE.md#clickhouserepo): installs repository with ClickHouse DBMS
* [`clickhouse::server`](./REFERENCE.md#clickhouseserver): ClickHouse server class

**Defined types**
* [`clickhouse::client::config`](./REFERENCE.md#clickhouseclientconfig): generates xml config from hash via ruby xml-simple
* [`clickhouse::server::config`](./REFERENCE.md#clickhouseserverconfig): generates xml config from hash via ruby xml-simple

# Limitations
ClickHouse does work only on UNIX-like OS. Theoretically possible to use this module on FreeBSD and Mac OS but should be checked additionally. Feel free to test and open an issue/PR.

The current state of module was tested with Centos 7, Ubuntu 18.04 and Debian 9.

# Development
Fork this project, develop, make pull request and wait for corresponding auto tests will be done.
Loading

0 comments on commit 4334304

Please sign in to comment.