Skip to content

Commit

Permalink
Merge pull request #172 from EncoreTechnologies/master
Browse files Browse the repository at this point in the history
Major Update to Work With 2.3.1 (latest)
  • Loading branch information
nmaludy committed Aug 14, 2017
2 parents ca41317 + 9b8aa36 commit 689735a
Show file tree
Hide file tree
Showing 60 changed files with 1,852 additions and 1,465 deletions.
43 changes: 37 additions & 6 deletions .travis.yml
Expand Up @@ -4,16 +4,47 @@ branches:
- gh-pages
sudo: false
language: ruby
script: "script/cibuild"
install: "script/ci_install.sh"
script: "script/ci_build.sh"
bundler_args: --without rake
matrix:
fast_finish: true
include:
- rvm: 1.9.3
env: PUPPET_VERSION="~> 3.0"
- rvm: 1.8.7
env:
- BUILD_NAME="RHEL 6"
- PUPPET_VERSION="~> 3.0"
- GEMFILE_LOCK="Gemfile.lock.3.8.7.ruby1.8.7"
- rvm: 2.0.0
env: PUPPET_VERSION="~> 3.0"
- rvm: 2.1.0
env: PUPPET_VERSION="~> 3.0"
env:
- BUILD_NAME="RHEL 7"
- PUPPET_VERSION="~> 3.0"
- GEMFILE_LOCK="Gemfile.lock.3.8.7.ruby2.0.0"
- rvm: 1.9.3
env:
- BUILD_NAME="Ubuntu 14"
- PUPPET_VERSION="~> 3.0"
- GEMFILE_LOCK="Gemfile.lock.3.8.7.ruby1.9.3"
# Can't run our unittests against default puppet version on Ubuntu 16
# because it ships with a brand new version of Ruby (2.3.x) and an old
# version of puppet (3.8.5) that is not compatible with new versions
# of Ruby that are needed for the unit tests. This is only a unit testing
# deficiency, the runtime component of 3.8.5 works just fine with ruby 2.3
# for using this module.
- rvm: 2.3.1
env:
- BUILD_NAME="Ubuntu 16"
- PUPPET_VERSION="~> 4.0"
- GEMFILE_LOCK="Gemfile.lock.4.10.5.ruby2.3.1"
- rvm: 2.1.10
env:
- BUILD_NAME="Puppet 4 (generic)"
- PUPPET_VERSION="~> 4.0"
- GEMFILE_LOCK="Gemfile.lock.4.10"
- rvm: 2.4.1
env:
- BUILD_NAME="Puppet 5 (generic)"
- PUPPET_VERSION="~> 5.0"
- GEMFILE_LOCK="Gemfile.lock.5.0"
notifications:
email: false
153 changes: 153 additions & 0 deletions CHANGELOG.md
@@ -1,5 +1,158 @@
# Changelog

## 1.0.0-beta (Aug 14, 2017)

#### files/repo/nodesource/NODESOURCE-GPG-SIGNING-KEY-EL

- Removed unused file after cleaning up nodejs profiel (Enhancement)

#### manifests/auth/standalone.pp

- Did not have access to the `::st2` variables (Bugfix).
- Had a dependency issue where (on some platforms) allowed the `htpasswd` file to be created after the st2 services were starting (Bugfix)
- Created an unnecessary "test user" (Bugfix)

#### manifests/auth_user.pp

- Dependency issues here where the `htpasswd` file was sometimes trying to be created before the `/etc/st2` directory was created, and other times it was trying to be created after the st2 services had started. (Bugfix)

#### manifests/init.pp

- Needed extra variables for SSL setup in st2web. (Feature)
- Needed extra variables for proper database setup (mongodb and postgres) (Enhancement)
- Needed path to the st2auth logging config file (Enhancement)
- Needed variables about the datastore encryption keys (Feature)

#### manifests/kv.pp

- Some puppet lint problems (notice the whitespace fix and reordering of class params) (Bugfix)
- Dependency issues where the tag being used for the `Service` resource was incorrect (Bugfix)
- Dependency issues where sometimes st2 hadn't been reloaded so the k/v loads would fail (Bugfix)

#### manifests/notices.pp

