57 Commits

Author SHA1 Message Date
Colleen Murphy
88e03c0d52 Add Gemfile and puppet 4 checks
In anticipation of puppet 4, start trying to deal with puppet 4 things
that can be helpfully predicted by puppet lint plugins. Also fix lint
errors caught by the puppet-lint-absolute_classname-check and
puppet-lint-trailing_newline-check gems.

Change-Id: If9e2cd626122c4ff6338a82d87c815ae33578bac
2015-08-14 10:06:32 -07:00
Spencer Krum
fff4cd903c Boilerplate beaker-rspec files
Change-Id: I0a70b7bea8f7649de20d062d6ca1940d2b8dc9e3
2015-07-28 02:06:00 -07:00
Paul Belanger
e8b959a5a2 Migrate to puppet-httpd module
puppet-httpd is the openstack-infra version of puppetlabs-apache
(0.0.4) release.

This patchset will remove the puppetlabs-apache namespace from -infra
allowing for possible future patchsets to use newer puppetlabs-apache
modules.

Change-Id: I4f509f1ce72b069ac89d42f2cb55550e3b5bf590
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-07-16 15:47:33 -04:00
Jeremy Stanley
902f3d3eda Replace ci.o.o links with docs.o.o/infra
The http://ci.openstack.org/ documentation site has been deprecated,
replaced by redirects to corresponding paths within
http://docs.openstack.org/infra/ where other Project Infrastructure
documentation already resides.

Change-Id: I81ecea0021e349232bc36924a04869d29ad4676d
2015-05-14 21:38:19 +00:00
Ramy Asselin
8e46a20ecd Rename openstackci to openstackinfra
Change-Id: I5add5c8dd9ca220352bee481d635111d6c4195ec
2015-04-20 13:50:55 -07:00
Jenkins
4f577b78fc Merge "Corrected metadata.json" 2015-03-16 12:13:26 +00:00
Michael Krotscheck
a26207e35d Parameterized working directories.
The install directories into which the storyboard api and client
are downloaded and processed are now parameterized.

Change-Id: Ic67a0730246bc7fcf38cc98e460381994ab9d736
2015-03-13 22:05:41 +00:00
Michael Krotscheck
9cff9d2142 Added new OAuth Parameters
Storyboard.conf now accepts authorization_code_ttl and a list of
valid_oauth_clients.

Change-Id: I29495a0b640c3ca097cca8c17349df5cc42388de
2015-03-04 09:27:27 -08:00
Michael Krotscheck
936abca6a6 Updated storyboard configuration for pymysql.
In order to support Python3, https://review.openstack.org/#/c/152339/ is switching
to a mysql driver that's supported by Python3. This updates the puppet module to use
the new connection string.

Change-Id: Id5d9eacd8de5700675848d3129b189fad07a221b
2015-02-23 12:36:15 -08:00
Michael Krotscheck
12bb2c8d42 Moved working_directory configuration element into correct block.
The working_directory config flag was in [oauth] block, when
it should have been in [default].

Change-Id: I4f6d632d7dce4c856cba2569246ab6101224de60
2015-02-23 12:34:38 -08:00
Michael Krotscheck
fef6de5bd4 Corrected metadata.json
There were two references to stdlib in the metadata.json file.
Similarly, there is a dependency on a module that cannot be directly
installed via 'puppet module install' (openstackci/httpd), so I am
switching our metadata back in line with the Modulefile until
that changes.

Change-Id: I04636b14f9cb7b945156a7f20c5321b54ffa67be
2015-02-23 12:16:03 -08:00
Michael Krotscheck
380937f5a1 Added a Vagrant module and manifest for easier development.
Vagrant file will provision the configuration it finds in vagrant.pp.
Node configurations for precise and trusty provided, on different IP
addresses.

