понимание потока выполнения ansible

, я завершил свою интеграцию ansible + vagrant, которая находится здесь . Playbook устанавливает все, что я проинструктировал. выполняет все изменения файла в соответствии с инструкциями. Но когда я проверяю свой локальный компьютер, используя http: localhost: 8080 или http://127.0.0.1:8080 он никогда не работает с файлом index.php. Он всегда загружает файл. Итак, чтобы заставить его работать, мне нужно войти в бродячий ящик и нажать ниже команды на сервер, чтобы обслуживать страницу php.

sudo service nginx restart
sudo service php7.0-fpm restart

Я уже определил обработчик для перезапуска службы, как показано ниже.

- name: "restart services"
  service: >
    name= "{{ item }}"
    state=restarted
  with_items:
    - nginx
    - php7.0-fpm

У меня есть задача, которая принимает приложение git clone. который приведен ниже.

- name: Application git clone
  git: 
    repo: https://github.com/shaileshsutar88/deploy.git
    dest: /var/www/html
  notify:
    - restart services

Я не уверен, что я делаю здесь не так или что-то упускаю. В противном случае я хотел бы больше узнать о доступном потоке выполнения. Когда я проверяю доступное выполнение с подробным описанием, он говорит ОК, что означает, что обработчики не работают. Мне интересно, почему он не запускает обработчики, поскольку я вызываю его после git clone моего приложения.

RUNNING HANDLER [web : restart services] ***************************************
ok: [web] => (item=nginx) => {"changed": false, "failed": false, "item": "nginx", "name": "", "status": {}}
ok: [web] => (item=php7.0-fpm) => {"changed": false, "failed": false, "item": "php7.0-fpm", "name": "", "status": {}}
0
задан 6 December 2017 в 08:06
1 ответ

Если ваш NGINX начинает загружать файл, это обычно означает, что ваш PHP-обработчик настроен неправильно. Вы пытались создать, например, robots.txt и открыть его? Должен работать без необходимости загружать его.

Как вчера сказал Константин, вам следует использовать обработчики. Я прочитал ваше репозиторий на github и увидел, что вы определили обработчик "reload services", но никогда его не использовали (или, по крайней мере, я его не видел)

Вам нужно сделать это с помощью:

  - name: write the apache config file
    template:
      src: /srv/httpd.j2
      dest: /etc/httpd.conf
    notify:
      - reload services
1
ответ дан 4 December 2019 в 16:04

Теги

Похожие вопросы