diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index caeb880..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,6 +0,0 @@
-.vagrant
-.DS_Store
-.idea
-*.iml
-Gemfile.lock
-.bundled_gems/
diff --git a/Gemfile b/Gemfile
deleted file mode 100644
index 019213a..0000000
--- a/Gemfile
+++ /dev/null
@@ -1,15 +0,0 @@
-source 'https://rubygems.org'
-
-if File.exists?('/home/zuul/src/git.openstack.org/openstack-infra/puppet-openstack_infra_spec_helper')
- gem_checkout_method = {:path => '/home/zuul/src/git.openstack.org/openstack-infra/puppet-openstack_infra_spec_helper'}
-else
- gem_checkout_method = {:git => 'https://git.openstack.org/openstack-infra/puppet-openstack_infra_spec_helper'}
-end
-gem_checkout_method[:require] = false
-
-group :development, :test, :system_tests do
- gem 'puppet-openstack_infra_spec_helper',
- gem_checkout_method
-end
-
-# vim:ft=ruby
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index d645695..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
diff --git a/Modulefile b/Modulefile
deleted file mode 100644
index 79aeeea..0000000
--- a/Modulefile
+++ /dev/null
@@ -1,14 +0,0 @@
-name 'openstack-refstack'
-version '0.0.1'
-source 'https://git.openstack.org/openstack-infra/puppet-refstack.git'
-author 'openstackci'
-license 'Apache 2.0'
-summary 'Puppet module for Refstack'
-description 'This module installs and maintains the OpenStack RefStack service.'
-project_page 'https://git.openstack.org/cgit/openstack-infra/puppet-refstack'
-
-## Add dependencies, if any:
-dependency 'puppetlabs/stdlib', '= 3.2.0'
-dependency 'puppetlabs/mysql', '= 0.6.1'
-dependency 'puppetlabs/apache', '= 0.0.4'
-dependency 'openstackci/vcsrepo', '= 0.0.8'
diff --git a/README.md b/README.md
index 39b460f..ec889a9 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,9 @@
-# OpenStack RefStack Module
+This project is no longer maintained.
-This module manages and installs OpenStack's RefStack Service. Add more
-documentation here.
\ No newline at end of file
+The contents of this repository are still available in the Git
+source code management system. To see the contents of this
+repository before it reached its end of life, please check out the
+previous commit with "git checkout HEAD^1".
+
+For any further questions, please email
+service-discuss@lists.opendev.org or join #opendev on OFTC.
diff --git a/Rakefile b/Rakefile
deleted file mode 100644
index ff1f0d7..0000000
--- a/Rakefile
+++ /dev/null
@@ -1,8 +0,0 @@
-require 'rubygems'
-require 'puppetlabs_spec_helper/rake_tasks'
-require 'puppet-lint/tasks/puppet-lint'
-PuppetLint.configuration.fail_on_warnings = true
-PuppetLint.configuration.send('disable_80chars')
-PuppetLint.configuration.send('disable_autoloader_layout')
-PuppetLint.configuration.send('disable_class_inherits_from_params_class')
-PuppetLint.configuration.send('disable_class_parameter_defaults')
diff --git a/Vagrantfile b/Vagrantfile
deleted file mode 100644
index ada619c..0000000
--- a/Vagrantfile
+++ /dev/null
@@ -1,27 +0,0 @@
-# -*- mode: ruby -*-
-# vi: set ft=ruby :
-
-# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
-VAGRANTFILE_API_VERSION = "2"
-
-Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
-
- # Define the box.
- config.vm.box = "ubuntu/trusty64"
- config.vm.hostname = "puppet-refstack-trusty64"
-
- config.vm.provider :virtualbox do |vb|
- vb.customize ['modifyvm', :id,'--memory', '2048']
- vb.name = 'puppet-refstack-trusty64'
- end
-
- # Grant a private IP
- config.vm.network "private_network", ip: "192.168.99.88"
-
- # All VM's run the same provisioning
- config.vm.provision "shell", path: "vagrant.sh"
- config.vm.provision "puppet" do |puppet|
- puppet.manifests_path = ['vm', "/vagrant"]
- puppet.manifest_file = "vagrant.pp"
- end
-end
diff --git a/manifests/apache/http.pp b/manifests/apache/http.pp
deleted file mode 100644
index 105e3d9..0000000
--- a/manifests/apache/http.pp
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-# == Class: refstack::apache::http
-#
-# This module installs RefStack onto the current host using an unencrypted http
-# protocol.
-#
-class refstack::apache::http () {
- require ::refstack::params
- require ::refstack::app
-
- # Pull various variables into this module, for slightly saner templates.
- $install_www_root = $::refstack::params::install_www_root
- $src_root = $::refstack::params::src_root
- $hostname = $::refstack::params::hostname
- $user = $::refstack::params::user
- $group = $::refstack::params::group
- $server_admin = $::refstack::params::server_admin
-
- # Install apache
- include ::httpd
- include ::httpd::params
- include ::httpd::mod::wsgi
-
- # Create a copy of the wsgi file with apache user permissions.
- file { '/etc/refstack/app.wsgi':
- ensure => present,
- owner => $::httpd::params::user,
- group => $::httpd::params::group,
- mode => '0644',
- source => "${src_root}/refstack/api/app.wsgi",
- require => [
- Class['refstack::app']
- ],
- notify => Service['httpd'],
- }
-
- # Synchronize the app directory and the apache directory.
- file { $install_www_root:
- ensure => directory,
- owner => $::httpd::params::user,
- group => $::httpd::params::group,
- source => "${src_root}/refstack-ui/app",
- recurse => true,
- purge => true,
- force => true,
- notify => Service['httpd'],
- }
-
- # Set up RefStack as HTTP.
- httpd::vhost { $hostname:
- port => 80,
- docroot => $install_www_root,
- priority => '50',
- template => 'refstack/refstack_http.vhost.erb',
- ssl => false,
- notify => Service['httpd'],
- require => File['/etc/refstack/app.wsgi'],
- }
-}
diff --git a/manifests/apache/https.pp b/manifests/apache/https.pp
deleted file mode 100644
index cd73c72..0000000
--- a/manifests/apache/https.pp
+++ /dev/null
@@ -1,109 +0,0 @@
-# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-# == Class: refstack::apache::https
-#
-# This module installs RefStack onto the current host using an the https
-# protocol.
-#
-class refstack::apache::https () {
- require ::refstack::params
- require ::refstack::app
-
- # Pull various variables into this module, for slightly saner templates.
- $install_www_root = $::refstack::params::install_www_root
- $src_root = $::refstack::params::src_root
- $hostname = $::refstack::params::hostname
- $user = $::refstack::params::user
- $group = $::refstack::params::group
- $server_admin = $::refstack::params::server_admin
-
- $ssl_cert_content = $::refstack::params::ssl_cert_content
- $ssl_cert = $::refstack::params::ssl_cert
- $ssl_key_content = $::refstack::params::ssl_key_content
- $ssl_key = $::refstack::params::ssl_key
- $ssl_ca_content = $::refstack::params::ssl_ca_content
- $resolved_ssl_ca = $::refstack::params::resolved_ssl_ca
-
- # Install apache
- include ::httpd
- include ::httpd::params
- include ::httpd::mod::wsgi
-
- # Create a copy of the wsgi file with apache user permissions.
- file { '/etc/refstack/app.wsgi':
- ensure => present,
- owner => $::httpd::params::user,
- group => $::httpd::params::group,
- mode => '0644',
- source => "${src_root}/refstack/api/app.wsgi",
- require => [
- Class['refstack::app']
- ],
- notify => Service['httpd'],
- }
-
- if $ssl_cert_content != undef {
- file { $ssl_cert:
- owner => 'root',
- group => 'ssl-cert',
- mode => '0640',
- content => $ssl_cert_content,
- notify => Service['httpd'],
- }
- }
-
- if $ssl_key_content != undef {
- file { $ssl_key:
- owner => 'root',
- group => 'ssl-cert',
- mode => '0640',
- content => $ssl_key_content,
- notify => Service['httpd'],
- }
- }
-
- if $ssl_ca_content != undef {
- file { $resolved_ssl_ca:
- owner => 'root',
- group => 'ssl-cert',
- mode => '0640',
- content => $ssl_ca_content,
- notify => Service['httpd'],
- }
- }
-
- # Synchronize the app directory and the apache directory.
- file { $install_www_root:
- ensure => directory,
- owner => $::httpd::params::user,
- group => $::httpd::params::group,
- source => "${src_root}/refstack-ui/app",
- recurse => true,
- purge => true,
- force => true,
- notify => Service['httpd'],
- }
-
- # Set up RefStack as HTTPS.
- httpd::vhost { $hostname:
- port => 443,
- docroot => $install_www_root,
- priority => '50',
- template => 'refstack/refstack_https.vhost.erb',
- ssl => true,
- notify => Service['httpd'],
- require => File['/etc/refstack/app.wsgi'],
- }
-}
diff --git a/manifests/app.pp b/manifests/app.pp
deleted file mode 100644
index 673e26f..0000000
--- a/manifests/app.pp
+++ /dev/null
@@ -1,192 +0,0 @@
-# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-# == Class: refstack::app
-#
-# This class installs the RefStack application (API and UI) so that it may be
-# run via wsgi.
-#
-class refstack::app () {
- require ::refstack::params
- require ::refstack::user
-
- # Import parameters into local scope.
- $src_root = $::refstack::params::src_root
- $user = $::refstack::params::user
- $group = $::refstack::params::group
-
- # Ensure python-dev is present
- if !defined(Package['python-dev']) {
- package { 'python-dev':
- ensure => present
- }
- }
-
- # Ensure OpenSSL is present
- if !defined(Package['libssl-dev']) {
- package { 'libssl-dev':
- ensure => present
- }
- }
-
- # Needed for PyOpenSSL
- if !defined(Package['libffi-dev']) {
- package { 'libffi-dev':
- ensure => present
- }
- }
-
- # Ensure NPM is present
- if !defined(Package['npm']) {
- package { 'npm':
- ensure => present
- }
- }
-
- if !defined(Package['nodejs']) {
- package { 'nodejs':
- ensure => present
- }
- }
-
- if !defined(Package['nodejs-legacy']) {
- package { 'nodejs-legacy':
- ensure => present
- }
- }
-
- if !defined(Package['pymysql']) {
- package { 'pymysql':
- ensure => present,
- provider => 'pip'
- }
- }
-
- # Create the RefStack configuration directory.
- file { '/etc/refstack':
- ensure => directory,
- owner => $user,
- group => $group,
- mode => '0755',
- }
-
- file { $src_root:
- ensure => 'directory',
- owner => $user,
- group => $group,
- mode => '0755',
- }
-
- # Configure the RefStack API.
- file { '/etc/refstack/refstack.conf':
- ensure => present,
- owner => $user,
- group => $group,
- mode => '0644',
- content => template('refstack/refstack.conf.erb'),
- require => [
- File['/etc/refstack']
- ]
- }
-
- # Download the RefStack tar.gz source distribution from pypi only if a new
- # one is available.
- exec { 'download-refstack':
- command => 'pip install refstack -d /tmp --no-deps --no-binary :all:',
- path => '/usr/local/bin:/usr/bin:/bin',
- user => $user,
- group => $group,
- onlyif => 'pip list --outdated | grep -c refstack || test `pip freeze | grep -c refstack` -eq 0'
- }
-
- # Untar the source contents.
- exec { 'untar-refstack' :
- command => "tar -xvzf /tmp/refstack-*.tar.gz -C ${src_root} --strip-components=1",
- path => '/usr/local/bin:/usr/bin:/bin',
- refreshonly => true,
- user => $user,
- group => $group,
- require => File[$src_root],
- subscribe => Exec['download-refstack']
- }
-
- # Remove tar.gz file after extracting.
- exec { 'remove-tar':
- command => 'rm -f /tmp/refstack-*.tar.gz',
- path => '/usr/local/bin:/usr/bin:/bin',
- refreshonly => true,
- subscribe => Exec['untar-refstack']
- }
-
- # Install RefStack using pip.
- exec { 'install-refstack':
- command => "pip install -U ${src_root}",
- path => '/usr/local/bin:/usr/bin:/bin',
- refreshonly => true,
- require => File[$src_root],
- subscribe => Exec['untar-refstack'],
- notify => Service['httpd']
- }
-
- # Migrate the database.
- exec { 'migrate-refstack-db':
- command => 'refstack-manage --config-file /etc/refstack/refstack.conf upgrade --revision head',
- path => '/usr/local/bin:/usr/bin:/bin',
- refreshonly => true,
- subscribe => [
- Exec['install-refstack'],
- File['/etc/refstack/refstack.conf'],
- ],
- require => [
- Exec['install-refstack'],
- File['/etc/refstack/refstack.conf'],
- ]
- }
-
- # Run NPM Install.
- exec { 'npm install':
- command => 'npm install',
- path => '/usr/local/bin:/usr/bin:/bin/',
- cwd => $src_root,
- user => $user,
- group => $group,
- refreshonly => true,
- subscribe => Exec['untar-refstack'],
- require => [
- Package['npm'],
- ],
- environment => [
- # This is not automatically set by exec.
- 'HOME=/home/refstack'
- ]
- }
-
- # Generate HTML templates from docs
- exec { 'generate-doc-html':
- command => "python ${src_root}/tools/convert-docs.py -o ${src_root}/refstack-ui/app/components/about/templates ${src_root}/doc/source/*.rst",
- path => '/usr/local/bin:/usr/bin:/bin',
- refreshonly => true,
- subscribe => Exec['install-refstack']
- }
-
- # Create config.json file.
- file { "${src_root}/refstack-ui/app/config.json":
- ensure => file,
- content => '{"refstackApiUrl": "/api/v1"}',
- require => [
- File[$src_root],
- Exec['untar-refstack'],
- ]
- }
-}
diff --git a/manifests/init.pp b/manifests/init.pp
deleted file mode 100644
index c78365b..0000000
--- a/manifests/init.pp
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-# == Class: refstack
-#
-# This class installs and updates RefStack in a continuous-deployment fashion
-# directly from its git repositories.
-#
-class refstack (
- $mysql_user_password,
- $mysql_host = 'localhost',
- $mysql_database = 'refstack',
- $mysql_user = 'refstack',
- $hostname = $::fqdn,
- $protocol = 'http',
-
- $ssl_cert_content = undef,
- $ssl_cert = '/etc/ssl/certs/ssl-cert-snakeoil.pem',
- $ssl_key_content = undef,
- $ssl_key = '/etc/ssl/private/ssl-cert-snakeoil.key',
- $ssl_ca_content = undef,
- $ssl_ca = undef, # '/etc/ssl/certs/ca.pem'
-) {
-
- # Configure the entire refstack instance. This does not install anything,
- # but ensures that variables are consistent across all modules.
- class { '::refstack::params':
- mysql_host => $mysql_host,
- mysql_database => $mysql_database,
- mysql_user => $mysql_user,
- mysql_user_password => $mysql_user_password,
- hostname => $hostname,
- protocol => $protocol,
- ssl_cert_content => $ssl_cert_content,
- ssl_cert => $ssl_cert,
- ssl_key_content => $ssl_key_content,
- ssl_key => $ssl_key,
- ssl_ca_content => $ssl_ca_content,
- ssl_ca => $ssl_ca
- }
-
- include ::refstack::mysql
- include ::refstack::app
-
- if $protocol == 'https' {
- include ::refstack::apache::https
- } else {
- include ::refstack::apache::http
- }
-}
diff --git a/manifests/mysql.pp b/manifests/mysql.pp
deleted file mode 100644
index 8c5156a..0000000
--- a/manifests/mysql.pp
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-# == Class: refstack::mysql
-#
-# The RefStack MySQL manifest will install a standalone, localhost instance
-# of mysql if mysql_host is set to 'localhost'.
-#
-class refstack::mysql () {
-
- require ::refstack::params
-
- # Import parameters.
- $mysql_host = $refstack::params::mysql_host
- $mysql_database = $refstack::params::mysql_database
- $mysql_user = $refstack::params::mysql_user
- $mysql_user_password = $refstack::params::mysql_user_password
-
- # Install MySQL
- if $mysql_host == 'localhost' {
- include ::mysql::server
-
- # Add the refstack database.
- mysql::db { $mysql_database:
- user => $mysql_user,
- password => $mysql_user_password,
- host => $mysql_host,
- grant => ['all'],
- }
- }
-}
diff --git a/manifests/params.pp b/manifests/params.pp
deleted file mode 100644
index c6847b4..0000000
--- a/manifests/params.pp
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-# == Class: refstack::params
-#
-# Centralized configuration management for the Refstack module.
-#
-class refstack::params (
-
- # [database] refstack.conf
- $mysql_user_password,
- $mysql_user = 'refstack',
- $mysql_host = localhost,
- $mysql_port = 3306,
- $mysql_database = 'refstack',
-
- # Source and install directories.
- $src_root = '/opt/refstack',
- $install_www_root = '/var/www/refstack-www',
-
- # The user under which refstack will run.
- $user = 'refstack',
- $group = 'refstack',
- $server_admin = undef,
- $hostname = $::fqdn,
- $protocol = 'http',
-
- # Apache2 ssl configuration
- $ssl_cert_content = undef,
- $ssl_cert = '/etc/ssl/certs/ssl-cert-snakeoil.pem',
- $ssl_key_content = undef,
- $ssl_key = '/etc/ssl/private/ssl-cert-snakeoil.key',
- $ssl_ca_content = undef,
- $ssl_ca = undef, # '/etc/ssl/certs/ca.pem'
-) {
-
- # Resolve a few parameters based on the install environment.
- if $::operatingsystem != 'Ubuntu' or versioncmp($::operatingsystemrelease, '13.10') < 0 {
- fail("${::operatingsystem} ${::operatingsystemrelease} is not supported.")
- }
-
- # Build the connection string from individual parameters
- $mysql_connection_string = "mysql+pymysql://${mysql_user}:${mysql_user_password}@${mysql_host}:${mysql_port}/${mysql_database}"
-
- # Construct website URL.
- $web_url = "${protocol}://${hostname}"
-
- $api_url = "${web_url}/api"
-
- # set the flag to enable anonymous upload (or not)
- $enable_anonymous_upload = false
-
-
- # CA file needs special treatment, since we want the path variable
- # to be undef in some cases.
- if $ssl_ca == undef and $ssl_ca_content != undef {
- $resolved_ssl_ca = '/etc/ssl/certs/refstack.ca.pem'
- } else {
- $resolved_ssl_ca = $ssl_ca
- }
-}
diff --git a/manifests/user.pp b/manifests/user.pp
deleted file mode 100644
index 47678de..0000000
--- a/manifests/user.pp
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright (c) 2015 Hewlett-Packard Development Company, L.P.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-# == Class: refstack::user
-#
-# Sets up the RefStack user.
-#
-class refstack::user () {
- require ::refstack::params
-
- # Import parameters into local scope.
- $user = $::refstack::params::user
- $group = $::refstack::params::group
-
- group { $group:
- ensure => present
- }
-
- user { $user:
- ensure => present,
- groups => [$group],
- managehome => true,
- shell => '/bin/bash',
- require => Group[$group]
- }
-}
diff --git a/metadata.json b/metadata.json
deleted file mode 100644
index 605d4c3..0000000
--- a/metadata.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "name": "openstackci-refstack",
- "version": "0.0.2",
- "author": "Openstack CI",
- "summary": "Puppet module for the OpenStack RefStack",
- "license": "Apache 2.0",
- "source": "https://git.openstack.org/openstack-infra/puppet-refstack.git",
- "project_page": "http://ci.openstack.org/",
- "issues_url": "https://refstack.openstack.org/#!/project/700",
- "dependencies": [
- {
- "name": "puppetlabs/stdlib",
- "version_requirement": ">= 3.2.0"
- },
- {
- "name": "puppetlabs/mysql",
- "version_requirement": ">= 0.6.1"
- },
- {
- "name": "openstackci/httpd",
- "version_requirement": "= 0.0.4"
- },
- {
- "name": "openstackci/vcsrepo",
- "version_requirement": ">= 0.0.8"
- }
- ]
-}
diff --git a/templates/refstack.conf.erb b/templates/refstack.conf.erb
deleted file mode 100644
index 667fe2c..0000000
--- a/templates/refstack.conf.erb
+++ /dev/null
@@ -1,16 +0,0 @@
-[DEFAULT]
-
-ui_url=<%= scope.lookupvar("::refstack::params::web_url") %>
-
-[api]
-
-api_url =<%= scope.lookupvar("::refstack::params::api_url") %>
-enable_anonymous_upload =<%= scope.lookupvar("::refstack::params::enable_anonymous_upload") %>
-
-[database]
-
-connection=<%= scope.lookupvar("::refstack::params::mysql_connection_string") %>
-
-[osid]
-
-openid_return_to=/api/v1/auth/signin_return
diff --git a/templates/refstack_http.vhost.erb b/templates/refstack_http.vhost.erb
deleted file mode 100644
index 018217d..0000000
--- a/templates/refstack_http.vhost.erb
+++ /dev/null
@@ -1,19 +0,0 @@
-
-<% if !!scope.lookupvar('::refstack::apache::http::server_admin') %>
- ServerAdmin <%= scope.lookupvar('::refstack::apache::http::server_admin') %>
-<% end %>
- ServerName <%= scope.lookupvar('::refstack::apache::http::hostname') %>
-
- DocumentRoot <%= scope.lookupvar('::refstack::apache::http::install_www_root') %>
-
- WSGIDaemonProcess refstack user=<%= scope.lookupvar('::refstack::apache::http::user') %> group=<%= scope.lookupvar('::refstack::apache::http::group') %> threads=5
- WSGIScriptAlias /api /etc/refstack/app.wsgi
- WSGIPassAuthorization On
- LogLevel warn
- ErrorLog ${APACHE_LOG_DIR}/refstack-error.log
- CustomLog ${APACHE_LOG_DIR}/refstack-access.log combined
-
-
- Require all granted
-
-
diff --git a/templates/refstack_https.vhost.erb b/templates/refstack_https.vhost.erb
deleted file mode 100644
index c103cd5..0000000
--- a/templates/refstack_https.vhost.erb
+++ /dev/null
@@ -1,59 +0,0 @@
-
- <% if !!scope.lookupvar('::refstack::apache::https::server_admin') %>
- ServerAdmin <%= scope.lookupvar('::refstack::apache::https::server_admin') %>
- <% end %>
- ServerName <%= scope.lookupvar('::refstack::apache::https::hostname') %>
-
- DocumentRoot <%= scope.lookupvar('::refstack::apache::https::install_www_root') %>
-
- Redirect / https://<%= scope.lookupvar('::refstack::apache::https::hostname') %>/
-
- LogLevel warn
- ErrorLog ${APACHE_LOG_DIR}/refstack-error.log
- CustomLog ${APACHE_LOG_DIR}/refstack-access.log combined
-
-
-
-
- <% if !!scope.lookupvar('::refstack::apache::https::server_admin') %>
- ServerAdmin <%= scope.lookupvar('::refstack::apache::https::server_admin') %>
- <% end %>
- ServerName <%= scope.lookupvar('::refstack::apache::https::hostname') %>
-
- LogLevel warn
- ErrorLog ${APACHE_LOG_DIR}/refstack-ssl-error.log
- CustomLog ${APACHE_LOG_DIR}/refstack-ssl-access.log combined
-
- SSLEngine on
- SSLProtocol All -SSLv2 -SSLv3
-
- SSLCertificateFile <%= scope.lookupvar('::refstack::apache::https::ssl_cert') %>
- SSLCertificateKeyFile <%= scope.lookupvar('::refstack::apache::https::ssl_key') %>
- <% if !!scope.lookupvar('::refstack::apache::https::resolved_ssl_ca') %>
- SSLCertificateChainFile <%= scope.lookupvar('::refstack::apache::https::resolved_ssl_ca') %>
- <% end %>
-
-
- SSLOptions +StdEnvVars
-
-
- SSLOptions +StdEnvVars
-
-
- BrowserMatch "MSIE [2-6]" \
- nokeepalive ssl-unclean-shutdown \
- downgrade-1.0 force-response-1.0
- # MSIE 7 and newer should be able to use keepalive
- BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
-
- DocumentRoot <%= scope.lookupvar('::refstack::apache::https::install_www_root') %>
-
- WSGIDaemonProcess refstack user=<%= scope.lookupvar('::refstack::apache::https::user') %> group=<%= scope.lookupvar('::refstack::apache::https::group') %> threads=5
- WSGIScriptAlias /api /etc/refstack/app.wsgi
- WSGIPassAuthorization On
-
-
- Require all granted
-
-
-
diff --git a/vagrant.pp b/vagrant.pp
deleted file mode 100644
index 10c8cdf..0000000
--- a/vagrant.pp
+++ /dev/null
@@ -1,7 +0,0 @@
-node default {
- class { '::refstack':
- hostname => '192.168.99.88',
- protocol => 'http',
- mysql_user_password => 'refstack',
- }
-}
diff --git a/vagrant.sh b/vagrant.sh
deleted file mode 100644
index 94c827f..0000000
--- a/vagrant.sh
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/bin/sh
-
-# Install Puppet!
-if [ ! -f /etc/apt/sources.list.d/puppetlabs.list ]; then
- lsbdistcodename=`lsb_release -c -s`
- wget https://apt.puppetlabs.com/puppetlabs-release-${lsbdistcodename}.deb
- sudo dpkg -i puppetlabs-release-${lsbdistcodename}.deb
- sudo apt-get update
- sudo apt-get dist-upgrade -y
-fi
-
-# Install pip.
-wget https://bootstrap.pypa.io/get-pip.py
-sudo python get-pip.py
-
-# Create a symlink to the vagrant directory, so puppet can find our module.
-if [ ! -d /etc/puppet/modules/refstack ]; then
- sudo ln -s /vagrant /etc/puppet/modules/refstack
-fi
-
-# Install required puppet modules.
-if [ ! -d /etc/puppet/modules/stdlib ]; then
- puppet module install puppetlabs-stdlib --version 3.2.0
-fi
-if [ ! -d /etc/puppet/modules/mysql ]; then
- puppet module install puppetlabs-mysql --version 0.6.1
-fi
-if [ ! -d /etc/puppet/modules/apache ]; then
- puppet module install puppetlabs-apache --version 0.0.4
-fi
-if [ ! -d /etc/puppet/modules/vcsrepo ]; then
- puppet module install openstackci-vcsrepo --version 0.0.8
-fi