yml чем открыть и редактировать

10 шагов к YAML-дзену

Мы все любим Ansible, но Ansible – это YAML. Для конфигурационных файлов существует масса форматов: списки значений, пары «параметр-значение», INI-файлы, YAML, JSON, XML и множество других. Однако по нескольким причинам из всех них YAML часто считается особенно трудным. В частности, несмотря на его освежающий минимализм и впечатляющие возможности для работы с иерархическими значениями, синтаксис YAML может раздражать своим Python-образными подходом к отступам.

yml чем открыть и редактировать. Смотреть фото yml чем открыть и редактировать. Смотреть картинку yml чем открыть и редактировать. Картинка про yml чем открыть и редактировать. Фото yml чем открыть и редактировать

Если вас бесит YAML, вы можете – и должны! – предпринять 10 следующих шагов, чтобы снизить свое раздражение до приемлемого уровня и полюбить YAML. Как и положено настоящему списку, наша десятка советов будет нумероваться с нуля, медитацию и духовные практики добавляем по желанию 😉

0. Заставьте ваш редактор работать

Неважно, какой у вас текстовый редактор – для него наверняка существует хотя бы один плагин для работы с YAML. Если у вас такого нет, немедленно найдите и установите. Потраченное на поиск и настройку время будет многократно окупаться каждый раз, когда вам придется редактировать YAML.

Например, редактор Atom поддерживает YAML по умолчанию, а вот для GNU Emacs придется установить дополнительные пакеты, например, yaml-mode.

yml чем открыть и редактировать. Смотреть фото yml чем открыть и редактировать. Смотреть картинку yml чем открыть и редактировать. Картинка про yml чем открыть и редактировать. Фото yml чем открыть и редактировать

Emacs в режиме YAML и отображения пробелов.

Если в вашем любимом редакторе нет режима YAML, то часть проблем можно решить, поработав с настройками. Например, штатный для GNOME текстовый редактор Gedit не имеет режима YAML, но по умолчанию подсвечивает синтаксис YAML и позволяет настроить работу с отступами:

yml чем открыть и редактировать. Смотреть фото yml чем открыть и редактировать. Смотреть картинку yml чем открыть и редактировать. Картинка про yml чем открыть и редактировать. Фото yml чем открыть и редактировать

Настройка отступов в Gedit.

А плагин drawspaces для Gedit отображает пробелы в виде точек, устраняя неясности с уровнями отступа.

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

1. Используйте линтер (linter)

В идеале языки программирования и языки разметки используют предсказуемый синтаксис. Компьютеры хорошо справляются с предсказуемостью, поэтому еще в 1978 году возникла концепция линтера. Если за 40 лет своего существования она прошла мимо вас и вы до сих пор не пользуетесь YAML-линтером, то самое время попробовать yamllint.

Установить yamllint можно с помощью штатного менеджера пакетов Linux. Например, в Red Hat Enterprise Linux 8 или Fedora это делается так:

Затем вы просто запускаете yamllint, передавая ему YAML-файл для проверки. Вот как это выглядит, если передать линтеру файл с ошибкой:

Цифры слева – это не время, а координаты ошибки: номер строки и столбца. Описание ошибки может вам ни о чем не говорить, зато вы точно знаете, где она находится. Просто посмотрите на это место в коде, и, скорее всего, все станет ясно.

Когда yamllint не находит ошибок в файле, на экран ничего не выводится. Если вас пугает такая тишина и хочется немного больше обратной связи, то можно запускать линтер с условной командой echo через двойной амперсанд (&&), вот так:

В POSIX двойной амперсанд срабатывает тогда и только тогда, когда предшествующая команда возвращает 0. А yamllint как раз возвращает количество найденных ошибок, поэтому вся эта условная конструкция и работает.

2. Пишите на Python, а не на YAML

Если вас реально бесит YAML, просто не пишите на нем, в буквальном смысле. Бывает, что YAML – это единственный формат, который воспринимается приложением. Но и в этом случае необязательно создавать YAML-файл. Пишите на том, что вам нравится, а потом конвертируйте. Например, для Python есть отличная библиотека pyyaml и целых два способа конвертирования: самоконвертирование и конвертирование через скрипты.

Самоконвертирование

