Commit Graph

356 Commits

Author SHA1 Message Date
Lucas Bickel 9e05e91dde Add empty default Facebook config
This will get rid of the sad tape error on the facebook widgets page `/embeddablewidgets/facebook`. We will probably end up having to document how to set up facebook properly, but I'd like to take care of that while I'm testing against real facebook.
2017-03-05 14:13:01 +01:00
Robb Ebright 86b1fcbf7c Added sample cloud_storage.conf to build dir and install script, changed production dir to symlink, added libretime ASCII art logo 2017-03-04 19:44:01 -05:00
Lucas Bickel c7ab886d2a Add default soundcloud config 2017-03-04 12:33:37 +01:00
Lucas Bickel 7b04f413a0 Remove zend dep check from status and config output
It's LibreTime's responsability to ensure this (ie in packages...) and the user should not need to know about this.
2017-03-02 14:31:51 +01:00
Lucas Bickel 21a319767f Fix missing AMQPConnection errors in setup
Also fixes them elsewhere, apart from having switched to a vendorized version, I also used one that is already namespaced.

The easy way out here is to use it in the namespaced fashion, it is only used in a few places and I know the library well enough to be certain that nothing much changed apart from the namespacing.
2017-03-02 12:38:44 +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 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
drigato 14104a93ae SAAS-1080: Station podcast feed 2015-10-19 11:54:53 -04:00
drigato c166b4f00e Merge branch 'saas-dev-publishing' into saas-dev-publishing-schema-change
Conflicts:
	airtime_mvc/application/models/airtime/Podcast.php
2015-10-14 11:04:41 -04:00
drigato cfb21f8425 Bunch of schema changes 2015-10-13 10:14:23 -04:00
Duncan Sommerville c3c4abdd0c Merge branch 'saas-dev' into saas-dev-publishing
Conflicts:
	airtime_mvc/public/css/dashboard.css
	airtime_mvc/public/css/styles.css
	airtime_mvc/public/js/airtime/library/library.js
	airtime_mvc/public/js/airtime/library/spl.js
2015-09-30 16:26:02 -04:00
drigato b00ac6750c Testing 2015-09-29 13:04:22 -04:00
Duncan Sommerville 99a5f7facb Merge branch 'saas-dev' of github.com:sourcefabric/airtime into saas-dev
Conflicts:
	airtime_mvc/build/sql/defaultdata.sql
