Commit graph

15021 commits

Author SHA1 Message Date
Lucas Bickel
01a954481c Merge pull request #10 from radiorabe/feature/config-rewrite-airtime-saas-folder
Rewrite config from /etc/airtime-saas to plain /etc/airtime
2017-03-04 15:56:29 +01:00
Lucas Bickel
96eb746f18 Merge pull request #9 from radiorabe/feature/missing-arg
Add missing argument to playlistNotFound call
2017-03-04 15:48:22 +01:00
Lucas Bickel
e55b95cc3b Merge pull request #7 from radiorabe/feature/turn-off-live-chat-per-default
config to disable live chat
2017-03-04 15:48:00 +01:00
Lucas Bickel
c607150fcd Merge pull request #6 from radiorabe/feature/disable-whmcs-per-conf
Problem: Failed logins always try log in against legacy upstream
2017-03-04 15:47:45 +01:00
Lucas Bickel
d03a718dd6 Merge pull request #29 from radiorabe/feature/mkdocs
Hotfix: Missing config change
2017-03-04 15:47:15 +01:00
Lucas Bickel
28a1c33d7b Hotfix: Missing config change 2017-03-04 15:41:14 +01:00
Lucas Bickel
a4698a28e5 Merge pull request #19 from ergonlogic/mkdocs
Add basic Mkdocs config and initial docs.
2017-03-04 15:32:25 +01:00
Lucas Bickel
fba5ce1ce5 Make examples copy/paste friendly 2017-03-04 15:30:05 +01:00
Lucas Bickel
8cc262ae11 Remove background-color completely
We can revisit this but I want to merge this ASAP since it's just too nice to wait.
2017-03-04 15:27:21 +01:00
Lucas Bickel
fba9a13214 Add testing.md to docs 2017-03-04 15:17:26 +01:00
Lucas Bickel
1fddc41868 Configure .travis.yml for mkdocs 2017-03-04 14:53:35 +01:00
Lucas Bickel
4f9a9e651e Merge branch 'master' into feature/mkdocs 2017-03-04 14:20:48 +01:00
Christopher Gervais
203716ea50 Clarify some docs and improve code highlighting. 2017-03-03 13:28:36 -05:00
Lucas Bickel
e28ad471f9 Rewrite config from /etc/airtime-saas to plain /etc/airtime
This is the results of sed -i -e 's|/etc/airtime-saas/|/etc/airtime/|' `grep -irl 'airtime-saas' airtime_mvc/ python_apps/` :P

It might need more testing, the airtime-saas part never really made sense, zf1 has environments for that, ie you would create a saas env based on production for instance.

I beleive legacy upstream was using this to share configuration between customers (ie. analyser runs only once and writes to a shared S3 bucket). I assume they mount the airtime-saas folder onto individual customers instances with a global config. Like I said, I don't feel that this makes sense since all it does is make hacking at the configs in airtime-saas a bit easier. A serious SaaS operation should be using something like puppet or ansible to achieve this.
2017-03-03 15:57:41 +01:00
Christopher Gervais
91c581e678 Add basic Mkdocs config and initial docs. 2017-03-03 09:43:14 -05:00
Lucas Bickel
4875bc37a8 Add missing argument to playlistNotFound call
Was on 2.5.x as 7dbf4cf5d2d37057e1f5ab72cb12ffcc5ddc1ccb
2017-03-03 15:34:21 +01:00
Lucas Bickel
8fbf4fec8b config to disable live chat
Problem: Live Chat points back to legacy upstream and I do not believe we can let them do support for us ;)

Solution: Deactivate live chat through constants.php so it never gets checked.

This is like 34db703381 but removes one more sql call and makes it easy to reactivate should anyone want to use the feature in future.
2017-03-03 15:33:19 +01:00
Lucas Bickel
10532dc4e8 Problem: Failed logins always try log in against legacy upstream
Solution: Make the login fallback optional and deactivate it in the default config.

I'm leaving the code in here mostly because I want to revisit it and make it modular so I can later on plug my own FreeIPA things :)
2017-03-03 15:32:31 +01:00
Robb
4557395a86 Merge pull request #14 from radiorabe/feature/phpunit
Vendorize ZF1, fix PHPUnit and configure travis
2017-03-03 08:10:27 -05:00
Lucas Bickel
39fb738945 Always log locally during test run 2017-03-02 16:45:34 +01:00
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
51960a891f Manual loading fix for more classes in Zend_ pseudo-ns 2017-03-02 14:40:29 +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
4a7f3ea001 Fix preference page with customer ImageSize plugin
As noted in the code, this was getting loaded in a rather special way.
2017-03-02 14:29:19 +01:00
Lucas Bickel
693f1f6e51 Remove system zf1 from test include path 2017-03-02 13:57:56 +01:00
Lucas Bickel
9735e4cfd7 Remove zf1 requires from installer
We use it from vendor/ so there is no need to install it any more.
2017-03-02 13:47:07 +01:00
Lucas Bickel
844e93576c Update install docs with ubuntu example
This is the way around having to set a password on ubuntu.
2017-03-02 13:34:37 +01:00
Lucas Bickel
021bf38c1b Remove phing StringHelper dependency
I had only really looked for requires previously, this one caught me off guard as using an include is quite anachronistic.

