- check if api schema is outdated
- do not cancel in progress workflow
Since this workflow commit to an external repo, it might squash multiple changes into a single commit.
- dispatch each schema update to client repo
- cache pip dependencies
This will not change the default mount point if you are upgrading.
BREAKING: The default stream mount point changed from `airtime_128` to `main`. Be sure to updates your clients accordingly.
This fixes the inital schema creation to match as if the old migrations
were always run.
The third_party_track_references.file_id field should not have a not
null constraint while have a default value to 0.
- change default storage path to /srv/libretime
- remove music dirs table
- use /tmp for testing storage
- storage dir should always have a trailing slash
- remove unused root packages.ini
- write config to yaml file
- allow to set public_url during install
- force icecast start right after package install
- move config file in place at the end of installation
BREAKING CHANGE: The bash installer has been rewritten, the flags and
options changed, please run `./install --help` to get more details.
Fixes#1574
BREAKING CHANGE: The `general` section in the config schema has changed: the `general.base_*`, `general.protocol` and `general.force_ssl` configuration fields have been replaced with a single `general.public_url` field. Be sure to use a valid url with the new configuration field.
- add django settings module documentation
- use default for previously required fields
BREAKING CHANGE: The API command line interface require the
configuration file to be present. The default configuration file path is
`/etc/airtime/airtime.conf`
* feat(legacy): allow custom port for database connection
- fix heredoc for php72
* update test config db section
* update sample config db section
* update api db config
* use defaults for database config section
* update documentation
* more documentation for migration
* Add shared python format-check target
* Add .format-check to api lint target
* Format api code with makefile format target
* Add .format-check to tools lint target
* Add .format-check to analyzer lint target
* Format analyzer code with makefile format target
* Add .format-check to celery lint target
* Add .format-check to api_client lint target
* Format api_client code with makefile format target
* Add .format-check to playout lint target
* Run CI linting in parallel
* Disable isort in pre-commit
Used to generate list of packages dependencies
for different distributions, and should improve
dependencies management by having them in each project.
This tools should gather the reason why a dependency is present,
so one can remove it when unused.
Rename deps script to packages
Move installer/packages to scripts and write tests
Remove packages-list make target
General:
* Moved pypo author info into one file
* Added two database columns in schedule table: "schedule_group_played"
and "media_item_played".
API clients:
* Created get_liquidsoap_data() function which allows you
to give arbitrary data to liquidsoap.
* Added documentation
* Renamed functions to make it more obvious what is happening
pypo_cli:
* Got rid of more constants that were not needed
* Created function set_export_source() to reduce code repetition
* Separated the downloading of the schedule from tracking what has
been played. The tracking info is now kept in a separate file.
This fixes the major bug that the playlist keeps restarting for
the first minute of playback.
* converted more print statements to debug statements
pypoTester:
* Now uses samples from the audio_samples directory, and schedules two
audio clips back-to-back.
Got rid of all the stuff related to GUNID hex-to-int conversion.
Commented out lots of functions that are either not in use or will
no longer work.
Pypo: made things more generic and pluggable, added documentation.
Added the PHP scripts to serve the right info back to pypo.
Changed the GUNID to a 32 hex string (MD5 value), there is no more
conversion between hex strings and bigints in the database anymore.
Added added the file extension to the file name.
Stored the complete path to the file in the database. This means that
linking doesnt need to create any files at all. (It used to create a
symlink to the file you were importing)
The structure and file naming should be fine - there are 4096 possibilities
for the first directory level, and even will a million files this is only
244 files per sub-directory. The GUID is fine for the file name