Projet

Général

Profil

0002-run-chrono-and-combo-in-python3-36894.patch

Emmanuel Cazenave, 05 novembre 2019 13:39

Télécharger (15,5 ko)

Voir les différences:

Subject: [PATCH 2/2] run chrono and combo in python3 (#36894)

 clean.yml                                     |   7 +-
 group_vars/all                                |   1 +
 install.yml                                   |   3 +-
 install_source.yml                            |   4 +-
 roles/app-setup/tasks/main.yml                |   4 +-
 .../app-setup/templates/app-settings-base.j2  |   4 +-
 roles/authentic/tasks/main.yml                |   6 --
 roles/authentic/vars/main.yml                 |   1 +
 roles/base/tasks/main.yml                     | 102 +++++++++++++++++-
 roles/base/templates/getlasso.j2              |   4 +-
 roles/bijoe/vars/main.yml                     |   1 +
 roles/chrono/vars/main.yml                    |   3 +-
 roles/combo/tasks/main.yml                    |   5 -
 roles/combo/vars/main.yml                     |   3 +-
 roles/fargo/vars/main.yml                     |   1 +
 roles/hobo/tasks/main.yml                     |  22 ++--
 roles/hobo/vars/main.yml                      |   1 +
 roles/passerelle/tasks/main.yml               |   7 --
 roles/passerelle/vars/main.yml                |   1 +
 roles/wcs/vars/main.yml                       |   1 +
 roles/welco/vars/main.yml                     |   1 +
 21 files changed, 132 insertions(+), 50 deletions(-)
clean.yml
1 1
---
2 2
- hosts: local
3 3
  tasks:
4
    - name: delete venv
4
    - name: delete python2 venv
5 5
      file:
6 6
        path: "{{venv}}"
7 7
        state: absent
8 8

  
9
    - name: delete python3 venv
10
      file:
11
        path: "{{venv_py3}}"
12
        state: absent
13

  
9 14
    - name: delete app /var/lib directory
10 15
      file:
11 16
        path: "/var/lib/{{item.value.project_name}}"
group_vars/all
8 8
ssl_certificate: "{{venv_certs}}/dev.publik.love-fullchain.pem"
9 9
ssl_certificate_key: "{{venv_certs}}/dev.publik.love-privkey.pem"
10 10
venv: "/home/{{user}}/envs/publik-env"
11
venv_py3: "/home/{{user}}/envs/publik-env-py3"
11 12
user: your_user_name
12 13
apps:
13 14
  authentic:
install.yml
18 18
  vars:
19 19
    themes_dir: "{{venv}}/themes"
20 20
    venv_bin: "{{venv}}/bin"
21
    venv_py3_bin: "{{venv_py3}}/bin"
21 22
    venv_certs: "{{venv}}/certs"
22
    venv_pip: "{{venv_bin}}/pip"
23 23
    venv_python: "{{venv_bin}}/python"
24
    venv_py3_python: "{{venv_py3_bin}}/python"
24 25
    venv_share: "{{venv}}/share"
install_source.yml
20 20
    name: django
21 21
    version: "{{ django_version}}"
22 22
    extra_args: "-e {{ repo_dir }}"
23
    virtualenv: "{{ venv }}"
23
    virtualenv: "{{ virtualenv }}"
24 24

  
25 25
- name: "build {{ repo_dir }}"
26
  command: "{{ venv_python }} setup.py build"
26
  command: "{{ virtualenv }}/bin/python setup.py build"
27 27
  args:
28 28
    chdir: "{{ repo_dir }}"
roles/app-setup/tasks/main.yml
2 2
  set_fact:
3 3
    app_settings: "{{publik_settings}}/{{project_name}}/settings.py"
4 4
    app_settings_dir: "{{publik_settings}}/{{project_name}}"
5
    manage_app_bin: "{{venv_bin}}/{{project_name}}-manage"
5
    manage_app_bin: "{{virtualenv}}/bin/{{project_name}}-manage"
6 6
    server_app_name: "{{project_name}}"
7 7

  
8 8
- name: "{{app_name}} - create db"
......
90 90
- name: "{{app_name}} - server script"
91 91
  template:
92 92
    src: app-server.j2
93
    dest: "{{venv_bin}}/{{server_app_name}}-server"
93
    dest: "{{virtualenv}}/bin/{{server_app_name}}-server"
94 94
    mode: "u=rwx,g=rx,o=rx"
95 95
  
96 96
- name: "{{app_name}} - server log directory"
roles/app-setup/templates/app-settings-base.j2
10 10

  
11 11
PROJECT_NAME = "{{project_name}}"
12 12

  
13
execfile('{{src_dir}}/hobo/debian/debian_config_common.py')
13
exec(open('{{src_dir}}/hobo/debian/debian_config_common.py').read())
14 14

  
15 15
THEMES_DIRECTORY = '{{themes_dir}}'
16 16

  
......
64 64

  
65 65
for filename in sorted(
66 66
    glob.glob(os.path.join('{{app_settings_dir}}', 'settings.d', '*.py'))):
67
    execfile(filename)
67
    exec(open(filename).read())
roles/authentic/tasks/main.yml
5 5
    repo: "authentic"
6 6
    repo_dir: "{{ src_dir }}/authentic"
7 7

  
8
# FIXME: change authentic settings instead ?
9
- name: install python-memcached
10
  pip:
11
    name: python-memcached
12
    virtualenv: "{{venv}}"
13

  
14 8
- name: source install authentic2-auth-fc
15 9
  import_tasks: install_source.yml
16 10
  vars:
roles/authentic/vars/main.yml
8 8
project_name: "{{apps['authentic']['project_name']}}"
9 9
server_port: "{{apps['authentic']['server_port']}}"
10 10
settings_env_var: AUTHENTIC2_SETTINGS_FILE
11
virtualenv: "{{venv}}"
roles/base/tasks/main.yml
42 42
  become: yes
43 43
  become_user: postgres
44 44

  
45
- name: create the virtualenv and install django
45
- name: create the py2 virtualenv and install django
46 46
  pip:
47 47
    name: django
48 48
    version: "{{django_version}}"
49 49
    virtualenv: "{{venv}}"
50 50

  
51
- name: install django-debug-toolbar
51
- name: create the py3 virtualenv and install django
52
  pip:
53
    name: django
54
    version: "{{django_version}}"
55
    virtualenv: "{{venv_py3}}"
56
    virtualenv_python: python3
57

  
58
- name: install django-debug-toolbar in python2
52 59
  pip:
53 60
    name: django-debug-toolbar
54 61
    virtualenv: "{{venv}}"
55 62

  
63
- name: install django-debug-toolbar in python3
64
  pip:
65
    name: django-debug-toolbar
66
    virtualenv: "{{venv_py3}}"
67

  
56 68
- name: "create {{src_dir}} directory"
57 69
  file:
58 70
    path: "{{src_dir}}"
......
80 92
    path: "{{publik_settings}}"
81 93
    state: directory
82 94

  
83
- name: create getlasso script
95
- name: create getlasso script in python2
84 96
  template:
85 97
    src: getlasso.j2
86 98
    dest: "{{venv_bin}}/getlasso.sh"
87 99
    mode: "u=rwx,g=rx,o=rx"
100
  vars:
101
    virtualenv_python: "{{venv_python}}"
102
    system_python: "/usr/bin/python"
103

  
104
- name: create getlasso script in python3
105
  template:
106
    src: getlasso.j2
107
    dest: "{{venv_py3_bin}}/getlasso.sh"
108
    mode: "u=rwx,g=rx,o=rx"
109
  vars:
110
    virtualenv_python: "{{venv_py3_python}}"
111
    system_python: "/usr/bin/python3"
88 112

  
89
- name: execute getlasso
113
- name: execute getlasso in python2
90 114
  command: "{{venv_bin}}/getlasso.sh"
91 115

  
116
- name: execute getlasso in python3
117
  command: "{{venv_py3_bin}}/getlasso.sh"
118

  
92 119
- name: source install eopayment
93 120
  import_tasks: install_source.yml
94 121
  vars:
95 122
    repo: "eopayment"
96 123
    repo_dir: "{{ src_dir }}/eopayment"
124
    virtualenv: "{{venv_py3}}"
125

  
126
- name: source install django-tenant-schemas in python2 env
127
  import_tasks: install_source.yml
128
  vars:
129
    repo: "debian/django-tenant-schemas"
130
    repo_dir: "{{ src_dir }}/django-tenant-schemas"
131
    virtualenv: "{{venv}}"
132

  
133
- name: source install django-tenant-schemas in python3 env
134
  import_tasks: install_source.yml
135
  vars:
136
    repo: "debian/django-tenant-schemas"
137
    repo_dir: "{{ src_dir }}/django-tenant-schemas"
138
    virtualenv: "{{venv_py3}}"
139

  
140
- name: source install django-mellon in python2 env
141
  import_tasks: install_source.yml
142
  vars:
143
    repo: "django-mellon"
144
    repo_dir: "{{ src_dir }}/django-mellon"
145
    virtualenv: "{{venv}}"
146

  
147
- name: source install django-mellon in python3 env
148
  import_tasks: install_source.yml
149
  vars:
150
    repo: "django-mellon"
151
    repo_dir: "{{ src_dir }}/django-mellon"
152
    virtualenv: "{{venv_py3}}"
153

  
154
- name: source install gadjo in python2 env
155
  import_tasks: install_source.yml
156
  vars:
157
    repo: "gadjo"
158
    repo_dir: "{{ src_dir }}/gadjo"
159
    virtualenv: "{{venv}}"
160

  
161
- name: source install gadjo in python3 env
162
  import_tasks: install_source.yml
163
  vars:
164
    repo: "gadjo"
165
    repo_dir: "{{ src_dir }}/gadjo"
166
    virtualenv: "{{venv_py3}}"
167

  
168
- name: install memcache in python2
169
  pip:
170
    name: python-memcached
171
    virtualenv: "{{venv}}"
172

  
173
- name: install memcache in python3
174
  pip:
175
    name: python-memcached
176
    virtualenv: "{{venv_py3}}"
177

  
178
- name: source install django-ckeditor in python2
179
  import_tasks: install_source.yml
180
  vars:
181
    repo: "debian/django-ckeditor"
182
    repo_dir: "{{ src_dir }}/django-ckeditor"
183
    virtualenv: "{{venv}}"
184

  
185
- name: source install django-ckeditor in python3
186
  import_tasks: install_source.yml
187
  vars:
188
    repo: "debian/django-ckeditor"
189
    repo_dir: "{{ src_dir }}/django-ckeditor"
190
    virtualenv: "{{venv_py3}}"
97 191

  
98 192
- name: install theme
99 193
  import_tasks: tasks/install_theme.yml
roles/base/templates/getlasso.j2
1 1
#!/bin/sh
2 2

  
3 3
# Get venv site-packages path
4
DSTDIR=`{{venv_python}} -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())'`
4
DSTDIR=`{{virtualenv_python}} -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())'`
5 5

  
6
SRCDIR=`/usr/bin/python -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())'`
6
SRCDIR=`{{system_python}} -c 'from distutils.sysconfig import get_python_lib; print(get_python_lib())'`
7 7

  
8 8
# Clean up
9 9
rm -f $DSTDIR/lasso.*
roles/bijoe/vars/main.yml
8 8
project_name: "{{apps['bijoe']['project_name']}}"
9 9
server_port: "{{apps['bijoe']['server_port']}}"
10 10
settings_env_var: BIJOE_SETTINGS_FILE
11
virtualenv: "{{venv}}"
roles/chrono/vars/main.yml
2 2
compile_scss: false
3 3
compile_translations: true
4 4
db_name: "{{apps['chrono']['db_name']}}"
5
manage_cmd: "{{venv_python}} {{src_dir}}/chrono/manage.py"
5
manage_cmd: "{{venv_py3_python}} {{src_dir}}/chrono/manage.py"
6 6
nginx_host_pattern: "{{apps['chrono']['nginx_host_pattern']}}"
7 7
nginx_template_name: "chrono-nginx-server.j2"
8 8
project_name: "{{apps['chrono']['project_name']}}"
9 9
server_port: "{{apps['chrono']['server_port']}}"
10 10
settings_env_var: CHRONO_SETTINGS_FILE
11
virtualenv: "{{venv_py3}}"
roles/combo/tasks/main.yml
1
- name: source install django-ckeditor
2
  import_tasks: install_source.yml
3
  vars:
4
    repo: "debian/django-ckeditor"
5
    repo_dir: "{{ src_dir }}/django-ckeditor"
6 1

  
7 2
- name: source install combo
8 3
  import_tasks: install_source.yml
roles/combo/vars/main.yml
2 2
compile_scss: false
3 3
compile_translations: true
4 4
db_name: "{{apps['combo']['db_name']}}"
5
manage_cmd: "{{venv_python}} {{src_dir}}/combo/manage.py"
5
manage_cmd: "{{venv_py3_python}} {{src_dir}}/combo/manage.py"
6 6
nginx_host_pattern: "{{apps['combo']['nginx_host_pattern']}}"
7 7
nginx_template_name: "std-nginx-server.j2"
8 8
project_name: "{{apps['combo']['project_name']}}"
9 9
server_port: "{{apps['combo']['server_port']}}"
10 10
settings_env_var: COMBO_SETTINGS_FILE
11
virtualenv: "{{venv_py3}}"
roles/fargo/vars/main.yml
8 8
project_name: "{{apps['fargo']['project_name']}}"
9 9
server_port: "{{apps['fargo']['server_port']}}"
10 10
settings_env_var: FARGO_SETTINGS_FILE
11
virtualenv: "{{venv}}"
roles/hobo/tasks/main.yml
1 1

  
2
- name: source install django-mellon
2
- name: source install hobo in python2
3 3
  import_tasks: install_source.yml
4 4
  vars:
5
    repo: "django-mellon"
6
    repo_dir: "{{ src_dir }}/django-mellon"
7

  
8
- name: source install gadjo
9
  import_tasks: install_source.yml
10
  vars:
11
    repo: "gadjo"
12
    repo_dir: "{{ src_dir }}/gadjo"
13

  
14
- name: source install django-tenant-schemas
15
  import_tasks: install_source.yml
16
  vars:
17
    repo: "debian/django-tenant-schemas"
18
    repo_dir: "{{ src_dir }}/django-tenant-schemas"
5
    repo: "hobo"
6
    repo_dir: "{{ src_dir }}/hobo"
19 7

  
20
- name: source install hobo
8
- name: source install hobo in python3
21 9
  import_tasks: install_source.yml
22 10
  vars:
23 11
    repo: "hobo"
24 12
    repo_dir: "{{ src_dir }}/hobo"
13
    virtualenv: "{{venv_py3}}"
14

  
25 15

  
26 16
- name: hobo app setup
27 17
  import_role:
roles/hobo/vars/main.yml
8 8
project_name: "{{apps['hobo']['project_name']}}"
9 9
server_port: "{{apps['hobo']['server_port']}}"
10 10
settings_env_var: HOBO_SETTINGS_FILE
11
virtualenv: "{{venv}}"
roles/passerelle/tasks/main.yml
1

  
2
- name: source install django-tenant-schemas
3
  import_tasks: install_source.yml
4
  vars:
5
    repo: "debian/django-tenant-schemas"
6
    repo_dir: "{{ src_dir }}/django-tenant-schemas"
7

  
8 1
- name: source install passerelle
9 2
  import_tasks: install_source.yml
10 3
  vars:
roles/passerelle/vars/main.yml
8 8
project_name: "{{apps['passerelle']['project_name']}}"
9 9
server_port: "{{apps['passerelle']['server_port']}}"
10 10
settings_env_var: PASSERELLE_SETTINGS_FILE
11
virtualenv: "{{venv}}"
roles/wcs/vars/main.yml
9 9
project_name: "{{apps['wcs']['project_name']}}"
10 10
server_port: "{{apps['wcs']['server_port']}}"
11 11
settings_env_var: WCS_SETTINGS_FILE
12
virtualenv: "{{venv}}"
roles/welco/vars/main.yml
8 8
project_name: "{{apps['welco']['project_name']}}"
9 9
server_port: "{{apps['welco']['server_port']}}"
10 10
settings_env_var: WELCO_SETTINGS_FILE
11
virtualenv: "{{venv}}"
11
-