I did some digging and figured out, that this is the only occurence of such phing use I can find.
2017-03-02 13:25:50 +01:00
Lucas Bickel
b79ab33de2 Install to /usr/share/airtime/php per default
The added php subdir lets us keep the vendor and airtime_mvc in the same relative position to each other while keeping everything in /usr/share/$name.

This does not yet take care of cleaning any files left at the old locations, taking care of those would make this installer even more bloated and should be the responsability of apt packages.
2017-03-02 13:13:34 +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
7f3f420763 Regression: travis db is on localhost
This is one of the "small" things I need to take care of on my local env. Once the value is changeable through more than just the config file, I'll won't be touching these in my docker envs as much.
2017-02-28 12:29:40 +01:00
Lucas Bickel
0d2e8b3b3e Update testing docs
Add the -h localhost to psql command since ubuntu seems to prefer that.
2017-02-28 12:26:57 +01:00
Lucas Bickel
4936b16bc1 Load autoloader early so setup can use it
Also fixes a @include_once check that is now much easier.
2017-02-28 12:25:24 +01:00
Lucas Bickel
1ca47d67d5 Use local configuration in tests
This way the tests should really run out of the box with what is described in TESTING.md.
2017-02-28 12:16:03 +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
Robb
95ce7ef880 Merge pull request #1 from radiorabe/feature/init-community
Problem: LibreTime needs initializing
2017-02-22 22:31:04 -05:00
Lucas Bickel
4b4dc313f5 Remove unlinked reference to taiga 2017-02-22 10:32:47 +01:00
Lucas Bickel
1464a0f513 Create CONTRIBUTING.md
This adds a nice link on the issue and pr forms and is mostly pinched from https://github.com/update/update. I added clear references to C4 and our CoC and we can add more stuff like coding guidelines later on.
2017-02-14 22:51:31 +01:00
Lucas Bickel
725da17bb7 Implement C4
As discussed on <https://tree.taiga.io/project/robbt-libreairwaves-airtime-fork/issue/23>...

I am implementing the C4 standard by linking to the document in our main README.md.
2017-02-14 14:37:35 +01:00
Lucas Bickel
5b6114b140 Implement Semantic Versioning
As per <https://tree.taiga.io/project/robbt-libreairwaves-airtime-fork/issue/22> I am implementing semantic versioning. The docs in README is all that is needed, lets hope this works out to get a sustainable release process up and running fast.
2017-02-14 14:37:27 +01:00
Lucas Bickel
efa318b51e Add Contributor Code of Conduct
As stated in <https://tree.taiga.io/project/robbt-libreairwaves-airtime-fork/issue/22> I am adding a proper CoC to the project. Please direct changes to the CoC directly to the linked repo.
2017-02-14 14:37:19 +01:00
Lucas Bickel
c8942acadb Very basic README.md
That we can override the existing Sourcefabric README with an md extension comes in handy for our case.
2017-02-14 14:37:06 +01:00
Robb Ebright
276a69aa1b Porting commits from downloaded zip file of saas-dev branch 2017-02-13 18:22:22 +01:00
Albert Santoni
db596d54b5 Fix bug in my last commit 2015-12-11 12:29:59 -05:00
Albert Santoni
2594105a5e Handle unknown plan types more gracefully with the bandwidth limit 2015-12-11 10:19:11 -05:00
Albert Santoni
e3b0a93ebb Only suspend over bandwidth when station is active 2015-12-09 13:03:41 -05:00
Albert Santoni
09316041c6 Fix unnecessary HTTPS redirect to reduce traffic 2015-12-08 17:47:07 -05:00
Albert Santoni
c5429df59c Holiday promo update for billing page 2015-12-08 15:44:41 -05:00
Albert Santoni
a26f1a70e3 Respawn liquidsoap and pypo indefinitely if they fail to launch. Throttled it though. 2015-12-04 15:56:06 -05:00
Albert Santoni
91e1252b86 SAAS-1239: Listener stats with Shoutcast not working 2015-12-04 15:05:17 -05:00