mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-13 13:03:20 +00:00
Fix Ansible roles to provision fully functional Vagrant VM
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -67,3 +67,4 @@ grammar/query.js
|
||||
grammar/jison-*
|
||||
|
||||
pimple.json
|
||||
playbook.retry
|
||||
|
2
Makefile
2
Makefile
@@ -1,5 +1,3 @@
|
||||
# vim:noexpandtab:ts=4:sts=4:ft=make:
|
||||
|
||||
install:
|
||||
composer install -o
|
||||
rm -rf ./node_modules
|
||||
|
@@ -1,6 +1,13 @@
|
||||
---
|
||||
# application tasks to be customized and to run after the main provision
|
||||
# Application tasks to be customized and to run after the main provision
|
||||
- name: Install global npm packages
|
||||
become: yes
|
||||
become_user: vagrant
|
||||
shell: export NVM_DIR="$HOME/.nvm" &&. "$NVM_DIR/nvm.sh" && npm install -g bower recess
|
||||
|
||||
- name: Initialize application configuration
|
||||
become: yes
|
||||
become_user: vagrant
|
||||
shell: 'bin/setup system:install --email=admin@{{ hostname }}.vb --password=admin --db-host=127.0.0.1 --db-port=3306 --db-user={{ mariadb.user }} --db-password={{ mariadb.password }} --db-template=fr --appbox={{ mariadb.database }} --databox={{ mariadb.databox_db }} --server-name=www.{{ hostname }}.vb --data-path=/vagrant/datas -y'
|
||||
args:
|
||||
chdir: /vagrant/
|
||||
|
244
resources/ansible/roles/app/templates/configuration.tpl
Normal file
244
resources/ansible/roles/app/templates/configuration.tpl
Normal file
@@ -0,0 +1,244 @@
|
||||
servername: 'http://local.phrasea/'
|
||||
languages:
|
||||
available: []
|
||||
default: 'fr'
|
||||
main:
|
||||
maintenance: false
|
||||
languages: []
|
||||
key: ''
|
||||
api_require_ssl: true
|
||||
database:
|
||||
host: 127.0.0.1
|
||||
port: 3306
|
||||
user: '{{ mariadb.user }}'
|
||||
password: '{{ mariadb.password }}'
|
||||
dbname: '{{ mariadb.database }}'
|
||||
driver: pdo_mysql
|
||||
charset: UTF8
|
||||
database-test:
|
||||
driver: pdo_sqlite
|
||||
path: '/tmp/db.sqlite'
|
||||
charset: UTF8
|
||||
cache:
|
||||
type: MemcacheCache
|
||||
options:
|
||||
host: localhost
|
||||
port: 11211
|
||||
search-engine:
|
||||
type: phrasea
|
||||
options: []
|
||||
task-manager:
|
||||
status: started
|
||||
enabled: true
|
||||
options:
|
||||
protocol: tcp
|
||||
host: 127.0.0.1
|
||||
port: 6660
|
||||
linger: 500
|
||||
logger:
|
||||
max-files: 10
|
||||
enabled: true
|
||||
level: INFO
|
||||
session:
|
||||
type: 'file'
|
||||
options: []
|
||||
ttl: 86400
|
||||
binaries:
|
||||
ghostscript_binary: null
|
||||
php_binary: null
|
||||
swf_extract_binary: null
|
||||
pdf2swf_binary: null
|
||||
swf_render_binary: null
|
||||
unoconv_binary: null
|
||||
ffmpeg_binary: null
|
||||
ffprobe_binary: null
|
||||
mp4box_binary: null
|
||||
pdftotext_binary: null
|
||||
ffmpeg_timeout: 3600
|
||||
ffprobe_timeout: 60
|
||||
gs_timeout: 60
|
||||
mp4box_timeout: 60
|
||||
swftools_timeout: 60
|
||||
unoconv_timeout: 60
|
||||
task-manager:
|
||||
status: started
|
||||
listener:
|
||||
protocol: tcp
|
||||
host: 127.0.0.1
|
||||
port: 6700
|
||||
storage:
|
||||
subdefs: null
|
||||
cache: null
|
||||
log : null
|
||||
download: null
|
||||
lazaret: null
|
||||
caption: null
|
||||
bridge:
|
||||
youtube:
|
||||
enabled: false
|
||||
client_id: null
|
||||
client_secret: null
|
||||
developer_key: null
|
||||
flickr:
|
||||
enabled: false
|
||||
client_id: null
|
||||
client_secret: null
|
||||
dailymotion:
|
||||
enabled: false
|
||||
client_id: null
|
||||
client_secret: null
|
||||
debugger:
|
||||
allowed-ips:
|
||||
- 192.168.56.1
|
||||
border-manager:
|
||||
enabled: true
|
||||
extension-mapping: { }
|
||||
checkers:
|
||||
-
|
||||
type: Checker\Sha256
|
||||
enabled: true
|
||||
-
|
||||
type: Checker\UUID
|
||||
enabled: true
|
||||
-
|
||||
type: Checker\Colorspace
|
||||
enabled: false
|
||||
options:
|
||||
colorspaces: [cmyk, grayscale, rgb]
|
||||
-
|
||||
type: Checker\Dimension
|
||||
enabled: false
|
||||
options:
|
||||
width: 80
|
||||
height: 160
|
||||
-
|
||||
type: Checker\Extension
|
||||
enabled: false
|
||||
options:
|
||||
extensions: [jpg, jpeg, bmp, tif, gif, png, pdf, doc, odt, mpg, mpeg, mov, avi, xls, flv, mp3, mp2]
|
||||
-
|
||||
type: Checker\Filename
|
||||
enabled: false
|
||||
options:
|
||||
sensitive: true
|
||||
-
|
||||
type: Checker\MediaType
|
||||
enabled: false
|
||||
options:
|
||||
mediatypes: [Audio, Document, Flash, Image, Video]
|
||||
authentication:
|
||||
auto-create:
|
||||
templates: { }
|
||||
captcha:
|
||||
enabled: true
|
||||
trials-before-display: 9
|
||||
providers:
|
||||
facebook:
|
||||
enabled: false
|
||||
options:
|
||||
app-id: ''
|
||||
secret: ''
|
||||
twitter:
|
||||
enabled: false
|
||||
options:
|
||||
consumer-key: ''
|
||||
consumer-secret: ''
|
||||
google-plus:
|
||||
enabled: false
|
||||
options:
|
||||
client-id: ''
|
||||
client-secret: ''
|
||||
github:
|
||||
enabled: false
|
||||
options:
|
||||
client-id: ''
|
||||
client-secret: ''
|
||||
viadeo:
|
||||
enabled: false
|
||||
options:
|
||||
client-id: ''
|
||||
client-secret: ''
|
||||
linkedin:
|
||||
enabled: false
|
||||
options:
|
||||
client-id: ''
|
||||
client-secret: ''
|
||||
registration-fields:
|
||||
-
|
||||
name: company
|
||||
required: true
|
||||
-
|
||||
name: lastname
|
||||
required: true
|
||||
-
|
||||
name: firstname
|
||||
required: true
|
||||
-
|
||||
name: geonameid
|
||||
required: true
|
||||
xsendfile:
|
||||
enabled: false
|
||||
type: nginx
|
||||
mapping: []
|
||||
h264-pseudo-streaming:
|
||||
enabled: false
|
||||
type: nginx
|
||||
mapping: []
|
||||
plugins: []
|
||||
api_cors:
|
||||
enabled: false
|
||||
allow_credentials: false
|
||||
allow_origin: []
|
||||
allow_headers: []
|
||||
allow_methods: []
|
||||
expose_headers: []
|
||||
max_age: 0
|
||||
hosts: []
|
||||
session:
|
||||
idle: 0
|
||||
lifetime: 604800 # 1 week
|
||||
crossdomain:
|
||||
site-control: 'master-only'
|
||||
allow-access-from:
|
||||
-
|
||||
domain: '*.example.com'
|
||||
secure: 'false'
|
||||
-
|
||||
domain: 'www.example.com'
|
||||
secure: 'true'
|
||||
to-ports: '507,516-523'
|
||||
allow-access-from-identity:
|
||||
-
|
||||
fingerprint-algorithm: 'sha-1'
|
||||
fingerprint: '01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01:23:45:67'
|
||||
-
|
||||
fingerprint-algorithm: 'sha256'
|
||||
fingerprint: '01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01:23:45:67'
|
||||
allow-http-request-headers-from:
|
||||
-
|
||||
domain: '*.bar.com'
|
||||
secure: 'true'
|
||||
headers: 'SOAPAction, X-Foo*'
|
||||
-
|
||||
domain: 'foo.example.com'
|
||||
secure: 'false'
|
||||
headers: 'Authorization,X-Foo*'
|
||||
embed_bundle:
|
||||
video:
|
||||
player: videojs
|
||||
autoplay: false
|
||||
coverSubdef: previewx4
|
||||
available-speeds:
|
||||
- 1
|
||||
- 1.5
|
||||
- 3
|
||||
audio:
|
||||
player: videojs
|
||||
autoplay: false
|
||||
document:
|
||||
player: flexpaper
|
||||
enable-pdfjs: true
|
||||
geocoding-providers:
|
||||
-
|
||||
name: 'mapBox'
|
||||
public-key: ''
|
@@ -11,7 +11,7 @@
|
||||
# https://github.com/sj26/mailcatcher/issues/277#issuecomment-209154903
|
||||
command: gem install mime-types --version "< 3"
|
||||
|
||||
- name: Install the mailcatcher (GEM)
|
||||
- name: Install mailcatcher gem
|
||||
# gem module is flaky, this is consistent
|
||||
command: gem install mailcatcher --conservative
|
||||
ignore_errors: yes
|
||||
|
@@ -39,11 +39,14 @@
|
||||
- "{{ current_hostname.stdout | lower }}"
|
||||
|
||||
- name: mariadb | Create databases
|
||||
mysql_db: name={{ mariadb.database }} state=present login_user=root login_password={{ mariadb.root_password }}
|
||||
mysql_db: name={{ item }} state=present login_user=root login_password={{ mariadb.root_password }}
|
||||
with_items:
|
||||
- "{{ mariadb.database }}"
|
||||
- "{{ mariadb.databox_db }}"
|
||||
|
||||
- name: mariadb | Import dump
|
||||
mysql_db: name={{ mariadb.database }} state=import login_user=root login_password={{ mariadb.root_password }} target=/vagrant/{{ mariadb.dump }}
|
||||
when: mariadb.dump
|
||||
|
||||
- name: mariadb | Create users
|
||||
mysql_user: name={{ mariadb.user }} password={{ mariadb.password }} priv={{ mariadb.database }}.*:ALL state=present login_user=root login_password={{ mariadb.root_password }}
|
||||
mysql_user: name={{ mariadb.user }} password={{ mariadb.password }} priv=*.*:ALL state=present login_user=root login_password={{ mariadb.root_password }}
|
||||
|
@@ -37,6 +37,7 @@ mariadb:
|
||||
install: '1'
|
||||
root_password: toor
|
||||
database: ab_master
|
||||
databox_db: db_master
|
||||
user: phraseanet
|
||||
password: phraseanet
|
||||
dump: ''
|
||||
|
Reference in New Issue
Block a user