| Commit message (Collapse) | Author | Age | Lines |
|
|
|
|
|
|
|
| |
This adds a systemd service unit file for managing the FixMyStreet
Catalyst process manager.
This also updates the commonlib submodule with matching changes to
our install scripts.
|
|
|
|
|
|
| |
The install script calls a service restart at build, this failed
if the stop action in the init script doesn't check for the
existence of the PIDFILE first, so check.
|
|
|
|
|
| |
This is required to build some of the Perl modules pulled in by the
addition of `Net::Amazon::S3`.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This includes four containers: app, memcached, nginx, and postgres.
The preinit script is used at container startup to ensure the database
is initialised. Includes a volume for the Postgres database to permit
persistence. Also sets the `PGDATA` variable to a subdirectory to
support optional use of a filesystem mount.
The repo/branch can be specified at build time.
If `SUPERUSER_EMAIL` and `SUPERUSER_PASSWORD` are set when the FMS
container starts the preinit script will pass these to
`bin/createsuperuser` when it starts up. These have been set to test
values in the supplied Docker Compose configuration.
Reverse proxy issue
===================
If nginx and fms were on the same machine, ReverseProxy would
automatically be in use, but via docker containers they are not. Do we
need to force it to be switched on? Let's see. There are four possible
options, with their outcome:
* port not in Host, ReverseProxy not in use
Anything using the automatically-generated base instead of BASE_URL uses
port 9000, meaning those links don't work.
* port not in Host, ReverseProxy in use
Anything using the automatically-generated base instead of BASE_URL uses
port 80, meaning those links don't work (they would if you had
docker-compose listen on port 80, being then a similar situation to e.g.
the AMI image).
* port in Host, ReverseProxy not in use
This works *unless* the port is 80, just to be contrary to the above; in
that case it is stripped and :9000 is put back on, meaning those links
again don't work. I realise we use 8000, but would be confusing if
someone tried it out.
* port in Host, ReverseProxy in use
This works in all scenarios, and thus is what we go with.
|
|
|
|
|
|
|
| |
- Adds support for additional variables intended to control when to
install postfix and postgres.
- Skips nginx setup and integration when performing a docker build.
- Don't print usage during docker build
|
| |
|
|
|
|
|
|
|
| |
Previously we assumed that any memcache instance would be running on
the local loopback interface. This commit makes this configurable with
a `MEMCACHED_HOST` option. If left unset, this will default to
`127.0.0.1`.
|
| |
|
|
|
|
|
| |
This also can set up users so that the admin
"Log user out" function works correctly.
|
| |
|
|
|
|
|
| |
This can optionally disable appcache for superusers which can be handy
in development.
|
| |
|
| |
|
|
|
|
| |
A confirmation code is sent via Twilio to be entered on the site.
|
| |
|
|
|
|
| |
If set to 1, this restricts all pages on the site to logged-in users.
|
|
|
|
| |
In the absence of making any changes. Fixes #1739.
|
|
|
|
|
|
|
| |
Given a set of config files of the format `conf/general-{cobrand}.yml`
this script lets you easily create and recreate a symlink at
`conf/general.yml` that points to the cobrand config of your choice. The
test suite also then uses this naming convention.
|
|
|
|
|
|
| |
Now that MapIt is https only the proxy pass URLs need to be https
otherwise we proxy back the 301 redirect and various bits of the
JavaScript fail the pre-flight CORS check.
|
|
|
|
|
| |
These two packages were previously installed as a dependency of
postgresql-server-dev-all, but are no longer on stretch.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Email::Send is long deprecated and uses submodules that no longer work
correctly (e.g. Net::SMTP::TLS breaks with recent IO::Socket::SSL). We
create an Email::Sender subclass to perform the same functionality and
this also simplifies the email code with simpler envelope handling.
Bundle Email::Sender::Transport::SMTP to include fix from
https://github.com/rjbs/Email-Sender/issues/46
|
| |
|
| |
|
|
|
|
| |
This makes it easier to perform manual testing of cobrands.
|
|
|
|
|
| |
If they are absolute already, do nothing.
Switch a couple of uses to Path::Tiny as well.
|
|
|
|
| |
Fixes #1313.
|
|
|
|
|
|
|
|
| |
This allows multiple test suites to run simultaneously (beforehand, a
second run would overwrite the same config file and lose its database
connection).
Clean up the created config file on exit.
|
|
|
|
|
|
|
|
|
| |
- Adds is_superuser flag to User
- Logged-in user must be a superuser or have from_body set in order to access
anything within /admin
- has_permission_to on a superuser will always return true
- Only superusers can create/grant superusers
- New `createsuperuser` command for creating superusers
|
|
|
|
|
| |
Tidy up use of absolute URLs when in the admin.
Have the 404 handler spot static files in admin as a fallback.
|
|
|
|
|
| |
Have a generic package install file that works on Debian wheezy and
jessie, and Ubuntu precise, trusty and xenial. Drop Debian squeeze.
|
|
|
|
|
|
|
|
| |
Move to using libsass via CSS::Sass, and stop using compass, supplying
any used mixins directly. This removes the need for any ruby/gem based
installation, and greatly increases the speed of compilation. make_css
is also enhanced, bringing in the file monitoring previously done by a
separate script and improving its dependency monitoring.
|
|
|
|
| |
Fixes #1286.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Rather than hardcoding domain names, add a SECURE_PROXY_SSL_HEADER
variable that provides a trusted HTTP header and value that can be used
to determine if we're behind a HTTPS proxy.
|
|
|
|
| |
Remove the old CrossSell code. Fixes #972.
|
|
|
|
|
|
| |
Instead, add it if not present at the negotiation stage. Even if not
negotiated, we currently need it to be present for the in_gb_locale()
calls to work.
|
|
|
|
| |
This will be used by the installation script. Fixes #995.
|
|
|
|
|
| |
Call the necessary boilerplate in each script so you can call them
directly. Remove boilerplate from files that don't need it.
|
|
|
|
|
| |
This means that e.g. SMTP authentication is used when set up by all
emails, not just non-cron ones. Fixes #988.
|
|
|
|
| |
Fixes #786.
|
| |
|
|
|
|
|
| |
After the changes in b3c664b, these two lines need to be called with the
cron-wrapper.
|
|
|
|
|
|
| |
Try and save other people the potential pain of installing SOAP::Lite;
only UK FixMyStreet and Zurich geocoder use it, so set it as an optional
feature in the cpanfile instead.
|
|
|
|
|
|
|
|
| |
Switching to bundler saves confusion about gem paths when running
sass/compass to compile the CSS.
Trusty can use precisely the same packages as precise, with a few tweaks
to generalise the contents.
|