Commit Graph

23 Commits

Author SHA1 Message Date
Lucas Bickel 898a1ce545 Let soudcloud fail gracefuly when unconfigured
This makes general preferences look nice again, even when no soundcloud id and secret is configured (those don't belong us).
2017-03-02 14:47:16 +01:00
Lucas Bickel 625f92fe44 Vendorize ZF1, fix PHPUnit and configure travis
This a a rather large commit due to the nature of the stuff it is touching. To get PHPUnit up and running again I had to update some deps and I did so by vendorizing them. The vendorizing of zf1 makes sense since distros are already considering to drop it from their repos.

* [x] install vendorized zf1 with composer
* [x] load composer autoloader before zf1
* [x] Implement headAction for all Zend_Rest_Controller based controllers
* [x] switch to yml dataset to get around string only limitations of xml sets (also removed warning in readme)
* [x] use year 2044 as hardcoded date for tests since it is in the future and has the same days like previously used 2016
* [x] make tests easier to run when accessing phpunit directly
* [x] clean up test helper to always use airtime.conf
* [x] switch test dbname to libretime_test
* [x] test db username password switched to libretime/libretime
* [x] install phpunit with composer in a clear version (make tests easier to reproduce on other platforms)
* [x] remove local libs from airtime repo (most of airtime_mvc/library was not needed of in vendor already)
* [x] configure composer autoloading and use it (also removed requires that are not needed anymore)
* [x] add LibreTime prefix for FileNotFoundException (phing had a similar class and these are all pre-namespace style)
* [x] add .travis.yml file
* [x] make etc and logdir configurable with LIBRETIME_CONF_DIR and LIBRETIME_LOG_DIR env (so travis can change it)
* [x] slight cleanup in config for travis not to fail
* [x] add cloud_storage.conf for during test runs
* [x] rewrite mvc testing docs and move them to docs/ folder
* [x] don't use `static::class` in a class that does not have a parent class, use `__CLASS__` instead.
* [x] don't use `<ClassName>::class`, since we already know what class we want `"<ClassName>"` ist just fine.
* [x] fix "can't use method in write context" errors on 5.4 (also helps the optimizer)
* [x] add build status badge on main README.md

Fixes https://github.com/LibreTime/libretime/issues/4

The PHP parts of https://github.com/LibreTime/libretime/pull/10 get obsoleted by this change and it will need rebasing.

This also contains https://github.com/LibreTime/libretime/pull/8, the late static binding compat code was broken for no reason and until CentOS drops php 5.4 there is no reason I'm aware of not to support it. I inlined #8 since the test would be failing on php 5.4 without the change.

If you want to run tests you need to run `composer install` in the root directory and then `cd airtime_mvc/tests && ../../vendor/bin/phpunit`. For the tests to run the user `libretime` needs to be allowed to create the `libretime_test` database. See `docs/TESTING.md` for more info on getting set up.
2017-02-27 17:59:01 +01:00
Duncan Sommerville 7707378c2b Improve the publish service implementation 2015-11-16 16:18:29 -05:00
Duncan Sommerville 4f281a30ed Add SoundCloud update and download tasks to Celery backend; requires airtime-celery reinstall 2015-10-30 16:10:16 -04:00
Duncan Sommerville 0b1df6baf3 * SAAS-1084 - initial work on publishing API backend
* More work on automatic ingest
* Add automatic_ingest_timestamp column to ImportedPodcast
2015-10-20 19:03:34 -04:00
Duncan Sommerville 43e9fb59ce SAAS-1071 - more work on celery backend for podcasts; add upgrade to make file_id field in third_party_track_references nullable 2015-09-24 15:57:38 -04:00
Duncan Sommerville 55d5fc62a2 SAAS-1071 - more work on celery backend 2015-09-22 20:22:06 -04:00
Duncan Sommerville cf1de5fb66 SAAS-1071 - initial work on podcast celery backend; tweak SoundCloud service 2015-09-22 15:26:08 -04:00
Duncan Sommerville f9ace20075 Simplify third-party/celery/soundcloud implementation 2015-09-21 17:03:46 -04:00
Duncan Sommerville be39b6b7c0 * Initial podcast skeleton functionality
* Rename SoundCloud/Celery classes to fit conventions
* Small fixes to Table class functionality
2015-09-18 15:34:55 -04:00
Duncan Sommerville ff24976bed Fix up celery downloads a bit 2015-09-15 14:21:19 -04:00
Duncan Sommerville c8baa6e4b3 Merge branch 'saas-dev-publishing' into soundcloud
Conflicts:
	airtime_mvc/application/views/scripts/playlist/playlist.phtml
	airtime_mvc/application/views/scripts/playlist/smart-block.phtml
	airtime_mvc/public/js/airtime/library/spl.js
2015-09-15 14:03:11 -04:00
Duncan Sommerville dd09676f88 Hide celery user 2015-09-15 13:59:48 -04:00
Duncan Sommerville 04333aaa29 SoundCloud download initial commit 2015-07-16 11:27:27 -04:00
Duncan Sommerville d91b05a0ae SoundCloud - Add release_year metadata field and set default sharing and license types 2015-06-25 10:53:35 -04:00
Duncan Sommerville 67155b136a Add downgrade action to UpgradeController, fix SoundCloud schema and bugs 2015-06-24 18:38:04 -04:00
Duncan Sommerville adff664e87 Fix sending null fields to SoundCloud 2015-06-24 16:13:04 -04:00
Duncan Sommerville e44e0de534 Add fields to SoundCloud upload 2015-06-24 15:46:53 -04:00
Duncan Sommerville 6439bc9ad5 Add timestamp on SoundCloud upload success 2015-06-18 13:32:43 -04:00
Duncan Sommerville 8d2e476ff1 SAAS-868 - Refactor third party + celery workflow, implement locking on TaskManager 2015-06-16 15:10:08 -04:00
Duncan Sommerville 3902c8c746 Add SoundCloud delete functionality and fixes; implement TaskManager to run background jobs 2015-06-15 15:12:37 -04:00
Duncan Sommerville c1b5b53a16 Fix merge errors; use Celery status messages + handle fail case better 2015-06-10 17:11:42 -04:00
Duncan Sommerville 626489bb3b SAAS-853 - Celery backend for SoundCloud uploads 2015-06-10 15:04:49 -04:00