2015-09-29 11:37:53 -04:00
Duncan Sommerville a75a9676f2 More robust solution for not showing what's new popup to new users 2015-09-29 11:28:20 -04:00
Albert Santoni 41cf4b389a Cleanup for defaultdata.sql 2015-09-29 11:03:19 -04:00
Albert Santoni f1c5a8b244 Fix the timezone/language picker and fix the What's New dialog popping up for new users 2015-09-29 09:19:33 -04:00
Duncan Sommerville 67c20630a3 UI revamp what's new dialog 2015-09-28 17:19:02 -04:00
drigato c587dcf4e4 Added extra fields to podcast table 2015-09-24 10:32:16 -04:00
drigato 3198d822bf SAAS-1058: Podcast table schema
Remove not null constraint on podcast_episodes file_id column
2015-09-21 14:51:32 -04:00
drigato 1445e85795 SAAS-1058: Podcast table schema
Changed podcast table column sizes
Added some podcast table column size validation
2015-09-20 12:06:51 -04:00
drigato 9a2e9d1b3b SAAS-1058: Podcast table schema
Renamed podcast_contents to podcast_episodes
Added new columns to podcast_episodes table
2015-09-18 09:51:44 -04:00
drigato 1a26679357 SAAS-1058: Podcast table schema
Add additional podcast table column - type
2015-09-15 14:00:26 -04:00
drigato 28493497fd SAAS-1058: Podcast table schema
SAAS-1059: Add description field to cc_files
2015-09-14 17:00:54 -04:00
Duncan Sommerville 37df86723d CC-6127 - Add 'Use station default' option to user settings timezone, don't set user timezone by default when creating the admin user 2015-09-01 16:10:33 -04:00
Duncan Sommerville d7d9a994d5 SAAS-948 - ShowBuilder redesign initial commit 2015-07-15 18:53:19 -04:00
Duncan Sommerville 5cb396e512 SAAS-923 - 2.5.14 schema upgrade to add partial unique index on cc_pref's keystr column (when subjid is null) 2015-07-06 18:03:44 -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 4c797cf100 Update installer to work with saas branch 2015-06-23 19:02:55 -04:00
Duncan Sommerville 89e3eaa986 Merge branch 'saas-dev' into soundcloud 2015-06-17 17:00:15 -04:00
Duncan Sommerville 92ad5bde6d Add fields to airtime.example.conf for compatibility, remove /etc/init scripts to prevent duplicate processes on startup 2015-06-17 14:49:12 -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 459f9494c3 Merge saas-dev into soundcloud 2015-06-10 16:08:52 -04:00
Duncan Sommerville 626489bb3b SAAS-853 - Celery backend for SoundCloud uploads 2015-06-10 15:04:49 -04:00
Duncan Sommerville b0b6e037ac CC-6046, CC-6045, CC-6047 - New SoundCloud implementation 2015-06-03 16:57:17 -04:00
Albert Santoni 11c6818e61 Merge branch '2.5.x-installer' into saas-installer-albert
Conflicts:
	.gitignore
	airtime_mvc/application/Bootstrap.php
	airtime_mvc/application/configs/conf.php
	airtime_mvc/application/controllers/SystemstatusController.php
	airtime_mvc/application/controllers/UpgradeController.php
	airtime_mvc/application/upgrade/Upgrades.php
	airtime_mvc/application/views/scripts/systemstatus/index.phtml
	airtime_mvc/build/airtime.conf
	airtime_mvc/build/sql/defaultdata.sql
	airtime_mvc/public/index.php
	airtime_mvc/tests/application/helpers/AirtimeInstall.php
	install_minimal/airtime-install
	install_minimal/include/airtime-constants.php
	install_minimal/include/airtime-copy-files.sh
	install_minimal/include/airtime-db-install.php
	install_minimal/include/airtime-initialize.sh
	install_minimal/include/airtime-install.php
	install_minimal/include/airtime-installed-check.php
	install_minimal/include/airtime-remove-files.sh
	install_minimal/include/airtime-upgrade.php
	python_apps/media-monitor/install/media-monitor-copy-files.py
	python_apps/monit/monit-airtime-generic.cfg
	python_apps/pypo/airtime-playout
	python_apps/pypo/install/pypo-copy-files.py
	python_apps/pypo/liquidsoap/generate_liquidsoap_cfg.py
	python_apps/pypo/liquidsoap/ls_script.liq
	python_apps/pypo/pypo/__main__.py
	python_apps/pypo/pypo/media/update/replaygain.py
	python_apps/pypo/pypo/media/update/replaygainupdater.py
	python_apps/pypo/pypo/media/update/silananalyzer.py
	python_apps/python-virtualenv/airtime_virtual_env.pybundle
	python_apps/python-virtualenv/requirements
	utils/airtime-check-system.php
2015-05-22 16:05:29 -04:00
drigato 220f21ab22 Merge branch 'saas' into saas-embed-player
Conflicts:
	airtime_mvc/application/configs/ACL.php
2015-03-31 17:44:14 -04:00
Albert Santoni 79d2ae12fb Added 2.5.12 upgrader and increased show/show instance description field
length
2015-03-31 12:38:42 -04:00
Albert Santoni d61b75f105 Added a working 4th stream 2015-03-03 16:08:53 -05:00
drigato 2905d0394b Merge branch 'saas-store-file-size-and-hash-in-db' of https://github.com/sourcefabric/Airtime into saas-store-file-size-and-hash-in-db 2015-02-19 10:35:07 -05:00
drigato e5d6797ce7 SAAS-596: Store file size and hash in database
Removed md5_hash column from cc_files since there is already a md5
column
2015-02-19 10:34:35 -05:00
Albert Santoni d0bd4bfe81 Merge branch 'saas' into saas-store-file-size-and-hash-in-db
Conflicts:
	airtime_mvc/application/modules/rest/controllers/MediaController.php
