wordpress: maintain charm, port to xenial and bionic, fix critical deployment issues

Bug #1827164 reported by Tim McNamara
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
wordpress (Juju Charms Collection)
Fix Released
Undecided
Matthew Ruffell

Bug Description

[Impact]

When you deploy wordpress via cs:trusty-wordpress-5, the user is presented with a warning that their php install is out of date, and cannot proceed any further:

> PHP Update required
>
> WordPress has detected that your site is running on an insecure version of PHP.

If you try and target a newer series like xenial or bionic, the deploy fails due to specific php package naming, e.g. php5-<name>.

I have spent some time overhauling this charm due to a customer complaint.

Things that have been fixed:
- This charm now supports xenial and bionic, and is focal ready. (eoan works).
- This charm now does a sha256 checksum on wordpress download.
- This charm now works with memcached, and tests do not leave the charm in a bad state. Note, the condition of completing the wordpress install is still required before adding the memcached relation.
- All tests now pass.
- Supports latest versions of wordpress.
- Charm icon is now circular.

Bugs Fixed:
LP #1827164 wordpress charm stuck on trusty (this bug)
LP #1706045 Updating the charm icon
LP #1603153 Tests pass, but leave wordpress in an errored state
LP #1317644 Can't install wordpress on local provider with trusty host
LP #1593498 apache2 borked
LP #1521190 Wordpress deploy fails on install, config-changed etc.
LP #1491995 Can't upload files to wordpress
LP #1491996 Wordpress config help for wp-content references dead link
LP #1494202 Wordpress charm install currently fails on missing /etc/php5/conf.d directory
LP #1491901 Wordpress max upload size set to 2mb, no way to change
LP #1064846 install does not check errors

[Fix]

The source code of the charm can be found here:
https://jaas.ai/u/mruffell/wordpress/0

You can review a "git diff" of the charm compared to cs:trusty-wordpress-5 here:
https://paste.ubuntu.com/p/xnxrdgBt9k/

I am requesting Promulgation of cs:~mruffell/wordpress-0 to the official wordpress charm.

[Testcase]

You can deploy the charm like so:

juju deploy cs:~mruffell/wordpress-0
juju deploy mysql
juju add-relation wordpress mysql
juju expose wordpress

Complete the install, by navigating to the exposed ip address.

If you wish to test memcached:
juju deploy memcached
juju add-relation memcached wordpress

Navigate to the dashboard, and at the warning at the top of the page about caching, click it, scroll to the bottom and click save. This is necessary as of LP #1057212 Memcached relation fails if wp install isn't complete

[Regression Potential]

While the base charm has not changed architecturally, there may be problems on upgrading an existing deployment with this new charm.

I have NOT tested a trusty deployment, upgrading from trusty to xenial and seeing if it works, although, if the wp-content folder is placed in the same place, there is a chance of it working.

For new deployments, this version of wordpress charm supports all existing config options, and will match the existing workflows that users expect.

Thus, I do not expect any regressions for fresh deployments.

Tags: sts
description: updated
Changed in wordpress (Juju Charms Collection):
status: New → In Progress
assignee: nobody → Matthew Ruffell (mruffell)
summary: - wordpress charm stuck on trusty
+ wordpress: maintain charm, port to xenial and bionic, fix critical
+ deployment issues
tags: added: sts
Revision history for this message
Tim McNamara (tim-clicks) wrote : Re: [Bug 1827164] Re: wordpress charm stuck on trusty
Download full text (8.3 KiB)

This is excellent Matthew. Thanks for moving this forward.

Do you know how to make a promulgation request? It involves adding a post
in the Juju discourse under the Charming category.

On Wed, 8 Jan 2020 at 17:10, Matthew Ruffell <email address hidden>
wrote:

> ** Description changed:
>
> - This charm should be updated to a more recent series. Installing
> - Wordpress via cs:trusty/wordpress-5 leads to a security warning
> - presented to the user once Wordpress is configured:
> + [Impact]
> +
> + When you deploy wordpress via cs:trusty-wordpress-5, the user is
> + presented with a warning that their php install is out of date, and
> + cannot proceed any further:
>
> > PHP Update required
> >
> > WordPress has detected that your site is running on an insecure
> version of PHP.
> +
> + If you try and target a newer series like xenial or bionic, the deploy
> + fails due to specific php package naming, e.g. php5-<name>.
> +
> + I have spent some time overhauling this charm due to a customer
> + complaint.
> +
> + Things that have been fixed:
> + - This charm now supports xenial and bionic, and is focal ready. (eoan
> works).
> + - This charm now does a sha256 checksum on wordpress download.
> + - This charm now works with memcached, and tests do not leave the charm
> in a bad state. Note, the condition of completing the wordpress install is
> still required before adding the memcached relation.
> + - All tests now pass.
> + - Supports latest versions of wordpress.
> + - Charm icon is now circular.
> +
> + Bugs Fixed:
> + LP #1827164 wordpress charm stuck on trusty (this bug)
> + LP #1706045 Updating the charm icon
> + LP #1603153 Tests pass, but leave wordpress in an errored state
> + LP #1317644 Can't install wordpress on local provider with trusty host
> + LP #1593498 apache2 borked
> + LP #1521190 Wordpress deploy fails on install, config-changed etc.
> + LP #1491995 Can't upload files to wordpress
> + LP #1491996 Wordpress config help for wp-content references dead link
> + LP #1494202 Wordpress charm install currently fails on missing
> /etc/php5/conf.d directory
> + LP #1491901 Wordpress max upload size set to 2mb, no way to change
> + LP #1064846 install does not check errors
> +
> + [Fix]
> +
> + The source code of the charm can be found here:
> + https://jaas.ai/u/mruffell/wordpress/0
> +
> + You can review a "git diff" of the charm compared to
> cs:trusty-wordpress-5 here:
> + https://paste.ubuntu.com/p/xnxrdgBt9k/
> +
> + I am requesting Promulgation of cs:~mruffell/wordpress-0 to the official
> + wordpress charm.
> +
> + [Testcase]
> +
> + You can deploy the charm like so:
> +
> + juju deploy cs:~mruffell/wordpress-0
> + juju deploy mysql
> + juju add-relation wordpress mysql
> + juju expose wordpress
> +
> + Complete the install, by navigating to the exposed ip address.
> +
> + If you wish to test memcached:
> + juju deploy memcached
> + juju add-relation memcached wordpress
> +
> + Navigate to the dashboard, and at the warning at the top of the page
> + about caching, click it, scroll to the bottom and click save. This is
> + necessary as of LP #1057212 Memcached relation fails if wp install isn't
> + complete
> +
> + ...

Read more...

Revision history for this message
Matthew Ruffell (mruffell) wrote :
Revision history for this message
Matthew Ruffell (mruffell) wrote :

The promulgation request for the wordpress charm has been accepted, and the charm is now known as cs:wordpress-0.

Closing this bug, and also all the other bugs that this release fixed.

Changed in wordpress (Juju Charms Collection):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.