Change-Id: I7b08ce4cc5acdc2ad58261f4872ba2df2e06dcf4
2015-02-23 12:14:09 -08:00
Jenkins
685db01ec1 Merge "Add metadata.json to puppet-storyboard" 2015-02-23 18:20:25 +00:00
Jenkins
f5ef08c443 Merge "Added config.json to manifest" 2015-02-06 22:51:12 +00:00
Jeremy Stanley
527209a46f Add missing LICENSE file
The content of this project is Apache 2 licensed, but we should
include a standard LICENSE file just to be clear about that.

Change-Id: Iee6320b9d7e35fbe8d3b0a9794f3e485c18ef2c8
2015-01-29 22:59:59 +00:00
Michael Krotscheck
ac275b3003 Added config.json to manifest
This adds an empty, default config.json file to storyboard's webclient install.
While functionally it impacts nothing, it will remove a multitude of 404 log
errors caused by storyboard trying to load a secondary configuration.

Change-Id: Ib31e4ad1c6f03b4dd43659bd8e931d965ce7686b
2015-01-20 16:13:48 -08:00
Michael Krotscheck
27b9f13f0b Disabled Cron workers on Storyboard.
Storyboard is currently failing because of requests to get the working
directory are failing. This disables that configuration option so
we have some time to investigate.

Change-Id: I8d0b8d6ce350836b8eba5822e1aa6e9920d7dc8e
2015-01-20 09:13:21 -08:00
Marton Kiss
7fe4951d7d Add missing working directory to filesystem and storyboard config
Solves the directory creation issue mentioned in that patch:
https://review.openstack.org/#/c/148592/

Change-Id: I9bef14d695c9bb1bb29790132566d4ed04bec544
2015-01-20 16:46:50 +01:00
Jenkins
8a7d4342d1 Merge "Added Cron and Token Cleanup to configuration." 2015-01-19 21:40:21 +00:00
Jenkins
45fd3d6606 Merge "bump rabbitmq to 5.0" 2015-01-19 21:40:18 +00:00
Jenkins
0f8cd110ed Merge "Allow overriding the cert/key file paths" 2015-01-09 15:57:23 +00:00
Michael Krotscheck
aca28c6fa2 Added Cron and Token Cleanup to configuration.
This patch adds the new oauth config section from
https://review.openstack.org/144355, as well as the cron enabling
flag from https://review.openstack.org/129609/. Both are defaulted
to false in storyboard, so until this patch lands the features
will not be enabled.

Change-Id: Iedd1d8fb9b734c4356a922b6781395249ae14ed4
2015-01-06 10:53:13 -08:00
Spencer Krum
7aad8e9a76 Add metadata.json to puppet-storyboard
Change-Id: Id93c23c30ad629d74503d725127413d0d3181630
2015-01-06 09:34:49 -08:00
Jeremy Stanley
8cb968cea0 Allow overriding the cert/key file paths
* manifests/cert.pp: This adds the flexibility to depend on
existing files even if they're created as part of the storyboard
dependency chain, though with the loss of some error handling if a
deployer neglects to ensure the file itself exists before starting
the apache daemon.

Change-Id: I62d0bc7899703d7cc17f402cf34bd92357f44b58
2015-01-05 19:02:05 +00:00
Spencer Krum
265f47fcc2 bump rabbitmq to 5.0
This resolves an issue where the rabbitmq daemon changed command
output and the puppet module lagged behind it.

Change-Id: Ib71041539bf7cce66fb9f0060ed9a62fca502361
2014-12-22 15:22:32 -08:00
Michael Krotscheck
9cc80d5fed Rabbit repository management
If we are running on anything before trusty, we need to manually
manage the repository because the available version of rabbitmq
is not recent enough for our module. For trusty and later, the
available version is too recent for us to use, so we have to turn
off repo management.

This is volatile, and needs a more permanent solution.

Change-Id: I0db87d6c5cbecee8575d91e6f88ef43a947967ff
2014-12-09 14:20:51 -08:00
Michael Krotscheck
c82c659feb Revert "Disabled rabbit repo management."
This reverts commit aa6a39b694ac1054c2e9cace60bbd79b8473f114.