- Puppet lint fixes for using double quotes without variable interpolation in the string. (Bugfix)

#### manifests/pack.pp

- Unit tests revealed that many of the dependencies of this resource were not declared (group and directories) (Bugfix)
- Pointing at old location for config directory (Bugfix)
- Needed lots of dependency work to ensure resources were created in the proper order (Bugfix)

#### manifests/params.pp

- Broke down the old `st2_server_packages` variable into various components to align more with what ansible-st2 and the "one liner" shell scripts do in their functions. (Enhancement)
- Removed some unused code in the "init provider" section (Enhancement)
- Broke down the old `st2_services` into its components similar to `st2_server_packages`. FYI: The mistral services are handled by the mistral install instead of being grouped together into `st2 server`. (Enhancement)
- Added lots of new parameters for services that were not configured in the past like (nginx, st2web, mongodb, rabbitmq) (Feature)

#### manifests/profile/client.pp

- Removed stale comment (Enhancement)

#### manifests/profile/fullinstall.pp

- Mainly dependency cleanup here. (Bugfix)
- Ensure that packages are installed in the correct order and that there are meaningful anchors in place in case others need to execute tasks at certain points during the install. (Bugfix)

#### manifests/profile/mistral.pp

- This was completely re-written (Enhancement)
- Previously it was performing a lot of tasks manually that i believe st2mistral package now handles for us (Enhancement)

#### manifests/profile/mongodb.pp

- Completely re-written (Enhancement)
- It now handles auth (did not previously) (Enhancement)
- It also deals with several deficiencies in the puppetlabs-mongodb module. This module has lots of annoying bugs. I'm not at the point where i want to code up a new module myself yet, but we do have to work around several quirks for this to even work (sorry!). (Bugfix)

#### manifests/profile/nginx.pp

- New profile that installs and configures nginx (does not setup st2web config, that is left to the st2web profile) (Feature)
- Utilizes the nginx puppet module to do all of the heavy lifting here (Feature)

#### manifests/profile/nodejs.pp

- Completely re-written (Enhancement)
- Utilizes the nodejs puppet module to do all of the heavy lifting instead of doing it ourselves (Enhancement)
- Works around a small quirk of the module on RedHat distributions (BugFix)

#### manifests/profile/postgresql.pp

- Expanded this to properly configure postgres for listening according to the standard installs (shell scripts and ansible-st2) (Enhancement)
- Also ensured that 9.4 is installed on RHEL6 (Bugfix)

#### manifests/profile/rabbitmq.pp

- Greatly simplified by allowing the rabbitmq module to do all of the heavy lifting for us (Enhancement)

#### manifests/profile/repos.pp

- Fixed a bug where we were pointing to an all lowercase URL which caused st2 package installs to fail (Bugfix)

#### manifests/profile/selinux.pp

- Added a class that configures SELinux on RHEL hosts (Feature)

#### manifests/profile/server.pp

- Small changes here related to adding database auth capability (Enhancement)
- Added stanley user creation (Feature)
- Added datastore crypto creation (Feature)
- Added additional dependency management (Bugfix)

#### manifests/profile/web.pp

- Completely re-written (Enhancement)
- I don't believe that st2web was complete when this module was last touched, so this class got a complete overhaul (Enhancement)

#### manifests/rbac.pp

- Fixed a few puppet lint errors (Bugfix)
- Fixed an error where the RBAC rules were executed every puppet run (Bugfix)

#### manifests/server/datastore_keys.pp

- New manifest that manages the datastore crypto keys (Feature)

#### manifests/stanley.pp

- Removed unnecessary warning about ssh keys (Bugfix)

#### manifests/user.pp

- Fixed a couple small bugs related to a legacy "robots" group. (Bugfix)
- This got a pretty big overhaul with regards to SSH key creation. Now, if SSH keys are not present new ones will be created (just like the shell scripts and ansible-st2) (Bugfix)

#### metadata.json

- Reformatted the whole file to standard JSON formatting scheme (Enhancement)
- Updated module dependencies (some were missing) (Bugfix)
- Added supported OS block (Enhancement)
- Added supported puppet versions block (Enhancement)

#### spec/*

