Timur
В чем именно проблема с молекулой в плане диска?
Nikolay
то есть мне нужно что бы при создании виртуалки, создавался дополнительный диск в ней
Timur
Драйвер какой?
Nikolay
вагрант
Timur
См. параметры самого вагранта на этот счет
Nikolay
а их через raw_config добавлять?
Timur
В списке основных параметров я отдельного не вижу
Nikolay
ок, спасибо
Timur
Вот код модуля драйвера если что: https://github.com/ansible/molecule/blob/master/molecule/driver/vagrant.py
VS
Парни! Есть ансибл скрипт, одна из важнейших частей выглядит так - name: download jar-archive from Nexus maven_artifact: group_id: ru.xxx.xxxx artifact_id: "{{ service_name }}" version: "{{ service_version }}" repository_url: "http://xx.x.x.xx:8077/nexus/content/repositories/xxx-snapshot" username: deployment password: 123456789 dest: "{{ service_path }}" Она отрабатывает, но есть однин момент. Если скажем артифактов версии скажем 0.0.1 много(разаработчик выгружал в нексус не меняя версию) то этот скрипт выгружает одну и туже , он не берёт последнею по времени.
Max
я бы вообще per-build репы делал..
Oleksandr
в snapshot не всегда вариант.
Пусть версионируют
Oleksandr
Хоть sha
Oleksandr
Не должны быть разные сборки с одним именем
VS
Oleksandr
Указывай полное имя в версии
Max
Указывай полное имя в версии
вариант. т.е. нужно постучаться в нексус. узнать посл.версию.
Max
а тем временем появилась следующая
Max
безопаснее репу на процесс.
Max
т.е. сборка пулл реквеста - создать репу по имени реквеста.
Max
в нее все артифакты пихать
Roman
такое вполне может подойти
version: "{{ service_version | default('latest') }}" или так ?
VS
У нас latest по скриншоту не пишется никуда
VS
version: "{{ service_version | default('latest') }}" или так ?
Max
возможно. но если кто-то пробросит левую версию - будет фэйл.
Daniel
Здравствуйте, хочу установить mongodb на сервера но выдает ошибку: fatal: [165.22.198.58]: FAILED! => {"msg": "The conditional check 'env == 'dev'' failed. The error was: error while evaluating conditional (env == 'dev'): 'env' is undefined\n\nThe error appears to be in '/home/daiel/ansible/roles/project.provision.mongodb/tasks/main.yml': line 14, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: Enable Mongod service\n ^ here\n"}
VS
Вот этот latest должен быть в имени артифакта?
Max
нет.
Max
имя артифакта - другое свойство
Max
версия артифакта - latest
Daniel
сам код
Max
сам код
неправильный код. модальный
VS
версия артифакта - latest
как это будет работать?
Sergey
сам код
фу. pastebin же. ну и да, какой результат [не]работы данного кода расходится с ожиданием?
Max
то что ты назвал service_version
Артём
сам код
when: env is defined and env == ‘dev’ Или в дефолтах определить его во что-нибудь дефолтное.
VS
то что ты назвал service_version
прописано так service_version: 0.0.1-SNAPSHOT
VS
то что ты назвал service_version
весь конфиг скрипта service_name: sd-documents-importer service_version: 0.0.1-SNAPSHOT service_folder: /home/bootapp service: "{{ service_name }}-{{ service_version }}" service_path: "{{ service_folder }}/{{ service_name }}"
Max
when: env is defined and env == ‘dev’ Или в дефолтах определить его во что-нибудь дефолтное.
первый вариант - это обход чьей-то защиты. надо понять почему защита там стоит.
Daniel
я вас не совсем понимаю недавно стал изучать ansible
Sergey
я вас не совсем понимаю недавно стал изучать ansible
Короче. У тебя в директиве 'when' используется переменная, которая не определена.
Daniel
делаю по https://blog.eleven-labs.com/en/deploy-a-replicated-mongodb-on-aws-with-terraform-and-ansible/
Артём
я вас не совсем понимаю недавно стал изучать ansible
Есть проверка переменной. При этом переменная не установлена ни во что. По этому поводу ансибл вываливается с ошибкой.
Max
переменная env не определена. это понятно?
Daniel
да спасибо
VS
как я понял варианта с проверкой по времени нет?
Roman
как я понял варианта с проверкой по времени нет?
надо смотреть код модуля. По доке вроде как прокатывает latest, но надо детально смотреть. Время не указать
Roman
https://docs.ansible.com/ansible/latest/modules/maven_artifact_module.html
Max
как я понял варианта с проверкой по времени нет?
можно вместо модуля maven artifact, использовать rest api нексус.
Max
но лучше работать во временных репах.
VS
https://docs.ansible.com/ansible/latest/modules/maven_artifact_module.html
тоесть можно не указывать version: "{{ service_version }}" а прописать version: latest ????
Roman
тоесть можно не указывать version: "{{ service_version }}" а прописать version: latest ????
да, если это приемлимо. Либо сделать latest по умолчанию, если не указано иное
VS
да, если это приемлимо. Либо сделать latest по умолчанию, если не указано иное
непонятная штука, если так сделать то он вконец имени файла добавляет latest
Владимир
Всем привет! Нужна таска по звершению плейбука если в переменной пусто. Через Jenkins загружаю файл тхт. debug переменной выдает либо название файла, если он загружен, либо " " если файла нет. Надо что б если файла нет, плейбук завершался. Подскажите, пожалуйста, куда копать?
VS
@naughtius_max вариант с version: latest не работает
Max
@naughtius_max вариант с version: latest не работает
в смысле? в репе с одной версией и множеством снэпшотов - не последний снэпшот качается?
Roman
latest по умолчанию это как?
version: "{{ service_version | default('latest') }}"
Roman
Именно так и прописал
тогда стоит посмотреть еще примеры, я предполагал, что с latest будет работать
VS
спасибо
Владимир
Доброго времени суток. Чуть в сторону от ансибла. Есть простой плейбук: - name: Get package_facts package_facts: manager: rpm - name: Get status of node_exporter debug: var: ansible_facts.packages['PyYAML']
Владимир
Есть выхлоп: TASK [prometheus-client : Get status of node_exporter] ************************* ok: [p100dmh-mgmt01.unix.local] => { "ansible_facts.packages['PyYAML']": [ { "arch": "x86_64", "epoch": null, "name": "PyYAML", "release": "1.el7", "source": "rpm", "version": "3.11" } ] }
Владимир
Как в плейбуке получить доступ к строке source например? Пробую var: ansible_facts.packages['PyYAML'] поменять на var: ansible_facts.packages['PyYAML']['source'] и другие способы, не выходит каменный цветок )
Владимир
Где-то туплю в yaml, но нащупать нужный вариант пока не получается