ANSIBLE - ответьте да нет вопросам

Просто добавьте что-то примечательное здесь.


myQueue.hpp:

template <class T> 
class QueueA {
    int size;
    ...
public:
    template <class T> T dequeue() {
       // implementation here
    }

    bool isEmpty();

    ...
}    

myQueue можно определить методы шаблонного класса, которые просто прекрасны в файле реализации. cpp:

// implementation of regular methods goes like this:
template <class T> bool QueueA<T>::isEmpty() {
    return this->size == 0;
}


main()
{
    QueueA<char> Q;

    ...
}
2
задан Paul Hodges 13 July 2018 в 17:35
поделиться

3 ответа

Вы должны просто передать ответ на вопрос как переменную, используя extra_variables. Это позволит избежать приглашения и позволит вам установить значение переменной по умолчанию.

https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#passing -variables-on-the-command-line

ansible-playbook playbooks/release.yml --extra-vars 'updateciphers=True updatedcipherslist=["cipher1","cipher2","cipher3"]'

-> Вам может потребоваться избежать двойных кавычек. vars: updateciphers: False

tasks:
  - name: Upgrade
    command: /tmp/bin/update_script.sh 
    environment:
      JAVA_HOME: /opt/java/
    when: updateciphers
    with_items: "{{ updatedcipherslist }}"
0
ответ дан DarkOne337 17 August 2018 в 12:46
поделиться
  • 1
    кажется, просто сложно .. Я собираюсь попробовать это - имя: Обновление Стартовая команда: да | /tmp/bin/update_script.sh – zoomer 13 July 2018 в 15:26
  • 2
    См. Примечания . If you want to run a command through the shell (say you are using <, >, |, etc), you must specify a shell in the command such as /bin/bash -c "/path/to/something | grep else". Кроме того, The expect module is designed for simple scenarios. For more complex needs, consider the use of expect code with the shell or script modules. Пример является частью документации модуля shell . Если вы это сделаете, вы можете сказать yes no | ... - весело! :) – Paul Hodges 13 July 2018 в 15:34
  • 3
    это работает, просто стыд, я не могу иметь больше контроля, его нормально для этого времени, но иногда у меня может быть 3 вопроса, чтобы ответить, и я не хочу всегда отвечать на yes shell: | да | /tmp/bin/update_script.sh – zoomer 13 July 2018 в 15:47

Вы смешиваете свои типы ответов. Если вы предоставляете список, он не хочет / не нуждается в этом вопросе. Если вы хотите конкретно отвечать на вопросы к ответам, используйте регулярное выражение для соответствия этому вопросу как ключ словаря.

Итак, версия 1:

- name: Upgrade
  expect:
    command: /tmp/bin/update_script.sh 
    environment:
      JAVA_HOME: /opt/java/
    responses:
      Question:
        - n

или версия 2 ( проверьте мое регулярное выражение *):

- name: Upgrade
  expect:
    command: /tmp/bin/update_script.sh 
    environment:
      JAVA_HOME: /opt/java/
    responses:
      Question:
        cipher: n

Я использовал ожидание, но не модуль, и это было много лет назад, и я никогда не использовал его много. Надеюсь, это будет работать так же, как и все, но будьте готовы к тому, чтобы обманывать его. ;)

Удачи!

1
ответ дан Paul Hodges 17 August 2018 в 12:46
поделиться
  • 1
    Нет радости, он просто не хочет поднимать вопрос, который он задает. Вы хотите использовать новый по умолчанию (отключить более слабые шифровые сюиты)? (Г / л) – zoomer 13 July 2018 в 15:27
  • 2
    вы пробовали просто передать n как список без вопроса? Или это не вариант? – Paul Hodges 13 July 2018 в 15:29
  • 3
    Если я попробую вариант выше, он просто выплюнет вопрос и не удастся ... Вы хотите использовать новый по умолчанию (отключить более слабые шифровые сюиты)? (y / n) "]} ......... Очень странно – zoomer 13 July 2018 в 15:54

Это сделало то, что мне было нужно. К сожалению, это не позволяет вам ответить «да / нет», но теперь он выполняет свою работу.

Было бы неплохо иметь больше контроля, но его работы как temp обходной путь на данный момент .. Когда у меня есть постоянное решение, я отправлю сообщение снова.

  - name: Upgrade Starting
    shell: |
      yes | /tmp/bin/update_script.sh
0
ответ дан zoomer 17 August 2018 в 12:46
поделиться
Другие вопросы по тегам:

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