mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-14 05:23:21 +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-*
|
grammar/jison-*
|
||||||
|
|
||||||
pimple.json
|
pimple.json
|
||||||
|
playbook.retry
|
||||||
|
2
Makefile
2
Makefile
@@ -1,5 +1,3 @@
|
|||||||
# vim:noexpandtab:ts=4:sts=4:ft=make:
|
|
||||||
|
|
||||||
install:
|
install:
|
||||||
composer install -o
|
composer install -o
|
||||||
rm -rf ./node_modules
|
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
|
- name: Install global npm packages
|
||||||
become: yes
|
become: yes
|
||||||
become_user: vagrant
|
become_user: vagrant
|
||||||
shell: export NVM_DIR="$HOME/.nvm" &&. "$NVM_DIR/nvm.sh" && npm install -g bower recess
|
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
|
# https://github.com/sj26/mailcatcher/issues/277#issuecomment-209154903
|
||||||
command: gem install mime-types --version "< 3"
|
command: gem install mime-types --version "< 3"
|
||||||
|
|
||||||
- name: Install the mailcatcher (GEM)
|
- name: Install mailcatcher gem
|
||||||
# gem module is flaky, this is consistent
|
# gem module is flaky, this is consistent
|
||||||
command: gem install mailcatcher --conservative
|
command: gem install mailcatcher --conservative
|
||||||
ignore_errors: yes
|
ignore_errors: yes
|
||||||
|
@@ -39,11 +39,14 @@
|
|||||||
- "{{ current_hostname.stdout | lower }}"
|
- "{{ current_hostname.stdout | lower }}"
|
||||||
|
|
||||||
- name: mariadb | Create databases
|
- 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
|
- name: mariadb | Import dump
|
||||||
mysql_db: name={{ mariadb.database }} state=import login_user=root login_password={{ mariadb.root_password }} target=/vagrant/{{ mariadb.dump }}
|
mysql_db: name={{ mariadb.database }} state=import login_user=root login_password={{ mariadb.root_password }} target=/vagrant/{{ mariadb.dump }}
|
||||||
when: mariadb.dump
|
when: mariadb.dump
|
||||||
|
|
||||||
- name: mariadb | Create users
|
- 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'
|
install: '1'
|
||||||
root_password: toor
|
root_password: toor
|
||||||
database: ab_master
|
database: ab_master
|
||||||
|
databox_db: db_master
|
||||||
user: phraseanet
|
user: phraseanet
|
||||||
password: phraseanet
|
password: phraseanet
|
||||||
dump: ''
|
dump: ''
|
||||||
|
Reference in New Issue
Block a user