2015-02-18 19:29:45 -05:00
Albert Santoni dcac7ab652 Fixed a couple of bugs in the new /provisioning/create API 2015-02-18 12:21:15 -05:00
drigato 6ccc634782 SAAS-596: Store file size and hash in database
Updated schema and added filesize and md5_hash columns.
Changed getFileSize functions to return the value stored in the
database.
Removed getFileSize from the cloud storage classes.
2015-02-17 14:51:51 -05:00
Albert Santoni a2d8da617d Fixed everything about Airtime on Debian
* Added sysvinit scripts back in and cleaned them up
* service status now works correctly for all services
* Moved logging config files into install/ folders for the python_apps
* Fixed some small setup.py problems in the various python_apps
* Gave each python app a better bin/ script which doesn't fork, which lets
  service status work automagically.
2015-02-13 16:06:59 -05:00
Albert Santoni d46f4a52eb Installer tweaks and a pypo bugfix
* Moved all the remaining DEB requirements into the requirements files
* The installer should now be distro agnostic (unless you ask it to
  install third-party deps for you)
* Fixed pypo not being able to find replaygainupdater
* Tweaked a bunch of styling for the installer
2015-02-10 18:06:46 -05:00
Duncan Sommerville 875a9dfd8b CC-5990, CC-5991 - Python cleanup, removed need for /usr/lib/airtime 2015-01-27 18:43:36 -05:00
drigato ca9750f415 Merge branch 'cc-5709-airtime-analyzer-cloud-storage' into cc-5709-airtime-analyzer-cloud-storage-saas
Conflicts:
	airtime_mvc/application/Bootstrap.php
	airtime_mvc/application/configs/ACL.php
	airtime_mvc/application/controllers/ApiController.php
	airtime_mvc/application/controllers/plugins/Acl_plugin.php
	airtime_mvc/application/forms/GeneralPreferences.php
	airtime_mvc/application/modules/rest/controllers/MediaController.php
	airtime_mvc/application/views/scripts/form/preferences_general.phtml
	airtime_mvc/application/views/scripts/form/support-setting.phtml
	airtime_mvc/build/sql/schema.sql
2015-01-23 11:32:45 -05: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 230cdcccb4 Merge branch '2.5.x' into cc-5709-airtime-analyzer
Conflicts:
	CREDITS
2015-01-22 11:29:38 -05:00
Duncan Sommerville b58891f1fa Added additional checks to ensure services are running properly 2015-01-20 13:42:41 -05:00
Duncan Sommerville a0193f6d39 Fix to overly optimistic service reporting 2015-01-19 17:40:21 -05:00
Duncan Sommerville c5a60d2f09 Last updates before 2.5.2 RC, mainly small fixes for Ubuntu Precise 2015-01-19 15:05:13 -05:00
Albert Santoni b1d3dece48 Merge branch '2.5.x-installer' of github.com:sourcefabric/Airtime into 2.5.x-installer 2015-01-16 17:27:59 -05:00
Albert Santoni c03dd38c00 Merge branch '2.5.x' into 2.5.x-installer
Conflicts:
	airtime_mvc/application/Bootstrap.php
	airtime_mvc/application/models/Show.php