В этом случае файл с данными заодно является и Python-скриптом, который генерирует YAML. Этот способ лучше всего подходит для небольших наборов данных. Вы просто пишите JSON-данные в переменную Python, предваряете это директивой import, а в конце файла добавляете три строчки для реализации вывода.

Теперь запускаем это файл на Python-е и на выходе получаем файл output.yaml:

Конвертирование через скрипты

В этом случае сначала пишем на JSON-е, а затем запускаем конвертор в виде отдельного Python-скрипта, который на выходе дает YAML. По сравнению с предыдущим этот способ лучше масштабируется, поскольку конвертирование отделено данных.

Для начала создадим JSON-файл example.json, например, его можно взять на json.org:

Затем создадим простой скрипт-конвертор и сохраним его под именем json2yaml.py. Этот скрипт импортирует оба модуля — YAML и JSON Python, а также загружает указанный пользователем файл JSON, выполняет конвертирование и пишет данные в файл output.yaml.

Сохраните этот скрипт в system path и запускайте по мере необходимости:

3. Парсите много и часто

Иногда на проблему полезно взглянуть под другим углом. Если вам трудно представить взаимосвязи между данными в YAML, можно временно преобразовать их в нечто более привычное.

Например, если вам удобно работать со словарными списками или с JSON, то YAML можно преобразовать в JSON всего двумя командами в интерактивной оболочке Python. Допустим, у вас есть YAML-файл mydata.yaml, тогда вот как это будет выглядеть:

На эту тему можно найти массу других примеров. Кроме того, в наличии множество онлайн-конвертеров и локальных парсеров. Так что не стесняйтесь переформатировать данные, когда видите в них только непонятную мешанину.

4. Читайте спеки

Возвращаясь к YAML после долгого перерыва, полезно зайти на yaml.org и перечитать спецификации (спеки). Если у вас трудности с YAML, но до спецификации руки так и не дошли, то пора эту ситуацию исправлять. Спеки на удивление легко написаны, а требования к синтаксису иллюстрируются большим количеством примеров в Главе 6.

5. Псевдоконфиги

При написании книги или статьи всегда полезно сперва набросать предварительный план, хотя бы в виде оглавления. Так же и с YAML. Скорее всего, вы представляете, какие данные надо записать в файл YAML, но не очень понимаете, как связать их друг с другом. Поэтому прежде чем ваять YAML, нарисуйте псевдоконфиг.

Псевдоконфиг похож на псевдокод, где не надо заботиться о структуре или отступах, отношениях «родитель-потомок», наследовании и вложенности. Так и здесь: вы рисуете итерации данных по мере того, как они возникают у вас в голове.

yml чем открыть и редактировать. Смотреть фото yml чем открыть и редактировать. Смотреть картинку yml чем открыть и редактировать. Картинка про yml чем открыть и редактировать. Фото yml чем открыть и редактировать

Псевдоконфиг с перечислением программистов (Martin и Tabitha) и их навыков (языков программирования: Python, Perl, Pascal и Lisp, Fortran, Erlang, соответственно).

Нарисовав псевдоконфиг на листе бумаги, внимательно проанализируйте его и, если все в порядке, оформите в виде валидного YAML-файла.

6. Дилемма «табуляция или пробелы»

Вам придется решить дилемму «табуляция или пробелы?». Не в глобальном смысле, а лишь на уровне вашей организации, или хотя бы проекта. Неважно, будет ли при этом использоваться пост-обработка скриптом sed, настройка текстовых редакторов на машинах программистов или же поголовное взятие расписок о строгом соблюдении указаний линтера под угрозой увольнения, но все члены вашей команды, которые так или иначе касаются YAML, в обязательном порядке должны использовать только пробелы (как того требует спецификация YAML).

В любом нормальном текстовом редакторе можно настроить автозамену табуляции на заданное количество пробелов, поэтому бунта приверженцев клавиши Tab можно не бояться.

Как хорошо известно каждому ненавистнику YAML, на экране не видно разницы между табуляцией и пробелами. А когда чего-то не видно, об этом, как правило, вспоминают в последнюю очередь, после того, как перебрали, проверили и устранили все остальные возможные проблемы. Час времени, убитый на поиск кривой табуляции или блока пробелов, просто вопиет о том, что вам над срочно создать политику использования того или другого, а затем реализовать железобетонную проверку ее соблюдения (например, через Git-хук для принудительного прогона через линтер).

