Commit Graph

24 Commits

Author SHA1 Message Date
Lucas Bickel c29285ae48 Vagrant Debian support (and experimental CentOS)
This changes the Vagrant setup to support multiple installations as multiple
boxes. In addition to Ubuntu Vagrant can now be used to install on Debian
as well as on CentOS.

I took the chance to clean up the .deb install a bit and backported analyzer
and celery to SysV proper so it runs there. Some of the distro specfics were
moved to the install script from the python setup scripts to acheive this.

For the CentOS support I added a rather involved OS prepare script. In the
long term this will be added to the preparing-the-server docs we already have.

I had to switch the default port to http-alt (8080). On CentOS 9080 is registered
for ocsp and getting it to work for apache without hacking SELinux is hard. I
think 8080 is the RFC way to go anyhow. If anyone want to override this it
should be rather easy using the --web-port arg and by hacking Vagrantfile.

The PyOpenSSL code has been refactored for all the distros that the Vagrantfile
now supports.

As far as my checks go, I tried this code with all the distros, uploaded a track
and downloaded a unicode and a ssl podcast and was able to listen to them
in each case.

In the experimental CentOS case, the UI is not up to spec since services
need to get scheduled through systemctl and the status overview (ie. on the /?config page)
do not work properly. They need to be as follows:

```
sudo systemctl start airtime-playout
sudo systemctl start airtime-liquidsoap
sudo systemctl start airtime_analyzer.service
sudo systemctl start airtime-celery.service
```
2017-03-12 13:42:22 +01:00
Lucas Bickel 9b3d0c90da mostly run analyzer tests on travis
* [x] regonfigured the build matrix with more php jobs and a separate python job (we can add more python jobs later)
* [x] run tests on travis' trusty beta container (it's closer to what we need anyway)
* [x] install packages needed for analyzer tests in build env
* [x] added docs on how to run nosetests locally
* [x] don't run initctl in analyzer setup so setup can also be used on travis (and add it to the install script directly)
* [x] ignore replaygain checks on travis (it has proven quite impossible to get the needed python-gi module to work in the provided virtualenv)

I tried a lot of solutions to get the replaygain checks to run. I needed to decide that this has gone far enough, maybe someone who is more of a pythonista than me can take a crack at it and get it solved. Even without running those tests on CI/CD there are still plenty others.

This PR only has parts of what are needed for getting python tests running on travis as per #15. I only took a quick shot at anything not analyzer and figured I would not be able to "fix" them without digging a bit deeper (ie. also getting rid of std_err_override).
2017-03-03 20:38:27 +01:00
Albert Santoni fc51e63214 Fix typo in airtime_analyzer setup.py 2015-10-30 17:13:12 -04:00
Albert Santoni 76f202106b Defensive coding against Silan bugs and bump to Mutagen 1.31 2015-10-30 17:12:13 -04:00
Duncan Sommerville 4c797cf100 Update installer to work with saas branch 2015-06-23 19:02:55 -04:00
Albert Santoni c7aa6b3e5e airtime_analyzer: use requests >= 2.7.0 2015-05-20 10:36:55 -04:00
Albert Santoni 3d8cd8e927 Added daemon dependency back in for airtime_analyzer 2015-05-19 13:45:08 -04:00
drigato 134ade877c Merge branch 'cc-5709-airtime-analyzer' into cc-5709-airtime-analyzer-cloud-storage
Conflicts:
	airtime_mvc/build/sql/schema.sql
2015-01-22 15:48:34 -05:00
Albert Santoni 6ebe8ec6c8 Pin python-daemon to 1.6 because 2.0.3 breaks setuptools 2015-01-22 12:42:05 -05:00
drigato 8d914bcd13 SAAS-529: Replace Apache Libcloud with Python-Boto SDK 2015-01-06 15:44:34 -05:00
drigato e7a742dbf4 Fixed merge error 2014-12-12 09:38:24 -05:00
drigato 29d3d877ab Merge branch 'cc-5709-airtime-analyzer' into cc-5709-airtime-analyzer-cloud-storage
Conflicts:
	python_apps/airtime_analyzer/airtime_analyzer/analyzer_pipeline.py
	python_apps/airtime_analyzer/setup.py
2014-12-12 09:36:27 -05:00
Albert Santoni 4dd2768755 ReplayGain analysis in airtime_analyzer using python-rgain
* Implemented Replaygain analysis for Ogg Vorbis, MP3, MP4, and FLAC
  using python-rgain
* Added unit tests for ReplayGainAnalyzer
* Squashed stderr output in ReplayGainAnalyzer and CuePointAnalyzer
* Clean up
2014-12-11 14:12:41 -05:00
drigato f1fa4929ae Merge branch 'cc-5709-airtime-analyzer' into cc-5709-airtime-analyzer-cloud-storage
Conflicts:
	python_apps/airtime_analyzer/setup.py
2014-11-12 14:51:18 -05:00
Albert Santoni b324031ee6 Disable those new requirements because pip requires gcc to install them 2014-11-11 18:41:09 -05:00
Albert Santoni 63b357f0ee Updated requirements for airtime_analyzer to make python-requests
support SNI properly
2014-11-11 11:18:55 -05:00
drigato ecc0225ff5 Added apache-libcloud dependency to airtime_analyzer 2014-11-07 12:49:10 -05:00
Albert Santoni c11e39f933 Fixed python-magic dependency 2014-04-30 18:46:37 -04:00
Albert Santoni 26a39ed2db CC-5823: Airtime Analyzer: Wav file uploading fails with zero length and
empty mime

* Fixed
2014-04-30 18:32:17 -04:00
Albert Santoni f2ce77fecb Remove python-magic 2014-04-23 14:20:48 -04:00
Albert Santoni b02dc45a53 CC-5709: Airtime Analyzer
* Fixed airtime_analyzer setup script
2014-04-04 19:46:59 -04:00
Albert Santoni 20b056c9f0 CC-5709: Airtime Analyzer
* Added upstart script for starting on bootup
2014-04-04 19:09:46 -04:00
Albert Santoni 58a38ffd3a CC-5709: Airtime Analyzer
* Added unit test coverage report stuff
* Added more unit tests
* 98% test coverage :-)
* Fixed a few bugs and removed some dead code
2014-03-26 15:06:48 -04:00
Albert Santoni a6a64a2b9e CC-5709 / CC-5705 : Airtime Analyzer
* Finished the skeleton of the airtime_analyzer service.
* Basic round-robin, reliable AMQP messaging works.
* Using multiprocess arch so the daemon survives analyzer crashes and
  avoids failures propagating to other nodes.
* Basic metadata extractor using Mutagen is done.
* HTTP requests to the File API to are next to come...
2014-03-05 12:15:25 -05:00