2015-01-16 17:27:52 -05:00
Duncan Sommerville c22f2cd5f0 Clean up readability of installer 2015-01-16 17:20:50 -05:00
Duncan Sommerville 4552089c19 Fixes to install & uninstall procedure 2015-01-15 17:33:47 -05:00
Duncan Sommerville 53b93d01ef Fixes for code review https://github.com/sourcefabric/Airtime/pull/84 2015-01-15 16:44:49 -05:00
Duncan Sommerville 791466b023 Fixes for code review https://github.com/sourcefabric/Airtime/pull/84 2015-01-15 16:33:33 -05:00
Duncan Sommerville 36c5d22e25 Made the process of switching from an old (pre-2.5.2) install to the new version smoother 2015-01-15 13:48:40 -05:00
Albert Santoni ee9163fa8e 2.5.2: Reorganize upgrade path so that 2.5.2 contains the show art schema changes
* Also bump the system_version number to 2.5.2. This will be deprecated sooner or later...
2015-01-15 12:42:36 -05:00
Duncan Sommerville 5e22f929c7 Reverted commit mistakenly changing file modifiers to 755 2015-01-14 20:45:03 -05:00
Duncan Sommerville 380ec41201 Removed Skip this step buttons in web installer, removed opus plugins from requirements.apt files 2015-01-14 18:07:33 -05:00
Duncan Sommerville 9e90e8af63 Added cc_show image_path and cc_show_instances description fields to schema 2015-01-13 17:07:23 -05:00
Duncan Sommerville ec601f916c Add preventDefault call to final setup page 2015-01-12 14:58:15 -05:00
Duncan Sommerville d07195f048 Rework redirect to config page at the end of the web install 2015-01-12 14:40:22 -05:00
Duncan Sommerville 23f33cd8da Reorder final setup steps 2015-01-12 13:41:39 -05:00
Duncan Sommerville 2b882cc313 Reorder final setup steps 2015-01-12 12:45:52 -05:00
Duncan Sommerville 0fcac545e6 For now, just prompt users to start background services at the end of the install process 2015-01-12 10:53:31 -05:00
Duncan Sommerville 301c0eb4b0 Updated config check to check whether background services are actually running 2015-01-08 11:45:43 -05:00
Duncan Sommerville f4c5cf1353 Added virtualenv back into install process 2015-01-05 16:41:03 -05:00
Duncan Sommerville 75c2a4a18b More work on media-monitor and pypo install process 2014-12-19 13:49:33 -05:00
Duncan Sommerville 9c324c1b6f Updated configuration checklist 2014-12-19 11:58:47 -05:00
Duncan Sommerville 32f40f3dc8 Updated configuration checklist to include running services 2014-12-19 11:44:23 -05:00
Duncan Sommerville 8ec6eb0140 More work on monitless installer 2014-12-16 15:02:53 -05:00
drigato ff0a685243 Updated propel models 2014-12-16 14:20:28 -05:00
Duncan Sommerville 4dfd49d12c Initial work on monitless installation 2014-12-16 12:24:41 -05:00
drigato 09c30bde1b Regenerated Propel models because some fields and methods were missing. 2014-12-16 10:53:39 -05:00
Duncan Sommerville 4583be981d Updated installer forms 2014-12-15 09:51:25 -05:00
Duncan Sommerville ccd515e7d6 Rewrote database-setup to use PDO and be overall more readable 2014-12-11 12:54:50 -05:00
Duncan Sommerville f5b4928538 More work on web installer 2014-12-09 17:48:16 -05:00
Duncan Sommerville 9fed113f74 More work on setup/installation process 2014-12-03 18:04:47 -05:00
drigato cf9eabbc74 Merge branch 'cc-5709-airtime-analyzer-cloud-storage' into cc-5709-airtime-analyzer-cloud-storage-saas
Conflicts:
	airtime_mvc/application/Bootstrap.php
	airtime_mvc/application/models/Schedule.php
	airtime_mvc/application/modules/rest/controllers/MediaController.php
	airtime_mvc/build/sql/schema.sql
	python_apps/airtime_analyzer/airtime_analyzer/analyzer_pipeline.py
