Size: a a a

2019 June 03

V

Vit in DevOps Moscow
и у молекулы имена платформ - просто конфиг molecule.yml, где никакой башсибл не вставить =(
источник

МS

Михаил SinTeZoiD in DevOps Moscow
Vit
генерация имён для кейса - использование в молекуле) просто не знаю где ещё нужно генерить имена -  в ней точно нужно
А инстансы в опенстек ты тоже автоматически хочешь создавать?
источник

V

Vit in DevOps Moscow
ну, всмысле. ансибл-провайдер
- name: Create molecule instance(s)
     os_server:
       auth:
         auth_url: "{{ os_url }}"
         username: "{{ os_user }}"
         password: "{{ os_password }}"
         project_name: "{{ os_project_name }}"
       name: "{{ item.name }}"
       image: "{{ item.image }}"
       flavor: "{{ item.flavor }}"
       key_name: "{{ keypair_name }}"
       network: "{{ neutron_network_name }}"
       auto_ip: false
       availability_zone: "nova"
       region_name: "RegionOne"
       verify: false
       security_groups: "{{ security_group }}"
       userdata: |
         {%- raw -%}#!/bin/bash
         systemctl stop puppet
         {% endraw %}
     environment:
       OS_PROJECT_ID: "{{ os_project_id }}"
       OS_INTERFACE: public
     register: server
     with_items: "{{ molecule_yml.platforms }}"
     async: 7200
     poll: 0
источник

DZ

Dmitriy Zaytsev in DevOps Moscow
Не помню уже, как оно взаимоинтегрируется, но если ты управляешь именами виртуалок - то просто используй фильтр рандом в ансибл
источник

B

Bandikoot in DevOps Moscow
а хэш тестируемого коммита не прокинуть в вызов ансибля?
источник

V

Vit in DevOps Moscow
А в ансибле фильтры в любом месте применяются ? Если это типа файл с vars, прокатит?

Интересно, что best practices фиг найдешь , а в жизни никотина других ОС не использует что ли)
источник

V

Vit in DevOps Moscow
Bandikoot
а хэш тестируемого коммита не прокинуть в вызов ансибля?
А как это поможет?
источник

B

Bandikoot in DevOps Moscow
Vit
А как это поможет?
ну, для генерации имён. или проблема не в обеспечении уникальности имён инстансов?
источник

I

Inokenty in DevOps Moscow
Vit
А в ансибле фильтры в любом месте применяются ? Если это типа файл с vars, прокатит?

Интересно, что best practices фиг найдешь , а в жизни никотина других ОС не использует что ли)
В переменных тасках шаблонах
источник

I

Inokenty in DevOps Moscow
Так что можно сказать почти везде
источник

I

Inokenty in DevOps Moscow
Vit
ну, всмысле. ансибл-провайдер
- name: Create molecule instance(s)
     os_server:
       auth:
         auth_url: "{{ os_url }}"
         username: "{{ os_user }}"
         password: "{{ os_password }}"
         project_name: "{{ os_project_name }}"
       name: "{{ item.name }}"
       image: "{{ item.image }}"
       flavor: "{{ item.flavor }}"
       key_name: "{{ keypair_name }}"
       network: "{{ neutron_network_name }}"
       auto_ip: false
       availability_zone: "nova"
       region_name: "RegionOne"
       verify: false
       security_groups: "{{ security_group }}"
       userdata: |
         {%- raw -%}#!/bin/bash
         systemctl stop puppet
         {% endraw %}
     environment:
       OS_PROJECT_ID: "{{ os_project_id }}"
       OS_INTERFACE: public
     register: server
     with_items: "{{ molecule_yml.platforms }}"
     async: 7200
     poll: 0
А вы уже давно молекулу используете?
источник

V

Vit in DevOps Moscow
Bandikoot
ну, для генерации имён. или проблема не в обеспечении уникальности имён инстансов?
В обеспечении уникальности. Но мне один комит нужно на нескольких платформах одновременно прогнать. Пока нашел вот такое

https://github.com/ansible/molecule/issues/887

Но не пойму, как установку env скрестить с ансибл, если он параллельно все гонит
источник

B

Bandikoot in DevOps Moscow
Vit
В обеспечении уникальности. Но мне один комит нужно на нескольких платформах одновременно прогнать. Пока нашел вот такое

https://github.com/ansible/molecule/issues/887

Но не пойму, как установку env скрестить с ансибл, если он параллельно все гонит
можно имя склеить из разных переменных. ~ — оператор конкатенации строк в джинже
источник

V

Vit in DevOps Moscow
Inokenty
А вы уже давно молекулу используете?
Ну, как на ансибл перешли года 1.5 назад, так и юзаем , в основном для ролей критичных. Но пока не так много как хотелось бы - getting started заморочный)
источник

I

Inokenty in DevOps Moscow
Кстати да хочешь с фильтрами разобраться идешь в доку с jinja2
источник

B

Bandikoot in DevOps Moscow
т.е. будет не name: "{{ item.name }}", а name: "{{ item.name ~ '-' ~ item.image ~ '-' ~ item.hash}}", например
источник

V

Vit in DevOps Moscow
Bandikoot
можно имя склеить из разных переменных. ~ — оператор конкатенации строк в джинже
Там вроде нет джинжи в molecule.yml или можно заюзать?
источник

I

Inokenty in DevOps Moscow
Vit
Там вроде нет джинжи в molecule.yml или можно заюзать?
Можно
источник

B

Bandikoot in DevOps Moscow
Vit
ну, всмысле. ансибл-провайдер
- name: Create molecule instance(s)
     os_server:
       auth:
         auth_url: "{{ os_url }}"
         username: "{{ os_user }}"
         password: "{{ os_password }}"
         project_name: "{{ os_project_name }}"
       name: "{{ item.name }}"
       image: "{{ item.image }}"
       flavor: "{{ item.flavor }}"
       key_name: "{{ keypair_name }}"
       network: "{{ neutron_network_name }}"
       auto_ip: false
       availability_zone: "nova"
       region_name: "RegionOne"
       verify: false
       security_groups: "{{ security_group }}"
       userdata: |
         {%- raw -%}#!/bin/bash
         systemctl stop puppet
         {% endraw %}
     environment:
       OS_PROJECT_ID: "{{ os_project_id }}"
       OS_INTERFACE: public
     register: server
     with_items: "{{ molecule_yml.platforms }}"
     async: 7200
     poll: 0
вот тут уже джинжа
источник

V

Vit in DevOps Moscow
Так-с, Оке, попробую, спасибо. Хотя я был уверен что пробовал и не канало)
источник