You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

95 line
2.6KB

  1. ---
  2. - name: configuration
  3. template:
  4. src: '{{item}}.yml.j2'
  5. dest: '{{openproject_path}}/openproject/config/{{item}}.yml'
  6. with_items:
  7. - database
  8. - configuration
  9. notify: restart openproject
  10. become: yes
  11. become_user: '{{openproject_user}}'
  12. become_method: su
  13. # https://community.openproject.com/projects/openproject/work_packages/26147/activity
  14. # - name: fix openproject bug \#26147
  15. # copy:
  16. # src: "{{ item }}.rb"
  17. # dest: '{{openproject_path}}/openproject/config/{{item}}.rb'
  18. # with_items:
  19. # - additional_environment
  20. # - additional_boot
  21. - name: set up database
  22. command: ./bin/rake db:create
  23. args:
  24. chdir: '{{openproject_path}}/openproject'
  25. become: yes
  26. become_user: '{{openproject_user}}'
  27. become_method: su
  28. register: rake_db_create_all
  29. changed_when: '"already exists" not in rake_db_create_all.stderr'
  30. environment:
  31. PATH: "{{openproject_env_path}}:{{ ansible_env.PATH }}"
  32. RAILS_ENV: production
  33. notify: restart openproject
  34. - name: generate secret token
  35. command: ./bin/rake generate_secret_token
  36. args:
  37. chdir: '{{openproject_path}}/openproject'
  38. creates: '{{openproject_path}}/openproject/config/secret_token.yml'
  39. become: yes
  40. become_user: '{{openproject_user}}'
  41. become_method: su
  42. environment:
  43. PATH: "{{openproject_env_path}}:{{ ansible_env.PATH }}"
  44. RAILS_ENV: production
  45. notify: restart openproject
  46. - name: migrate database
  47. command: ./bin/rake db:migrate
  48. args:
  49. chdir: '{{openproject_path}}/openproject'
  50. become: yes
  51. become_user: '{{openproject_user}}'
  52. become_method: su
  53. register: generate_migration
  54. changed_when: generate_migration.stdout != ""
  55. environment:
  56. PATH: "{{openproject_env_path}}:{{ ansible_env.PATH }}"
  57. RAILS_ENV: production
  58. notify: restart openproject
  59. - name: seed database
  60. command: ./bin/rake db:seed
  61. args:
  62. chdir: '{{openproject_path}}/openproject'
  63. become: yes
  64. become_user: '{{openproject_user}}'
  65. become_method: su
  66. register: seed_database
  67. changed_when: '"Skipping" not in seed_database.stdout'
  68. environment:
  69. PATH: "{{openproject_env_path}}:{{ ansible_env.PATH }}"
  70. RAILS_ENV: production
  71. LOCALE: "{{openproject_locale}}"
  72. notify: restart openproject
  73. - name: precompile assets
  74. command: ./bin/rake assets:precompile
  75. args:
  76. chdir: '{{openproject_path}}/openproject'
  77. become: yes
  78. become_user: '{{openproject_user}}'
  79. become_method: su
  80. async: 3600
  81. poll: 1
  82. register: precompile_assets
  83. changed_when: '"Writing" in seed_database.stdout'
  84. environment:
  85. PATH: "{{openproject_env_path}}:{{ ansible_env.PATH }}"
  86. RAILS_ENV: production
  87. notify: restart openproject