- Lots of small fixes here related to running the tests on various versions of ruby. (Bugfix)
- Finally found a happy medium where all tests now pass (Bugfix)
- Removed tests for the "st2::package::debian" type that no longer exists (Bugfix)

#### templates/*

- Removed the following unused templates due to code cleanup and modernizaiton (Enhancement)
- templates/etc/init.d/mistral-api.erb
- templates/etc/init.d/mistral.erb
- templates/etc/init/mistral-api.conf.erb
- templates/etc/init/mistral.conf.erb
- templates/etc/init/st2actionrunner-worker.conf.erb
- templates/etc/systemd/system/mistral-api.service.erb
- templates/etc/systemd/system/mistral.service.erb
- templates/etc/systemd/system/st2actionrunner.service.erb
- templates/etc/systemd/system/st2service_multi.service.erb
- templates/etc/systemd/system/st2service_single.service.erb
- templates/opt/st2web/config.js.erb


## 0.14.1 (Jan 15, 2015)
* Fix typo - st2garbagecollector is part of st2reactor package.

Expand Down
8 changes: 5 additions & 3 deletions Gemfile
@@ -1,6 +1,8 @@
source 'https://rubygems.org'

if puppetversion = ENV['PUPPET_VERSION']
puppetversion = ENV['PUPPET_VERSION']

if puppetversion
gem 'puppet', puppetversion, :require => false
else
gem 'puppet', :require => false
Expand All @@ -10,9 +12,9 @@ gem 'puppetlabs_spec_helper', '>= 0.1.0'
gem 'puppet-lint', '>= 0.3.2'
gem 'facter', '>= 1.7.0'

gem 'coveralls', require: false
gem 'coveralls', :require => false

gem 'puppet-blacksmith', '>= 3.3.1'
gem 'puppet-blacksmith', '>= 3.1.1'

### ADD USER GEMS HERE ###

86 changes: 0 additions & 86 deletions Gemfile.lock

This file was deleted.

76 changes: 76 additions & 0 deletions Gemfile.lock.3.8.7.ruby1.8.7
@@ -0,0 +1,76 @@
GEM
remote: https://rubygems.org/
specs:
coveralls (0.8.21)
json (>= 1.8, < 3)
simplecov (~> 0.14.1)
term-ansicolor (~> 1.3)
thor (~> 0.19.4)
tins (~> 1.6)
diff-lcs (1.3)
docile (1.1.5)
facter (2.5.0)
hiera (1.3.4)
json_pure
json (1.8.6)
json_pure (1.8.3)
metaclass (0.0.4)
mime-types (1.25.1)
mocha (1.2.1)
metaclass (~> 0.0.1)
puppet (3.8.7)
facter (> 1.6, < 3)
hiera (~> 1.0)
json_pure
puppet-blacksmith (3.1.1)
puppet (>= 2.7.16)
rest-client
puppet-lint (2.3.0)
puppet-syntax (2.4.1)
rake
puppetlabs_spec_helper (1.2.2)
mocha (~> 1.0)
puppet-lint (~> 2.0)
puppet-syntax (~> 2.0)
rspec-puppet (~> 2.0)
rake (10.5.0)
rest-client (1.6.9)
mime-types (~> 1.16)
rspec (3.1.0)
rspec-core (~> 3.1.0)
rspec-expectations (~> 3.1.0)
rspec-mocks (~> 3.1.0)
rspec-core (3.1.0)
rspec-support (~> 3.1.0)
rspec-expectations (3.1.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.1.0)
rspec-mocks (3.1.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.1.0)
rspec-puppet (2.6.4)
rspec
rspec-support (3.1.0)
simplecov (0.14.1)
docile (~> 1.1.0)
json (>= 1.8, < 3)
simplecov-html (~> 0.10.0)
simplecov-html (0.10.1)
term-ansicolor (1.3.2)
tins (~> 1.0)
thor (0.19.4)
tins (1.6.0)

PLATFORMS
ruby

DEPENDENCIES
coveralls
facter (>= 1.7.0)
puppet (= 3.8.7)
puppet-blacksmith (>= 3.3.1)
puppet-lint (>= 0.3.2)
puppetlabs_spec_helper (>= 0.1.0)

BUNDLED WITH
1.15.3

0 comments on commit 689735a

Please sign in to comment.