Change-Id: I00e1de89ba85f7d04bf983d8617b1da3a43d768e
2014-12-09 13:50:59 -08:00
Michael Krotscheck
aa6a39b694 Disabled rabbit repo management.
Turns out the rabbit module manages its own APT repository, which
can end up with some unexpected results on trusty. This disables
that and defaults back to using the trusty upstream.

After this patch lands, we're going to have to manually update
storyboard.o.o to remove the ppa and reinstall rabbit.

Change-Id: Ic5ada12e730845e550d1beb934c536955b77ef16
2014-10-30 13:08:22 -07:00
Michael Krotscheck
3a5c3825b8 Added command path to puppet-storyboard
This provides the full path to storyboard-worker-daemon to
our sysvinit script.

Change-Id: Iae0606d3a0b6b8ca211fc50232c631238ca80e50
2014-10-03 14:04:13 -07:00
Jenkins
372394f0e1 Merge "Removed default passwords" 2014-09-29 20:03:20 +00:00
Jenkins
8373ceb4bb Merge "Fixed version detection" 2014-09-29 19:59:22 +00:00
Jenkins
64417796b8 Merge "StoryBoard Deferred Processors" 2014-09-29 19:57:06 +00:00
Michael Krotscheck
23410116c6 Added CORS configuration to puppet-storyboard
Storyboard will soon support CORS, which is configured via
storyboard.conf. This patch adds the two relevant properties
to the puppet module, and makes them accessible in
storyboard::application.

Depends on https://review.openstack.org/#/c/124163/

Change-Id: I33a33076a18a9192b067a9f6f08d752ff8c22e3b
2014-09-25 14:48:51 -07:00
Michael Krotscheck
59a1fb57da StoryBoard Deferred Processors
This patch adds a puppet module that will start up N worker threads
to handle messages sent to the deferred processing queue. It does so
by making use of the new storyboard-worker-daemon command
created in the below patch. Both upstart and sysvinit scripts are
provided, with sysvinit being the default.

https://review.openstack.org/#/c/122890/

Change-Id: I5565cbf8062457d343d3e02dbfaae2852a359d91
Story: 96
2014-09-24 17:39:48 -07:00
Spencer Krum
8c4feb93f8 Compare values to :undef to test for existence
Change-Id: I87a7268ae56737a507faafb510801fd5b21a04d2
2014-09-12 11:19:41 -07:00
James E. Blair
9d04e4d824 Spell 'server_admin' consistently
The template and manifest used different spellings.

Change-Id: I093f7adfbfca1db040b73af96f8fb11adcb1699b
2014-09-12 10:53:48 -07:00
Spencer Krum
bca18fff5b Template was comparing to :undefined
Change-Id: Id6f502dcaa09e7be86863fcbe007f20d644280b4
2014-09-11 17:10:44 -07:00
Michael Krotscheck
974f3c32cd Removed default passwords
The default passwords for the various storyboard subcomponents
as well as the init component were removed. Documentation has
also been updated.

Change-Id: I1041154b6d30722649776eca15a0f04b090ab5c8
2014-09-02 14:36:17 -07:00
Michael Krotscheck
8843f476ea Fixed version detection
Version detection for apache was incorrectly based off a version
of the apache module that isn't in use by openstack. Rather than
creating a weird dependency issue, I've moved the apache default
version detection into the storyboard module directly.

Change-Id: Ib4be592207bd43abb0c97417f321a2ffa26465f1
2014-09-02 12:57:50 -07:00
James E. Blair
cd3f27298d Make enable notifications a flag
So that it can be disabled.

Change-Id: I04d20b491cfa0c897160d9fc78c37a164cd09122
2014-08-26 18:40:19 +00:00
Michael Krotscheck
7e7064297f StoryBoard Webclient now auto-updates again.
puppi:netinstall appears to be less useful than expected, as the
remote versions are no longer being downloaded and updated. This
change moves us back to using curl to download the webclient tarball,
so that we're assured to always have a fresh version.

