Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit dc0a1da
Showing
17 changed files
with
1,964 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
# Mediadrop for YunoHost | ||
|
||
Can not be installed on ARM | ||
|
||
### Version 1.0.0 (13/03/17) | ||
|
||
- Create script install |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
;; Test complet sans multisite | ||
auto_remove=1 | ||
; Manifest | ||
domain="domain.tld" (DOMAIN) | ||
path="/path" (PATH) | ||
admin="john" (USER) | ||
language="fr_FR" | ||
is_public="Yes" (PUBLIC|public=Yes|private=No) | ||
; Checks | ||
pkg_linter=1 | ||
setup_sub_dir=1 | ||
setup_root=1 | ||
setup_nourl=0 | ||
setup_private=1 | ||
setup_public=1 | ||
upgrade=1 | ||
backup_restore=1 | ||
multi_instance=0 | ||
wrong_user=1 | ||
wrong_path=1 | ||
incorrect_path=1 | ||
corrupt_source=0 | ||
fail_download_source=0 | ||
port_already_use=0 | ||
final_path_already_use=0 | ||
;;; Levels | ||
Level 1=auto | ||
Level 2=auto | ||
Level 3=auto | ||
Level 4=1 | ||
Level 5=auto | ||
Level 6=auto | ||
Level 7=auto | ||
Level 8=0 | ||
Level 9=0 | ||
Level 10=0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,198 @@ | ||
## The second speedup will allow MediaDrop to take advantage of NGINX XSendfile and have NGINX serve ## all media files (.mp3, .mp4, etc.) directly. To enable this, edit another line in /path/to/deployment.ini. Find the files_serve_method line, and set it to nginx_redirect. | ||
## enable NGINX as te default file serve method | ||
# files_serve_method = nginx_redirect | ||
|
||
# | ||
# MediaDrop - Pylons development environment configuration | ||
# | ||
# The %(here)s variable will be replaced with the parent directory of this file | ||
# | ||
# IMPORTANT NOTE!! Do NOT use this config for any kind of production environ. | ||
# Generate a new, production-safe config with this command: | ||
# $ paster make-config MediaCore production.ini | ||
[DEFAULT] | ||
# WARNING == If debug is not set to false, you'll get the interactive | ||
# debugger on production, which is a huge security hole. | ||
debug = true | ||
|
||
# Dont send error notifications by email when developing. That'd be annoying. | ||
#email_to = you@yourdomain.com | ||
smtp_server = localhost | ||
error_email_from = __USER__@__DOMAIN__ | ||
|
||
[server:main] | ||
use = egg:Paste#http | ||
host = 127.0.0.1 | ||
port = 8080 | ||
|
||
[app:main] | ||
# Specify the database for SQLAlchemy to use | ||
sqlalchemy.url = mysql://__DB_USER__:__DB_PASS__@localhost/__DB_USER__?charset=utf8&use_unicode=0 | ||
sqlalchemy.echo = False | ||
sqlalchemy.pool_recycle = 3600 | ||
# useful for plugin developers: log an error if you open extra db connections | ||
# which are not returned to the connection pool by the end of the request. | ||
db.check_for_leaked_connections = True | ||
|
||
# Permission policies to restrict admin/media access. By default all | ||
# permissions are bound to groups and a user can either view all media or none. | ||
# custom plugins can implement more fine-grained policies (e.g. restrict view | ||
# access to media in a specific category) | ||
permission_policies = GroupBasedPermissionsPolicy | ||
|
||
# Session salts. | ||
beaker.session.secret = superdupersecret | ||
sa_auth.cookie_secret = superdupersecret | ||
|
||
# Specify an optional prefix for table names. | ||
# Use this if you want to put MediaDrop in the same database as another app. | ||
# XXX: If you use this setting and you want to enable search, you'll have | ||
# to manually edit setup_triggers.sql to include this prefix. | ||
# e.g. if you want your tables to be named like 'mcore_media', you should set: | ||
# db_table_prefix = mcore | ||
|
||
# mod_proxy settings (untested) | ||
# Use this if you are hosting MediaDrop behind a proxy. | ||
# e.g. If hosting MediaDrop via mod_proxy at the URL | ||
# yoursite.com/my_proxied_mediadrop/, such that all requests are passed | ||
# through to a Paste server at localhost:8080/, you should set: | ||
# proxy_prefix = /my_proxied_mediadrop | ||
|
||
# Method to use when servng static media files. | ||
# apache_xsendfile - requires Apache 2.x and mod_xsendfile | ||
# nginx_redirect - requires nginx and the creation of an internal location | ||
# block with an alias from the path __mediacore_serve__ to | ||
# your /path/to/data/media directory. | ||
# See the full docs below for an example: | ||
# http://mediadrop.net/docs/install/nginx-uwsgi.html | ||
# default - uses environ['wsgi.file_wrapper'] if it's provided by the server, | ||
# otherwise a pure-python file iterator returns the file in chunks | ||
file_serve_method = default | ||
|
||
# Enable automatic gzip compresson for all html/css/js/json responses. | ||
# Keep this enabled unless you're serving MediaDrop via Apache and you | ||
# are able to enable gzip there instead. | ||
enable_gzip = true | ||
|
||
# Data paths (your server user must be able to write to these paths!) | ||
cache_dir = %(here)s/data | ||
image_dir = %(here)s/data/images | ||
media_dir = %(here)s/data/media | ||
|
||
# Files can be moved to a trash-like folder instead of being deleted | ||
# permanently from the filesystem. Uncomment the line below to enable this: | ||
#deleted_files_dir = %(here)s/data/deleted | ||
|
||
# If you'd like to fine-tune the individual locations of the cache data dirs | ||
# for the Cache data, or the Session saves, un-comment the desired settings | ||
# here: | ||
#beaker.cache.data_dir = %(here)s/data/cache | ||
#beaker.session.data_dir = %(here)s/data/sessions | ||
|
||
# Specify the layout template name to wrap core MediaDrop output in | ||
layout_template = layout | ||
|
||
# Defines an external genshi template to wrap the output (including layout) in | ||
external_template = false | ||
external_template_name = external | ||
external_template_url = http://some/valid_genshi_template.html | ||
external_template_timeout = 600 | ||
|
||
# Misc app instance settings | ||
use = egg:MediaCore | ||
full_stack = true | ||
static_files = true | ||
app_instance_uuid = {2673572c-6fb8-405e-89ed-00e2d4192faa} | ||
beaker.session.key = mediacore | ||
|
||
# WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT* | ||
# Debug mode will enable the interactive debugging tool, allowing ANYONE to | ||
# execute malicious code after an exception is raised. | ||
#set debug = false | ||
|
||
|
||
# Logging configuration | ||
# Add additional loggers, handlers, formatters here | ||
# Uses python's logging config file format | ||
# http://docs.python.org/lib/logging-config-fileformat.html | ||
|
||
[loggers] | ||
keys = root, routes, mediadrop, sqlalchemy, auth | ||
|
||
[handlers] | ||
keys = console, wsgierrors | ||
# To enable a MediaDrop-specific logfile, see the [handler_logfile] setting | ||
# below, and add 'logfile' to the list of keys, like so | ||
# keys = console, wsgierrors, logfile | ||
|
||
[formatters] | ||
keys = generic | ||
|
||
# If you create additional loggers, add them as a key to [loggers] | ||
[logger_root] | ||
level = INFO | ||
handlers = console | ||
|
||
[logger_routes] | ||
level = INFO | ||
handlers = | ||
qualname = routes.middleware | ||
# "level = DEBUG" logs the route matched and routing variables. | ||
|
||
[logger_mediadrop] | ||
level = INFO | ||
handlers = | ||
qualname = mediacore | ||
|
||
[logger_sqlalchemy] | ||
level = WARN | ||
handlers = | ||
qualname = sqlalchemy.engine | ||
# "level = INFO" logs SQL queries. | ||
# "level = DEBUG" logs SQL queries and results. | ||
# "level = WARN" logs neither. (Recommended for production systems.) | ||
|
||
# A logger for authentication, identification and authorization -- this is | ||
# repoze.who and repoze.what: | ||
[logger_auth] | ||
level = WARN | ||
handlers = | ||
qualname = auth | ||
|
||
# If you create additional handlers, add them as a key to [handlers] | ||
[handler_console] | ||
class = StreamHandler | ||
args = (sys.stderr,) | ||
level = NOTSET | ||
formatter = generic | ||
|
||
[handler_wsgierrors] | ||
# Handler for logging to the WSGI error handler (eg. apache's error log) | ||
class = pylons.log.WSGIErrorsHandler | ||
args = () | ||
level = NOTSET | ||
format = generic | ||
|
||
[handler_logfile] | ||
# Handler for logging to a dedicated logfile. To use this, see the [handlers] | ||
# section above; ensure the logfile you name is writeable by your server user. | ||
class = FileHandler | ||
args = ('/path/to/data/deployment.log','a') | ||
level = NOTSET | ||
formatter = generic | ||
|
||
# If you create additional formatters, add them as a key to [formatters] | ||
[formatter_generic] | ||
format = %(asctime)s,%(msecs)03d %(levelname)-5.5s [%(name)s] [%(threadName)s] %(message)s | ||
datefmt = %H:%M:%S | ||
|
||
[uwsgi] | ||
socket = /tmp/uwsgi-mediadrop.soc | ||
master = true | ||
processes = 5 | ||
home = /path/to/venv | ||
daemonize = /var/log/uwsgi.log | ||
|
||
## First, edit one line in /path/to/deployment.ini. Find the static_files line, and set it to false. | ||
## disable static file serving with MediaDrop | ||
# static_files = false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
location __PATHTOCHANGE__ { | ||
alias __FINALPATH__/; | ||
|
||
# And now we define the rest of our static locations below | ||
location ~* ^/(appearance)/ { | ||
root __FINALPATH__/data ; | ||
break; | ||
} | ||
|
||
# All media and podcast images | ||
location ~* ^(/images\/media|images\/podcasts) { | ||
root __FINALPATH__/data ; | ||
break; | ||
} | ||
|
||
# Our standard public file paths | ||
location ~* ^/(styles|scripts|images)/ { | ||
expires max; | ||
add_header Cache-Control "public"; | ||
break; | ||
} | ||
|
||
# Configure NGINX XSendfile. | ||
# We use an alias here instead of root so the path info | ||
# __mediadrop_serve__ is stripped off. | ||
# Note: "__mediadrop_serve__" is just the default prefix and can be | ||
# configured using the option "nginx_serve_path" in your deployment.ini. | ||
# Note: __mediadrop_serve__ should point to the path where MediaDrop | ||
# stores its media files. | ||
# Note: We define this as an "internal" location to prevent it from | ||
# being served directly to end users. | ||
# location /__FINALPATH__ { | ||
# alias __FINALPATH__/data/media; | ||
# internal; | ||
#} | ||
|
||
# Declare our default location to pass through to our app | ||
# This will match any request not defined above and pass it to uWSGI | ||
# Note: The uwsgi_pass directive must use the same socket that was | ||
# defined in your deployment.ini [uwsgi] block. | ||
# Note: Make sure that you pass in SCRIPT_NAME = '' otherwise uWSGI | ||
# will raise a keyError when loading MediaDrop. | ||
# location / { | ||
# uwsgi_pass unix:///tmp/uwsgi-mediadrop.soc; | ||
# include uwsgi_params; | ||
# uwsgi_param SCRIPT_NAME ''; | ||
# } | ||
|
||
#--PRIVATE--# Include SSOWAT user panel. | ||
#--PRIVATE--include conf.d/yunohost_panel.conf.inc; | ||
} |
Oops, something went wrong.