7. Лучше меньше да лучше (или больше – это меньше)

Некоторые люди любят писать на YAML, поскольку он подчеркивает структуру. При этом они активно используют отступы, чтобы выделять блоки данных. Это такое своего рода жульничество для имитации языков разметки, в которых используются явные разделители.

Вот пример такой структурированности из документации Ansible:

Кому-то такой вариант помогает разложить в голове структуру YAML, других он наоборот раздражает массой ненужных, на их взгляд, отступов.

Но если вы являетесь владельцем YAML-документа и отвечаете за его сопровождение, то вы и только вы должны определять, как использовать отступы. Если вас раздражают большие отступы, сведите их к минимуму, который только возможен согласно спецификации YAML. Например, вышеприведенный файл из документации Ansible без каких бы то ни было потерь можно переписать вот так:

8. Используйте заготовки

Если при заполнении файла YAML вы постоянно повторяете одни и те же ошибки, имеет смысл вставить в него шаблон-заготовку в виде комментария. Тогда в следующий раз можно будет просто скопировать эту заготовку и вписать туда реальные данные, например:

9. Используйте что-то другое

Если приложение не держит вас мертвой хваткой, то, возможно, стоит сменить YAML на другой формат. Со временем конфигурационные файлы могут перерастать себя и тогда лучше преобразовать их в простые скрипты на Lua или Python.

YAML – отличная штука, которую многие любят за минимализм и простоту, но это далеко не единственный инструмент в вашем арсенале. Так что иногда от него можно отказаться. Для YAML легко найти библиотеки парсинга, поэтому, если вы предложите удобные варианты миграции, ваши пользователи относительно безболезненно переживут такой отказ.

Если же без YAML никак не обойтись, то возьмите на вооружение эти 10 советов и победите свою неприязнь к YAML раз и навсегда!

Источник

Файл формата YML — что это?

yml чем открыть и редактировать. Смотреть фото yml чем открыть и редактировать. Смотреть картинку yml чем открыть и редактировать. Картинка про yml чем открыть и редактировать. Фото yml чем открыть и редактировать

Описание формата YML

В формате YML записывают и считывают различные данные независимо от того или иного языка программирования.

Основой стандарта стал YAML, являющийся человеко-читаемым форматом сериализации информации, разработка считается близкой большинству языков разметки.

Тип файла предоставляет возможность записи и чтения базы данных, при этом используются библиотеки YAML, которые задействуют разнообразные языки программирования, в том числе и Java, C/C++, Python, Perl, PHP, Ruby и многие другие.

Например файл database.yml используется в языке Ruby on Rails в целях хранения информации, связанной с соединением в процессе подключения к базам данным. Стандарт признан удобочитаемым, способствует качественной и корректной сериализации данных.

Расширение YML способен объединяться в большое количество языков, в таких ситуациях активируются поддерживающие библиотеки YAML, обладающие базой знаний внушительного числа языков.

Открыть файл YML можно в операционной системе Windows различных модификаций, как при помощи стандартного блокнота, так и посредством разнообразных текстовых редакторов. На платформе Mac OS распространены утилиты MacroMates TextMate и Apple TextEdit, а в рамках ОС Linux часто пользуются приложением Vim.

Некоторые владельцы мобильных устройств от компании Apple открывают рассматриваемый стандарт при помощи популярного программного комплекса Alexander Blach Textastic Code Editor.

Источник

Как сформировать YML-файл и устранить ошибки

После добавления профиля выгрузки вы сможете сформировать YML-файл, проверить его на наличие ошибок и добавить в личный кабинет на Маркете.

Укажите параметры выгрузки:

Выберите созданный или отредактированный профиль выгрузки, на основе которого будет сформирован YML-файл.

Укажите длительность одного шага выгрузки в секундах. Значение параметра должно быть сопоставимо со значением таймаута на сервере (обычно 30 секунд).

В двухуровневой архитектуре (Nginx + Apache HTTP Server/ PHP FPM) ограничения по времени могут устанавливаться как на уровне Nginx, так и на уровне Apache HTTP Server/ PHP FPM — соответственно, нужно указывать меньшее из значений.