Change-Id: I4120f82239614ec355b921b8ee54bb81e4b39543
2014-08-20 09:31:49 -10:00
Michael Krotscheck
05cee0f709 Support Apache 2.4.3
Apache version 2.4.3 changes the Order Allow,Deny security
configuration options. This patch modifies the input parameters
as well as the vhost templates in order to support it.

Change-Id: I179ffa924fed204c45a08ba19ea4acdc519edda2
2014-08-20 09:25:22 -10:00
Michael Krotscheck
fb38fa63b3 Added RabbitMQ to StoryBoard
In order to support subscriptions in StoryBoard, we're adding a
queueing system to support triggered events. The specification in
question is #95307, which goes into detail on the various different
options evaluated. I also anticipate that this system can be used
for report generation.

Change-Id: Ia4cc91f1e75365a9fb41ca163e55548023233412
Story: 96
2014-08-13 11:31:14 -07:00
Michael Krotscheck
e4857b1a70 Create storyboard configuration directory
Storyboard's configuration directory was not being created,
which causes an error on clean systems.

Change-Id: I506bebee77cbc6e60d05598cd4c13d65fb287e11
2014-08-13 00:14:39 +00:00
Michael Krotscheck
79fe352c7c Fixed location of storyboard configuration file
For some reason, storyboard's config is again trying to read from
/etc/storyboard/storyboard.conf rather than /etc/storyboard.conf. This
fixes our configuration.

Change-Id: I978b8cd99744fabfab7fdf5b1d63bd54396350ed
2014-08-13 00:14:39 +00:00
Michael Krotscheck
4fdd12b7f5 Modularized StoryBoard Module
In order to get the puppet module for storyboard up to a level where
we can publish it to puppetforge, I did some work on it to create
separate modules which can be used by anyone to install storyboard.

- API and Webclient are now installed via storyboard::application,
  which assumes that you can provide the DB connection criteria.
- storyboard::cert is now a separate class, which accepts either
  files or strings, which generates the SSL certificate and chain
  files for storyboard.
- storyboard::params is our dependency checker.
- storyboard::init will install a standalone, entirely
  self-contained instance of storyboard.
- Added various puppet module files necessary for eventual
  deployment to puppetforge.
- Added README.md documentation for later puppetforge addition.

This patch also includes a new module: example42-puppi, which is a
series of convenience utilities useful for deployment. For example,
puppi::netinstall (used here) will fetch tarballs and zip files and
extract them into a provided directory. It also contains changes to
the storyboard configuration for the new refresh token support patch
in #94363

Change-Id: I6ab8c24b308df38774fc0694d218dcb5022cd899
2014-08-13 00:14:39 +00:00
Michael Krotscheck
89a55f434e StoryBoard module bounces apache on update
Apache doesn't reload python libs until a reboot, so
our strategy of reloading storyboard wasn't effective.
This removes the old storyboard-reload command and
replaces it with a straight http service restart.

Change-Id: I1f2fb736277c3ca39b513695e42ef4860267737f
2014-08-13 00:14:39 +00:00
Monty Taylor
4e5338a964 Put a default section header above the TTL
Turns out that ini files need section headers.

Change-Id: Ia6c715fa4e47135ad3a81577db9a8749342b654d
2014-08-13 00:14:39 +00:00
Spencer Krum
3ddc335163 Make storyboard idempotent
Previously the curl command was itself idempotent but this
was transparent to Puppet, meaning the node reported as
always changed. I have, somewhat akwardly, taught Puppet how to
check for changed files on the remote server. It pulls only HTTP
headers to save time/bandwidth.

Change-Id: I539e67f0c82ad91450dd3720512b92518e70c122
2014-08-13 00:14:39 +00:00
Nikita Konovalov
716abb695f Storyboard token expiration increased
Expiration is set to 24 hours.
This should be merged before https://review.openstack.org/#/c/84107/

Change-Id: Ie3ba222caf2b8c6c20ffcac0cbd94bc8b4e2a83d
2014-08-13 00:14:39 +00:00