2014-12-03 13:35:32 -05:00
Duncan Sommerville 6fd3acf651 More work on setup form 2014-12-02 11:17:08 -05:00
Duncan Sommerville acaf47c592 More work on web setup form 2014-12-01 15:49:53 -05:00
Duncan Sommerville 6838694a8b More work on web setup form 2014-11-28 16:48:08 -05:00
Duncan Sommerville 63e51f7c7c More work on web setup form 2014-11-28 15:57:23 -05:00
Duncan Sommerville b8cb2deb23 More work on web setup form 2014-11-28 15:53:47 -05:00
Duncan Sommerville 823b89e84e More work on web setup form 2014-11-28 15:50:35 -05:00
Duncan Sommerville 3f0a0eff35 Initial work on web setup form 2014-11-28 15:44:41 -05:00
Duncan Sommerville 8f46b4dca7 More work on new installer 2014-11-28 15:30:11 -05:00
Duncan Sommerville 0b77222013 More work on WordPress style installer 2014-11-27 19:10:23 -05:00
Duncan Sommerville d2f41eb8be New files for install process 2014-11-27 18:48:03 -05:00
Duncan Sommerville 4a1354c45f Work on new WordPress style install process 2014-11-27 18:47:05 -05:00
drigato 6cb993cc80 SAAS-504: Store provider in db 2014-11-27 15:44:53 -05:00
drigato e24b4f43fd Made AirtimeAnalyzerServer.read_config_file static so CloudStorageUploader can use it.
Reverted MessageListener.msg_received_callback and MessageListener.spawn_analyzer_process back to static methods.
Moved cloud storage settings out of MessageListener and into CloudStorageUploader
2014-11-05 16:25:11 -05:00
drigato 6adb33e89b Made AirtimeAnalyzerServer.read_config_file static so CloudStorageUploader can use it.
Reverted MessageListener.msg_received_callback and MessageListener.spawn_analyzer_process back to static methods.
Moved cloud storage settings out of MessageListener and into CloudStorageUploader
2014-11-05 16:24:03 -05:00
drigato 0a45de7fba Merge branch 'saas' into cc-5709-airtime-analyzer-cloud-storage-saas
Conflicts:
	.gitignore
	airtime_mvc/application/configs/airtime-conf.php
	airtime_mvc/application/configs/classmap-airtime-conf.php
	airtime_mvc/application/models/RabbitMq.php
	airtime_mvc/application/models/Schedule.php
	airtime_mvc/application/models/StoredFile.php
	airtime_mvc/application/models/airtime/map/CcShowInstancesTableMap.php
	airtime_mvc/application/models/airtime/map/CcShowTableMap.php
	airtime_mvc/application/models/airtime/om/BaseCcShow.php
	airtime_mvc/application/models/airtime/om/BaseCcShowInstances.php
	airtime_mvc/application/models/airtime/om/BaseCcShowInstancesPeer.php
	airtime_mvc/application/models/airtime/om/BaseCcShowInstancesQuery.php
	airtime_mvc/application/models/airtime/om/BaseCcShowPeer.php
	airtime_mvc/application/models/airtime/om/BaseCcShowQuery.php
	airtime_mvc/application/modules/rest/Bootstrap.php
	airtime_mvc/application/modules/rest/controllers/MediaController.php
	airtime_mvc/build/sql/schema.sql
	airtime_mvc/public/index.php
2014-11-03 12:29:58 -05:00
drigato f775bedb49 Stopped returning filesize in delete functions.
Created an Amazon S3 wrapper class around Zend_Service_Amazon_S3 to add more functionality.
2014-10-21 16:05:50 -04:00
drigato 544d20ebc2 Replaced spaces with dashes in resource_id generation
Fixed track preview and download signed urls
Removed cloud_storage_deleter.py file
Changed cloud_storage settings in airtime.conf
2014-10-17 17:16:53 -04:00
drigato a10e287368 Fixed a fresh install bug that wasn't using composer installs.
Fixed a cloud file download bug where it was downloading the wrong track.
Working on amazon s3 signed urls for private objects.
Added cloud storage configuration to install script.
2014-10-14 16:54:58 -04:00