Укажите интервал (пауза) между двумя шагами выгрузки в секундах. Значение параметра при стабильной работе сервера должно быть в диапазоне от 1 до 3 секунд. В случае перебоев значение стоит увеличить до 5-10 секунд.

Выберите созданный или отредактированный профиль выгрузки, на основе которого будет сформирован YML-файл.

Укажите длительность одного шага выгрузки в секундах. Значение параметра должно быть сопоставимо со значением таймаута на сервере (обычно 30 секунд).

В двухуровневой архитектуре (Nginx + Apache HTTP Server/ PHP FPM) ограничения по времени могут устанавливаться как на уровне Nginx, так и на уровне Apache HTTP Server/ PHP FPM — соответственно, нужно указывать меньшее из значений.

Укажите интервал (пауза) между двумя шагами выгрузки в секундах. Значение параметра при стабильной работе сервера должно быть в диапазоне от 1 до 3 секунд. В случае перебоев значение стоит увеличить до 5-10 секунд.

В результате будет сформирован YML-файл.

Посмотрите и устраните ошибки

Загрузите файл в личный кабинет

Если вы сформировали новый файл, после устранения ошибок укажите ссылку на новый файл в личном кабинете на Маркете. Подробнее о загрузке файлов см. в Справке Маркета для модели ADV.

Если вы отредактировали файл, при этом ранее вы указывали ссылку на файл в личном кабинете на Маркете, то делать это повторно не нужно.

Как сформировать YML-файл и устранить ошибки

После добавления профиля выгрузки вы сможете сформировать YML-файл, проверить его на наличие ошибок и добавить в личный кабинет на Маркете.

Укажите параметры выгрузки:

Выберите созданный или отредактированный профиль выгрузки, на основе которого будет сформирован YML-файл.

Укажите длительность одного шага выгрузки в секундах. Значение параметра должно быть сопоставимо со значением таймаута на сервере (обычно 30 секунд).

В двухуровневой архитектуре (Nginx + Apache HTTP Server/ PHP FPM) ограничения по времени могут устанавливаться как на уровне Nginx, так и на уровне Apache HTTP Server/ PHP FPM — соответственно, нужно указывать меньшее из значений.

Укажите интервал (пауза) между двумя шагами выгрузки в секундах. Значение параметра при стабильной работе сервера должно быть в диапазоне от 1 до 3 секунд. В случае перебоев значение стоит увеличить до 5-10 секунд.

Выберите созданный или отредактированный профиль выгрузки, на основе которого будет сформирован YML-файл.

Укажите длительность одного шага выгрузки в секундах. Значение параметра должно быть сопоставимо со значением таймаута на сервере (обычно 30 секунд).

В двухуровневой архитектуре (Nginx + Apache HTTP Server/ PHP FPM) ограничения по времени могут устанавливаться как на уровне Nginx, так и на уровне Apache HTTP Server/ PHP FPM — соответственно, нужно указывать меньшее из значений.

Укажите интервал (пауза) между двумя шагами выгрузки в секундах. Значение параметра при стабильной работе сервера должно быть в диапазоне от 1 до 3 секунд. В случае перебоев значение стоит увеличить до 5-10 секунд.

В результате будет сформирован YML-файл.

Посмотрите и устраните ошибки

Загрузите файл в личный кабинет

Если вы сформировали новый файл, после устранения ошибок укажите ссылку на новый файл в личном кабинете на Маркете. Подробнее о загрузке файлов см. в Справке Маркета для модели ADV.

Если вы отредактировали файл, при этом ранее вы указывали ссылку на файл в личном кабинете на Маркете, то делать это повторно не нужно.

Источник

Корректный YML для Яндекс.Маркета. Взгляд программиста

yml чем открыть и редактировать. Смотреть фото yml чем открыть и редактировать. Смотреть картинку yml чем открыть и редактировать. Картинка про yml чем открыть и редактировать. Фото yml чем открыть и редактировать
Многие интернет-магазины попадают в Яндекс.Маркет, не все там остаются надолго. Одно из условий присутствия в ЯМ-е – наличие корректного прайса в специальном формате YML.

Проверка такого прайса на ошибки и устранение таковых – целая история. Пока он не будет сформирован по всем правилам – вход в сие царство демпинга заказан. А при доведении документа до ума можно пережить немало незабываемых эмоций.

Данная статья – попытка обобщить те ошибки, с которыми сталкиваются программисты, впервые создающие инструменты (будь то автономный скрипт или плагин для CMS) для генерации YML-файла. Тем, кто с этим чудным форматом имел дело раньше, статья уже будет не столь интересна, ибо всё шишки набиты. Впрочем, вдруг и ветераны борьбы за своё место под солнцем Яндекса узнают что-то новое для себя. А то и поделятся собственным фронтовым опытом.

Классификация ошибок

Неактуальные ошибки

Ошибки спецификации XML

Критичные ошибки YML

Теперь Ваш прайс – кошерный XML, но Яндекс наотрез отказывается его принимать. Разбираемся дальше.

Некритичные ошибки YML

yml чем открыть и редактировать. Смотреть фото yml чем открыть и редактировать. Смотреть картинку yml чем открыть и редактировать. Картинка про yml чем открыть и редактировать. Фото yml чем открыть и редактировать
Яндекс почти ублажен. Поработаем ещё немного.

– проверяйте наличие файла. Если картинка в наличии, но в названии есть злополучные пробелы – кодируйте ссылки в RFC3986 (функция rawurlencode Вам в помощь).

Прочие ошибки

ОК, все огрехи тотально устранены и скормленный Яндексу yml-прайс не выплёвывается обратно. Погодите расслабляться, через пару дней вполне может прийти «письмо счастья» от менеджеров ЯМ-а, в котором уведомляется, что:

По большому счёту, подобные ошибки вне компетенции кодеров. За них отвечают другие специально обученные люди – контент-менеджеры, SEO-шники, маркетологи или кого там ещё нагрузили следить за содержимым сайта. Впрочем, программисты иногда могут помочь и здесь. Например, фильтруя картинки-заглушки (определяя их по стандартным названиям) или не пропуская описания продукции, почему-то начинающиеся со слов «Lorem ipsum» и «bla bla bla».

Как и где проверять ошибки

Отлавливать все эти многочисленные ляпы проще всего в таком порядке.

Источник

Руководство для начинающих YAML

YAML — это не язык разметки или сокращенно YAML — это язык сериализации данных, обычно используемый в файлах конфигурации, таких как Kubernetes, Docker, Ansible и многих других. Его популярность росла с годами, что сделало его своего рода конкурентом JSON.

Хорошо, если YAML не является языком разметки, что это такое?

Как уже упоминалось, YAML — это язык сериализации данных, разработанный для улучшения удобочитаемости за счет использования отступов и собственных структур данных. Думайте об этом как о строгом надмножестве JSON или как о помесье JSON и XML. Этот гибрид позволяет ему делать то, что может JSON, и другие дополнительные функции.

Цель этого руководства — познакомить вас с YAML, дать вам руководство по синтаксису языка, предоставить вам быстрые инструменты для работы с YAML и научить использовать его для файлов конфигурации и многое другое.

Как написать YAML

Написание YAML невероятно интуитивно понятно (я думаю, в этом суть), поскольку он использует синтаксис пары ключ-значение. Таким образом, это похоже на словарь в Python. Однако, в отличие от Python, YAML не позволяет использовать интервалы табуляции; он использует пробелы.

Чтобы начать новый документ YAML, мы начинаем с трех тире, обозначающих начало нового файла.

Эта функция позволяет вам иметь несколько документов, разделенных тире, в одном файле.

Создайте файл с расширением.YAML и добавьте следующее содержимое.

language : Python

author : Guido van Rossum

country : Netherlands

language : JavaScript

author : Brendan Eich

country : United States

language : Ruby

author : Yukihiro Matsumoto

country : Japan

Как видно из приведенного выше файла, каждый документ в yaml начинается с трех точек, за которыми следуют данные, хранящиеся в парах ключ-значение.

Установите YAML linter

Прежде чем продолжить, давайте подтвердим, что у нас есть действующий файл YAML. Для этого нам необходимо установить линтер YAML.

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

В нашем примере мы будем использовать yamllint.

Для установки используйте apt как:

После установки мы можем запустить линтер для файла с помощью команды

Если файл содержит допустимый синтаксис YAML, он не дает нам никаких результатов.

Теперь попробуйте добавить пробелы внутри файла YAML или добавить один дефис внизу как:

language : Python

author : Guido van Rossum

country : Netherlands

language : JavaScript

author : Brendan Eich

country : United States

language : Ruby

author : Yukihiro Matsumoto

country : Japan

Если мы запустим линтер для этого файла, появятся ошибки, как показано ниже:

ПРИМЕЧАНИЕ. Подобно словарям в Python и аналогичным структурам данных в различных языках программирования, пары ключ-значение в документе YAML должны быть уникальными.

Типы данных YAML

YAML поддерживает различные способы представления данных. Они включают:

#: Scalar types

Это наиболее распространенный тип данных в YAML. Они представлены в виде пар «ключ-значение», как показано в примере выше.

Значения в паре могут быть любого типа, например строки, числа, включая шестнадцатеричные, целые числа и т. Д.

#: Strings

YAML также поддерживает строки, заключенные в одинарные или двойные кавычки. Это не является требованием, поскольку синтаксический анализатор YAML определит это, но может быть полезным, особенно в строках с escape-символами.

Ниже приведены примеры действительных строк в YAML.

string : This is a string

string2 : “This is also a string”

string : ‘so is this one’

ПРИМЕЧАНИЕ. Не забудьте закрыть двойные или одинарные кавычки, если они используются. Следующее приведет к ошибке.

invalid: ‘this is incorrect

Чтобы добавить абзац в файл YAML, используйте знак (больше). Не забудьте добавить пробел перед строкой. Например:

para: >

creating a paragraph

that spans for more than one

#: Numeric Types

Другой тип данных, поддерживаемый в YAML, — это числовые типы. Числовые типы включают целые, десятичные, шестнадцатеричные, восьмеричные и другие числовые типы.

Следующий синтаксис YAML представляет числовые типы.

#: Lists

Списки в YAML указываются одним тире как:

#: Sequences

Последовательности — это типы данных, используемые для хранения нескольких значений в одном и том же ключе. Например:

#: Mappings

Сопоставление очень похоже на последовательность, но состоит из пар ключ-значение, содержащихся в одной подгруппе.

Servers :

— apache :

name : server1

os : Debian 10

version : 2.4.46

— IIS :

name : iis-v01

os : Windows Datacenter 2019

version : 10.0.17763

мы устанавливаем null в YAML, используя тильду (

) или строку null, как показано в примере ниже:

#: Arrays

Массивы в YAML указываются в квадратных скобках в одной строке. В следующем примере показано определение массивов в YAML.

Комментарии YAML

YAML также поддерживает комментарии, которые позволяют добавлять дополнительную информацию к данным YAML. Парсер игнорирует комментарии.

YAML comments begin with an Octothorpe ( #).

# This is a comment in YAML

Преобразование YAML в JSON

В некоторых случаях нам может потребоваться преобразовать YAML в JSON. Поскольку они тесно связаны между собой, имеет смысл использовать одно в другом.

Для таких сценариев мы можем использовать такой инструмент, как yq, который представляет собой синтаксический анализатор YAML / XML для jq.

Чтобы установить его, используйте pip с командой, как показано ниже:

ПРИМЕЧАНИЕ. Убедитесь, что у вас установлен jq, поскольку это обязательная зависимость для yq.

Предположим, у нас есть образец файла для создания пода Kubernetes (Kubernetes.yaml) с таким содержимым, как показано:


apiVersion : v1
kind : Pod
metadata :
name : store-site
labels :
app : web
spec :
containers :
— name : nginx
image : nginx
ports :
— containerPort : 8080
volumeMounts :
— name : master
mountPath : /var/www/html/nginx
dnsPolicy : Default
volumes :
— name : home_directory
emptyDir :

ПРИМЕЧАНИЕ. Приведенный выше файл предназначен для иллюстрации и может содержать ошибки при использовании в реальном экземпляре Kubernetes.

Чтобы преобразовать файл YAML в JSON, используйте команду:

После выполнения приведенной выше команды содержимое файла автоматически преобразуется в JSON, как показано ниже:

Это упрощает работу при переходе с JSON на YAML и наоборот.

Заключение

YAML — это невероятно мощный инструмент, который позволяет создавать хорошо читаемые и совместимые файлы конфигурации для служб поддержки. Используя концепции этого руководства, вы можете создавать сложные документы YAML для своих приложений или приложений, поддерживающих YAML.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *