YAMLを覚えよう
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
[[自分用のpukiwiki]]
#contents
* YAMLを覚えよう [#kceefe13]
** はじめに [#m1b18794]
最近、ansibelなどの設定書式で用いられる記法「YAML」につい...
** YAMLとは? [#j6d29aed]
*** 概要 [#n72d92e5]
YAML Ain’t Markup Languageの略で、構造化データの表現する...
- 設定ファイル
- データ保存
- データ交換
*** XMLとの違い [#i9b7f415]
XMLとYAML大きな違いは、表記方法が異なります。
XML = 開始、終了タグ()を利用した構造化データを表現。 YAML...
XMLと比べ、人が見る場合に非常にわかりやすい構造で表現する...
以下、XMLとYAMLを比較すために、サンプルを記載します。
<例) 書籍の一覧を表現する場合>
[XML]
<books>
<book>
<name>書籍タイトルその1</name>
<author>山本 太郎</author>
</book>
<book>
<name>書籍タイトルその2</name>
<author>鈴木 一郎</author>
</book>
</books>
[YAML]
books:
- name:書籍タイトルその1
author:山本 太郎
- name:書籍タイトルその2
author:鈴木 一郎
** 公式サイト [#n6300519]
YAMLの公式サイトは、以下になります。書式の仕様などを調べ...
URL http://yaml.org
** 環境 [#j9e602ce]
今回は、YAMLを構文を確認するため、Pythonを利用します。 各...
□ OS
[root@yaml ~]# cat /etc/redhat-release
CentOS release 6.6 (Final)
□ YAML
[root@yaml ~]# rpm -aq |grep yaml
libyaml-0.1.6-1.el6.x86_64
libyaml-devel-0.1.6-1.el6.i686
□ Python
[root@yaml ~]# python -V
Python 2.6.6
*** ※補足 [#tf06c870]
今回は、YAMLファイルとPythonを繋ぐライブラリはAnsibleで利...
項目 説明
ライブラリ名 LibYAML for Python
WEBサイト http://pyyaml.org/wiki...
ドキュメント http://pyyaml.org/wiki...
ダウンロード http://pyyaml.org/down...
バージョン 0.1.6
YAML対応 YAML 1.1準拠
*** YAMLを触ってみる。 [#ud1d6df6]
まず、YAMLの構文に慣れてもらうため、簡単なプログラムを書...
*** MyYaml.ymlの作成 [#m623572b]
YAMLを記述するファイルを作成します。 拡張子は、「yml」に...
ここでは、配列を表す記述を記載してみます。
[root@yaml ~]# vi MyYaml.yml
[root@yaml ~]# cat MyYaml.yml
- a
- b
- c
*** parse.pyの作成 [#v8ccfcb8]
記載したYAMLファイルの構文をチェックするため、Pythonのコ...
[root@yaml ~]# vi parse.py
[root@yaml ~]# cat parse.py
#-*- coding: utf-8 -*-
# yamlを利用するための宣言
import yaml;
# MyYaml.ymlファイルを読み込み(パース)後、結果を標準出力。
print yaml.load(open('MyYaml.yml').read())
動作確認
作成したMyYaml.ymlを、parse.pyでパースして、出力結果を確...
[root@yaml ~]# python parse.py
['a', 'b', 'c']
以降の章からは、「MyYaml.yml」へ記載内容と「python parse....
XXXXXXX # MyYaml.ymlの編集内容記載
(結果)
[XXXXXXX] # python parse.pyを実行した結果記載
** 基本的な構文を抑えよう。 [#s90f3275]
YAML では、主に次の 3 つの組み合わせでデータを表現します。
- シーケンス(Sequence) データを連続的に並べた構造を表す。...
- マッピング(Mapping) キーと値のペアを列挙する構造を表す...
- スカラー(scalar) 文字列、数値、真偽値などの変数(値の入...
ここでは、上記の3つの書き方を紹介します。
** シーケンス(Sequence) [#jda3c37e]
*** □ 基本書式 [#z2d72f3f]
- d1
- d2
- d3
(結果)
['d1', 'd2', 'd3']
☆注意点☆
- [-]の後の半角スペースは必須。
- d1
-d2 #半角スペースなし
- d3
(結果)
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
*** □ 入れ子(ネスト)書式 [#w0e487d0]
- d1
-
- sd2-1
- sb2-2
- d3
(結果)
['d1', ['d2-1', 'd2-2'], 'd3']
☆注意点☆
- 字下げにタブ・全角空白は使えない。※半角スペース2つで記...
- d1
-
- sd2-1 # 字下げにタブ使用。
- sb2-2
- d3
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
- 入れ子の際、親の値は記載しない。
- d1
- d2 # 親値を記載
- sd2-1
- sb2-2
- d3
(結果) ※入れ子にならず、1つ配列として認識される。
['d1', 'd2 - sd2-1 - sd2-2', 'd3']
** マッピング(Mapping) [#f0f6b265]
*** □ 基本書式 [#n41b5f15]
key1: val1
key2: val2
(結果)
{'key2': 'val2', 'key1': 'val1'}
☆注意点☆
•:(コロン)の後の半角スペースは必須(1つ以上)。
key1: val1
key2:val2 # 半角スペースなし
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
- key:の「:(コロン)」の前に半角スペースを入れることも可。...
hostname: nsw1.exzample.com
ipv4 : 192.168.0.1 # ipv4の後に半角スペースを入れる
(結果)
{'hostname': 'nsw1.exzample.com', 'ipv4': '192.168.0.1'}
*** □ 入れ子(ネスト)書式 [#j5c7b155]
keys:
skey1: val1
skey2: val2
(結果)
{'keys': {'skey1': 'val1', 'skey2': 'val2'}}
☆注意点☆
- 字下げにタブは使えない。半角スペース2つで記述。
keys:
skey1: val1
skey2: val2 #字下げにタブ使用。
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
- 入れ子の際、親の値は記載しない。
keys: vals # 親値を記載
skey1: val1
skey2: val2
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
** スカラー(scalar) [#wb47c848]
*** □ 自動判別 [#wa17e12c]
- 記載した値が自動的に判別されることを確認します。
# 文字列
str1: 文字列
str2: string
# 整数
decimal1: 123 # 10 進数
decimal2: 1,234,567,890 # 10 進数
octal: 0644 # 8 進数
hexa: 0xFF # 16 進数
# 浮動小数点
float1: 0.05
# 真偽値 (true, yes, false, no)
bool1: true # 真
bool2: yes # 真
bool3: on # 真
bool4: false # 偽
bool5: no # 偽
bool6: off # 偽
# Null値 (null, ~)
null1: ~
null2: null
# 日付 (yyyy-mm-dd)
date: 2005-01-01
# タイムスタンプ (yyyy-mm-dd hh:mm:ss [+-]hh:mm)
stamp: 2005-01-01 00:00:00 +09:00
(結果)
{'date': datetime.date(2005, 1, 1), 'float1': 0.050000000...
*** □ 文字列変換 [#oc7578d6]
文字列として変換したい場合は、「"“」(ダブルコーテーション...
# 整数
decimal1: 123 # 10 進数
decimal2: 1,234,567,890 # 10 進数
octal: 0644 # 8 進数
hexa: 0xFF # 16 進数
# 整数
decimal1: "123" # 10 進数
decimal2: "1,234,567,890" # 10 進数
octal: "0644" # 8 進数
hexa: "0xFF" # 16 進数
# 浮動小数点
float1: "0.05"
# 真偽値 (true, yes, false, no)
bool1: "true" # 真
bool2: "yes" # 真
bool3: "on" # 真
bool4: "false" # 偽
bool5: "no" # 偽
bool6: "off" # 偽
# Null値 (null, ~)
null1: "~"
null2: "null"
# 日付 (yyyy-mm-dd)
date: "2005-01-01"
# タイムスタンプ (yyyy-mm-dd hh:mm:ss [+-]hh:mm)
stamp: "2005-01-01 00:00:00 +09:00"
(結果)
{'bool5': 'no', 'bool4': 'false', 'bool6': 'off', 'bool1'...
※文字列変換前
{'bool5': False, 'bool4': False, 'bool6': False, 'bool1':...
* 複雑な構文を抑えよう。 [#wbe034f4]
前章では、基本的な構文を紹介しました。 ここでは、シーケン...
** マッピング - シーケンス [#ee7d93c0]
*** □ 基本書式 [#s5ddf91e]
- bookname: sample1
author: taro
- bookname: sample2
author: jiro
(結果)
[{'bookname': 'sample1', 'author': 'taro'}, {'bookname': ...
** シーケンス - マッピング [#k831f4f1]
*** □ 基本書式 [#o701f5e9]
books:
- sample1
- sample2
authors:
- taro
- jiro
(結果)
{'books': ['sample1', 'sample2'], 'authors': ['taro', 'ji...
*** ブロックスタイルとフロースタイルを抑える。 [#wa42c4b7]
YAMLの構文には、以下の2種類があります。
- ブロックスタイル インデントを使って構造を表す書き方 1...
- フロースタイル 「{}」や「[]」を使って構造を表す書き方 ...
今まで紹介した構造の書き方は、「 ブロックスタイル 」にな...
** シーケンス(Sequence) [#oaca3feb]
*** □ 基本書式 [#p73cc537]
[d1, d2, d3]
(結果)
['d1', 'd2', 'd3']
☆注意点☆
•[,]の後の半角スペースは必須。
[d1,d2, d3] #d2の前の半角スペースなし
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
*** □ 入れ子(ネスト)書式 [#d6c449a0]
ネストしたい個所を[]で囲みます。
[d1, [d2-1, d2-2], d3]
(結果)
['d1', ['d2-1', 'd2-2'], 'd3']
** マッピング(Mapping) [#efdcd979]
***□ 基本書式 [#k265caac]
{key1: val1, key2: val2}
(結果)
{'key2': 'val2', 'key1': 'val1'}
☆注意点☆
•:や,の後の半角スペースは必須。
{key1: val1,key2:val2} # key2前の半角スペースなし
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
*** □ 入れ子(ネスト)書式 [#w4e8db50]
{keys: {skey1: val1, skey2: val2}}
(結果)
{'keys': {'skey1': 'val1', 'skey2': 'val2'}}
** マッピング - シーケンス [#sed03119]
*** □ 基本書式 [#j61e7fad]
[
{bookname: sample1, author: taro},
{bookname: sample2, author: jiro}
]
(結果)
[{'bookname': 'sample1', 'author': 'taro'}, {'bookname': ...
** シーケンス - マッピング [#wc93ca54]
*** □ 基本書式 [#ua89066b]
{
books: [sample1, sample2],
authors: [taro, jiro]
}
(結果)
{'books': ['sample1', 'sample2'], 'authors': ['taro', 'j...
*** 改行を含むデータを扱ってみよう [#y3029cba]
YAMLの特性として改行すると次のデータになってしまいます。 ...
- |(パイプ) ** 改行を保存することが可能。
- (リダイレクト) ** 半角スペースに置き換える事が可能。
*** |(パイプ)を利用してみる。 [#jdb6ca23]
key: |
v
a
l
(結果)
{'key': 'v\na\nl\n'} #改行コード「\n」が保存されます。
*** >(リダイレクト)を利用してみる。 [#c4392271]
key: >
v
a
l
(結果)
{'key': 'v a l'} #改行コードが半角スペースに変換され...
*** まとめ [#x8611422]
もう、お分かりの通り
%{color: red; font-size: 20px;}YAML% では、 %{color: red;...
途中でも紹介しましたが、YAMLファイルを作成する場合は、次...
-「-(ハイフン)」,「:(コロン)」,「,(カンマ)」の後には、1文...
-タブや全角スペースによるインデントは禁止。
** おわりに… [#y3cea623]
今回は、Ansibleの構文を書くために必要な知識を覚えて頂くこ...
- •アンカー(&)とエイリアス() ** アンカー(&)で記載した構文...
- •…(ピリオド3つ) ** 指定した以降の処理は、スキップする。
- •—(ハイフン3つ) ** ドキュメントの終始を表す。
etc…
これらの情報は、以下のサイト(Ruby + YAML)がまとまっており...
http://magazine.rubyist.net/?0009-YAML
良ければ、ご参照
終了行:
[[自分用のpukiwiki]]
#contents
* YAMLを覚えよう [#kceefe13]
** はじめに [#m1b18794]
最近、ansibelなどの設定書式で用いられる記法「YAML」につい...
** YAMLとは? [#j6d29aed]
*** 概要 [#n72d92e5]
YAML Ain’t Markup Languageの略で、構造化データの表現する...
- 設定ファイル
- データ保存
- データ交換
*** XMLとの違い [#i9b7f415]
XMLとYAML大きな違いは、表記方法が異なります。
XML = 開始、終了タグ()を利用した構造化データを表現。 YAML...
XMLと比べ、人が見る場合に非常にわかりやすい構造で表現する...
以下、XMLとYAMLを比較すために、サンプルを記載します。
<例) 書籍の一覧を表現する場合>
[XML]
<books>
<book>
<name>書籍タイトルその1</name>
<author>山本 太郎</author>
</book>
<book>
<name>書籍タイトルその2</name>
<author>鈴木 一郎</author>
</book>
</books>
[YAML]
books:
- name:書籍タイトルその1
author:山本 太郎
- name:書籍タイトルその2
author:鈴木 一郎
** 公式サイト [#n6300519]
YAMLの公式サイトは、以下になります。書式の仕様などを調べ...
URL http://yaml.org
** 環境 [#j9e602ce]
今回は、YAMLを構文を確認するため、Pythonを利用します。 各...
□ OS
[root@yaml ~]# cat /etc/redhat-release
CentOS release 6.6 (Final)
□ YAML
[root@yaml ~]# rpm -aq |grep yaml
libyaml-0.1.6-1.el6.x86_64
libyaml-devel-0.1.6-1.el6.i686
□ Python
[root@yaml ~]# python -V
Python 2.6.6
*** ※補足 [#tf06c870]
今回は、YAMLファイルとPythonを繋ぐライブラリはAnsibleで利...
項目 説明
ライブラリ名 LibYAML for Python
WEBサイト http://pyyaml.org/wiki...
ドキュメント http://pyyaml.org/wiki...
ダウンロード http://pyyaml.org/down...
バージョン 0.1.6
YAML対応 YAML 1.1準拠
*** YAMLを触ってみる。 [#ud1d6df6]
まず、YAMLの構文に慣れてもらうため、簡単なプログラムを書...
*** MyYaml.ymlの作成 [#m623572b]
YAMLを記述するファイルを作成します。 拡張子は、「yml」に...
ここでは、配列を表す記述を記載してみます。
[root@yaml ~]# vi MyYaml.yml
[root@yaml ~]# cat MyYaml.yml
- a
- b
- c
*** parse.pyの作成 [#v8ccfcb8]
記載したYAMLファイルの構文をチェックするため、Pythonのコ...
[root@yaml ~]# vi parse.py
[root@yaml ~]# cat parse.py
#-*- coding: utf-8 -*-
# yamlを利用するための宣言
import yaml;
# MyYaml.ymlファイルを読み込み(パース)後、結果を標準出力。
print yaml.load(open('MyYaml.yml').read())
動作確認
作成したMyYaml.ymlを、parse.pyでパースして、出力結果を確...
[root@yaml ~]# python parse.py
['a', 'b', 'c']
以降の章からは、「MyYaml.yml」へ記載内容と「python parse....
XXXXXXX # MyYaml.ymlの編集内容記載
(結果)
[XXXXXXX] # python parse.pyを実行した結果記載
** 基本的な構文を抑えよう。 [#s90f3275]
YAML では、主に次の 3 つの組み合わせでデータを表現します。
- シーケンス(Sequence) データを連続的に並べた構造を表す。...
- マッピング(Mapping) キーと値のペアを列挙する構造を表す...
- スカラー(scalar) 文字列、数値、真偽値などの変数(値の入...
ここでは、上記の3つの書き方を紹介します。
** シーケンス(Sequence) [#jda3c37e]
*** □ 基本書式 [#z2d72f3f]
- d1
- d2
- d3
(結果)
['d1', 'd2', 'd3']
☆注意点☆
- [-]の後の半角スペースは必須。
- d1
-d2 #半角スペースなし
- d3
(結果)
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
*** □ 入れ子(ネスト)書式 [#w0e487d0]
- d1
-
- sd2-1
- sb2-2
- d3
(結果)
['d1', ['d2-1', 'd2-2'], 'd3']
☆注意点☆
- 字下げにタブ・全角空白は使えない。※半角スペース2つで記...
- d1
-
- sd2-1 # 字下げにタブ使用。
- sb2-2
- d3
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
- 入れ子の際、親の値は記載しない。
- d1
- d2 # 親値を記載
- sd2-1
- sb2-2
- d3
(結果) ※入れ子にならず、1つ配列として認識される。
['d1', 'd2 - sd2-1 - sd2-2', 'd3']
** マッピング(Mapping) [#f0f6b265]
*** □ 基本書式 [#n41b5f15]
key1: val1
key2: val2
(結果)
{'key2': 'val2', 'key1': 'val1'}
☆注意点☆
•:(コロン)の後の半角スペースは必須(1つ以上)。
key1: val1
key2:val2 # 半角スペースなし
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
- key:の「:(コロン)」の前に半角スペースを入れることも可。...
hostname: nsw1.exzample.com
ipv4 : 192.168.0.1 # ipv4の後に半角スペースを入れる
(結果)
{'hostname': 'nsw1.exzample.com', 'ipv4': '192.168.0.1'}
*** □ 入れ子(ネスト)書式 [#j5c7b155]
keys:
skey1: val1
skey2: val2
(結果)
{'keys': {'skey1': 'val1', 'skey2': 'val2'}}
☆注意点☆
- 字下げにタブは使えない。半角スペース2つで記述。
keys:
skey1: val1
skey2: val2 #字下げにタブ使用。
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
- 入れ子の際、親の値は記載しない。
keys: vals # 親値を記載
skey1: val1
skey2: val2
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
** スカラー(scalar) [#wb47c848]
*** □ 自動判別 [#wa17e12c]
- 記載した値が自動的に判別されることを確認します。
# 文字列
str1: 文字列
str2: string
# 整数
decimal1: 123 # 10 進数
decimal2: 1,234,567,890 # 10 進数
octal: 0644 # 8 進数
hexa: 0xFF # 16 進数
# 浮動小数点
float1: 0.05
# 真偽値 (true, yes, false, no)
bool1: true # 真
bool2: yes # 真
bool3: on # 真
bool4: false # 偽
bool5: no # 偽
bool6: off # 偽
# Null値 (null, ~)
null1: ~
null2: null
# 日付 (yyyy-mm-dd)
date: 2005-01-01
# タイムスタンプ (yyyy-mm-dd hh:mm:ss [+-]hh:mm)
stamp: 2005-01-01 00:00:00 +09:00
(結果)
{'date': datetime.date(2005, 1, 1), 'float1': 0.050000000...
*** □ 文字列変換 [#oc7578d6]
文字列として変換したい場合は、「"“」(ダブルコーテーション...
# 整数
decimal1: 123 # 10 進数
decimal2: 1,234,567,890 # 10 進数
octal: 0644 # 8 進数
hexa: 0xFF # 16 進数
# 整数
decimal1: "123" # 10 進数
decimal2: "1,234,567,890" # 10 進数
octal: "0644" # 8 進数
hexa: "0xFF" # 16 進数
# 浮動小数点
float1: "0.05"
# 真偽値 (true, yes, false, no)
bool1: "true" # 真
bool2: "yes" # 真
bool3: "on" # 真
bool4: "false" # 偽
bool5: "no" # 偽
bool6: "off" # 偽
# Null値 (null, ~)
null1: "~"
null2: "null"
# 日付 (yyyy-mm-dd)
date: "2005-01-01"
# タイムスタンプ (yyyy-mm-dd hh:mm:ss [+-]hh:mm)
stamp: "2005-01-01 00:00:00 +09:00"
(結果)
{'bool5': 'no', 'bool4': 'false', 'bool6': 'off', 'bool1'...
※文字列変換前
{'bool5': False, 'bool4': False, 'bool6': False, 'bool1':...
* 複雑な構文を抑えよう。 [#wbe034f4]
前章では、基本的な構文を紹介しました。 ここでは、シーケン...
** マッピング - シーケンス [#ee7d93c0]
*** □ 基本書式 [#s5ddf91e]
- bookname: sample1
author: taro
- bookname: sample2
author: jiro
(結果)
[{'bookname': 'sample1', 'author': 'taro'}, {'bookname': ...
** シーケンス - マッピング [#k831f4f1]
*** □ 基本書式 [#o701f5e9]
books:
- sample1
- sample2
authors:
- taro
- jiro
(結果)
{'books': ['sample1', 'sample2'], 'authors': ['taro', 'ji...
*** ブロックスタイルとフロースタイルを抑える。 [#wa42c4b7]
YAMLの構文には、以下の2種類があります。
- ブロックスタイル インデントを使って構造を表す書き方 1...
- フロースタイル 「{}」や「[]」を使って構造を表す書き方 ...
今まで紹介した構造の書き方は、「 ブロックスタイル 」にな...
** シーケンス(Sequence) [#oaca3feb]
*** □ 基本書式 [#p73cc537]
[d1, d2, d3]
(結果)
['d1', 'd2', 'd3']
☆注意点☆
•[,]の後の半角スペースは必須。
[d1,d2, d3] #d2の前の半角スペースなし
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
*** □ 入れ子(ネスト)書式 [#d6c449a0]
ネストしたい個所を[]で囲みます。
[d1, [d2-1, d2-2], d3]
(結果)
['d1', ['d2-1', 'd2-2'], 'd3']
** マッピング(Mapping) [#efdcd979]
***□ 基本書式 [#k265caac]
{key1: val1, key2: val2}
(結果)
{'key2': 'val2', 'key1': 'val1'}
☆注意点☆
•:や,の後の半角スペースは必須。
{key1: val1,key2:val2} # key2前の半角スペースなし
(結果)※エラーが発生。
Traceback (most recent call last):
File "parse.py", line 6, in
~ 略 ~
*** □ 入れ子(ネスト)書式 [#w4e8db50]
{keys: {skey1: val1, skey2: val2}}
(結果)
{'keys': {'skey1': 'val1', 'skey2': 'val2'}}
** マッピング - シーケンス [#sed03119]
*** □ 基本書式 [#j61e7fad]
[
{bookname: sample1, author: taro},
{bookname: sample2, author: jiro}
]
(結果)
[{'bookname': 'sample1', 'author': 'taro'}, {'bookname': ...
** シーケンス - マッピング [#wc93ca54]
*** □ 基本書式 [#ua89066b]
{
books: [sample1, sample2],
authors: [taro, jiro]
}
(結果)
{'books': ['sample1', 'sample2'], 'authors': ['taro', 'j...
*** 改行を含むデータを扱ってみよう [#y3029cba]
YAMLの特性として改行すると次のデータになってしまいます。 ...
- |(パイプ) ** 改行を保存することが可能。
- (リダイレクト) ** 半角スペースに置き換える事が可能。
*** |(パイプ)を利用してみる。 [#jdb6ca23]
key: |
v
a
l
(結果)
{'key': 'v\na\nl\n'} #改行コード「\n」が保存されます。
*** >(リダイレクト)を利用してみる。 [#c4392271]
key: >
v
a
l
(結果)
{'key': 'v a l'} #改行コードが半角スペースに変換され...
*** まとめ [#x8611422]
もう、お分かりの通り
%{color: red; font-size: 20px;}YAML% では、 %{color: red;...
途中でも紹介しましたが、YAMLファイルを作成する場合は、次...
-「-(ハイフン)」,「:(コロン)」,「,(カンマ)」の後には、1文...
-タブや全角スペースによるインデントは禁止。
** おわりに… [#y3cea623]
今回は、Ansibleの構文を書くために必要な知識を覚えて頂くこ...
- •アンカー(&)とエイリアス() ** アンカー(&)で記載した構文...
- •…(ピリオド3つ) ** 指定した以降の処理は、スキップする。
- •—(ハイフン3つ) ** ドキュメントの終始を表す。
etc…
これらの情報は、以下のサイト(Ruby + YAML)がまとまっており...
http://magazine.rubyist.net/?0009-YAML
良ければ、ご参照
ページ名: