Commit Graph

24 Commits

Author SHA1 Message Date
Jeremy Stanley d3a34d0989 Upgrade to latest EtherCalc (0.20200505.0)
We're four years behind on EtherCalc releases, and suddenly hitting
a crash exception which was fixed in a newer release three years
ago. According to the current readme we're running plenty new enough
dependencies, so this should be a drop-in replacement. Of course
we'll make an extra database backup immediately before hand, just to
be safe.

Change-Id: Iec59692fea0a1e31e1bd7b8e03145f7384d9e59b
2020-08-21 12:14:35 -07:00
Colleen Murphy 3baf809e4e Add test for ethercalc::apache
Add the ethercalc::apache class to the test fixture and ensure the
service is accessible over port 80. This also corrects a minor
idempotency issue in this class due to the way the ssl-cert package and
the /etc/ssl/private file resources were ordered.

Change-Id: I4cdba5b1881c3e9891ca9f8c2c4dd50ca5662d4e
2018-08-13 17:35:37 +02:00
Colleen Murphy 7a3b3c6f81 Fix defined type namespacing
Without this patch, puppet 4 apply tests can't find the mod defined type
and fail with:

  Evaluation Error: Resource type not found: Mod at /etc/puppetlabs/code/modules/ethercalc/manifests/apache.pp:43:15

This patch ensures the resource reference is namespaced the same way the
resource declaration is already.

Change-Id: I891572c245f878a198f972e33e7ddbff74a5a731
2018-04-27 17:22:49 +02:00
Clark Boylan 521672bc35 Convert from etherpad to ethercalc
This begins the conversion process. We keep the bulk of the nodejs and
apache configuration. Remove mysql and replace with redis and so on.

This is not a complete conversion, future work should include
authenticated redis configuration and systemd support. However, this
should be able to get the service running with a basic set of
features and functionality.

Change-Id: Id10247211d9643e81bb1b6e8fb67377ba6de873a
2017-01-20 12:44:41 -08:00
Clark Boylan 9816851524 Support openid authentication
Whether to thwart spam or to make more private pads add support for very
simple auth mechanism using mod_auth_openid.

Change-Id: Ife0daf670a20afde46516c60f877e1da8026758a
2016-11-15 14:05:18 -08:00
Andrey Nikitin cd6889a359 Order of the classes parameters is refactored
Order and intendation of those parameters are changed
to follow Puppet Style Guide recommendation [0].
Moreover, it will allow to an user to find much faster
a variable in a list of variables.

[0]. https://docs.puppetlabs.com/guides/style_guide.html

Change-Id: If012896a95088ae836d5dfa35aa3cad553aee516
2016-03-21 12:07:49 +03:00
Jeremy Stanley 86d9628a5a Fix races in httpd install and config
Add necessary dependency/ordering hints to the etherpad_lite::apache
class so that configuration parent directories are created before
they're needed rather than later through package installation, and
so that vhost configuration won't be loaded until Apache module
dependencies are in place.

Change-Id: Iaeafd30b19276ff438bd9e2708031c1064a2314d
2015-10-09 17:52:55 +02:00
James E. Blair c98efc9c7d Fix connection tuning on >= trusty
The tuning config file needs a .conf extension.  Also, trusty
uses mpm_worker_event by default, so support that as well.

Change-Id: Ica3a7ceab29f120a24ca93cc5491f5fe8ce9e54a
2015-09-08 10:43:52 -07:00
James E. Blair 605ec41b30 Fix websocket configuration
Enable the proxy_websocket module.

Correct the ProxyPass directives in use with websockets.  The
current versions result in 404 on socket.io.js because they strip
the socket.io component of the path.

Change-Id: I3505b4e9693602ec04baec2487871ce57a6dc7a6
2015-09-02 10:15:11 -07:00
Paul Belanger 98f0ab2373 Fix warning about httpd module
Change-Id: I5a75b1488b587ff6fd564afabf9f707199d2a184
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-07-16 15:51:51 -04:00
Paul Belanger 61b6b1f69d 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: I45be21c08d5ccdccbf0a8c386b794e2d75cdff45
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2015-07-09 16:29:40 -04:00
Clark Boylan e0ecfcd1f7 Don't host robots.txt from etherpad repo install
Updating the robots.txt in the etherpad vcsrepo makes it hard to manage
that repo properly. Solve this by serving the static robots.txt file
directly from apache rather than via etherpad service. Use a mod_rewrite
since we are already using that to set up the proxying.

Change-Id: Iccccf1ef194060490512e6550c22bdb9d3478ba8
2015-03-16 09:45:34 -07:00
Ricardo Carrillo Cruz 88dd268c4a Add connection-tuning file to new Apache 2.4 conf folder structure
This change enables this manifest on Ubuntu Trusty, as it comes
with Apache 2.4 by default and there's no longer conf.d folder, it
is split on conf.available/conf.enable.

Change-Id: I7986e3f3be97f3448b743789a2c4fdacd07a20a8
2015-01-30 18:43:49 +00:00
Clark Boylan 371e87eb55 Add etherpadlite server admin variable
The etherpad lite vhost template expects a server admin variable in the
etherpad_lite::apache manifest. Add one with a default of
webmaster@$fqdn.

Change-Id: Id974496ec330fa1453bc60d65518f4264f107da7
2014-09-12 09:02:21 -07:00
K Jonathan Harker 4cc98b149c Revert "Revert "Downgrade puppetlabs-apache to version 0.0.4.""
This reverts commit 3afc75132aa3a7d3cae911ae5e7166383b9ee4ba.

The new apache module has started managing /etc/httpd/conf/httpd.conf
with a template that has some significant differences than our template
in the cgit module.

Change-Id: I99795d35596f35dfc34e89891155dd2b83e465fe
2014-07-01 17:38:58 -07:00
K Jonathan Harker 447d8e5f14 Revert "Downgrade puppetlabs-apache to version 0.0.4."
This reverts commit 7b9ea298cf4ae941af74381925b17a4b29337eb9.

Upgrading puppetlabs-apache to version 0.4.0 will give us important
variables in apache::params (specifically $conf_dir and $vdir) which
will allow us to modify the cgit module to run on both Debuntu and RHEL
systems -- which is useful because test.sh should be testing all modules
on both systems.

Of the two issues that 7b9ea298 addresses, I believe that our Oneiric
hosts have all gone the way of the dinosaur and we can work around the
docroot check by replacing 'MEANINGLESS ARGUMENT' with
'/tmp/meaningless_docroot'.

Conflicts:
	install_modules.sh

Change-Id: I7c08f85db6810ab28fa044f1923833359271e8ec
2014-06-27 15:29:03 -07:00
Clark Boylan a2a3d04b32 Tune apache for etherpad lite.
* modules/etherpad_lite/manifests/apache.pp: Install apache etherpad
lite connection tuning config file.

* modules/etherpad_lite/files/apache-connection-tuning: Configure the
Apache MPM Worker module to run up to 64 processes with 32 threads each
for a grand total of 2048 client connections maximum. This should be
relatively safe as etherpad connections are not very heavy. Most
connections come from users that lurk, they don't provide any input
that creates writes to the database. For example at a design summit we
may have 8 design room seach with an etherpad open, in each room there
may be 20 people connected to the etherpad but only 2-4 writing to it.

Change-Id: I3f406af1204b993d2b083180f17cafcf4f62f5bc
2013-10-09 16:53:27 -07:00
Clark Boylan 88bb5cd21c Update etherpad and etherpad puppet manifests.
* manifests/site.pp: Pass new mysql DB variables to
openstack::etherpad*.

* modules/etherpad_lite/manifests/apache.pp: Fix broken /etc/ssl/certs
permissions (0700 -> 0755).

* modules/etherpad_lite/manifests/init.pp: Update default nodejs and
etherpad versions. Remove ep_headings plugin install. New plugin define
should be used for this instead. Stop making the etherpad-lite ref to
checkout optional (defaults to develop). Note these changes are probably
not going to be backward compat.

* modules/etherpad_lite/manifests/plugin.pp: Define to install etherpad
lite plugins.

* modules/etherpad_lite/manifests/site.pp: Simplify DB support and
remove support for the dirty DB type.

* modules/etherpad_lite/templates/etherpad-lite_settings.json.erb: Bring
settings erb up to par with latest template.

* modules/etherpad_lite/templates/etherpadlite.vhost.erb: Update rewrite
rules for new etherpad. Instead of allowing nice pad urls rooted at /
redirect these url to /p/padname. Etherpad does not deal well with a
change in root path as /p/ is hardcoded in many places.

* modules/openstack_project/manifests/etherpad.pp
* modules/openstack_project/manifests/etherpad_dev.pp:
Update to use new etherpad module setup. MySQL DBs are now externally
managed, pass in needed connection info.

* modules/mysql_backup/manifests/backup_remote.pp: New define to backup
remote DB servers.

* modules/mysql_backup/templates/my.cnf.erb: Template for a my.cnf to be
used by the cron in backup_remote.pp. Allows for easy connectivity from
server using MySQL DB as root.

Change-Id: I1250297674b91e81d59cd28c07c52e09967ca548
2013-10-09 16:53:06 -07:00
Matthew Wagoner 1ce4b91543 Cleanup etherpad_lite manifest lint errors.
Also, seperate out the buildsource defined resource from init.pp

Change-Id: I9fe46ad31943f667ebe8bb6b01a2007e0b3cf022
Reviewed-on: https://review.openstack.org/15061
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Reviewed-by: Paul Belanger <paul.belanger@polybeacon.com>
Approved: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
2012-11-17 01:30:36 +00:00
Clark Boylan 4c66a792ec Add ssl-cert package to etherpad.
Change-Id: I717926f8c155a796047d58bdbb48cb58bde9b7c5
Reviewed-on: https://review.openstack.org/14585
Approved: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Tested-by: Jenkins
2012-10-21 16:47:52 +00:00
Clark Boylan e876eb4566 Correct etherpad lite certificates.
Etherpad lite previously attempted to manage its cert files in two
different ways. This created a conflict and puppet would not run
successfully. Remove the old way of managing the cert files.

Change-Id: I9336c6f97d455917f4680bfdfd5543283714fe34
Reviewed-on: https://review.openstack.org/14584
Approved: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Tested-by: Jenkins
2012-10-21 16:18:35 +00:00
James E. Blair 555733c1cb Align etherpad vhost ssl section with standard.
As copied from jenkins.  Both old and new names for the
cert contents are in hiera.

Change-Id: Ic6d8258479c260ac37346c49c1ecde8339c96a37
Reviewed-on: https://review.openstack.org/14432
Reviewed-by: Jeremy Stanley <fungi@yuggoth.org>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
2012-10-20 15:39:25 +00:00
Monty Taylor c0ed8b10f1 Clean up post-apache move carnage.
Change-Id: Ieeb8469126d64df75e7fa0fff67618daa6990674
Reviewed-on: https://review.openstack.org/11246
Approved: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
2012-08-12 17:49:33 +00:00
Monty Taylor 3e769e56a3 Align all web server usage on apache module.
Change-Id: Idd712a8ee5ec81c6b88b7d3e2270dce4da254927
Reviewed-on: https://review.openstack.org/10838
Approved: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Tested-by: Jenkins
2012-08-12 17:03:46 +00:00