ansibleのインベントリに設定した変数にアクセスする方法
ansibleのインベントリに設定した変数にアクセスする方法を紹介します。
1.問題点
ansibleで下記のインベントリを作成しました。
test00 ansible_host=192.168.0.10
test01 ansible_host=192.168.0.11
[all:vars]
ansible_user=test
ansible_ssh_pass=test
[server1]
test00
[server2]
test01
[server1:vars]
hoge=1
[server2:vars]
hoge=2
このインベントリでserver1ホスト指定で実行するときに、server2の変数hoge
[server2:vars]
hoge=2
の値を参照したいのですが、方法が分かりません。
ということで、ansibleのインベントリに設定した変数にアクセスする方法を紹介します。
2.ansibleのインベントリに設定した変数にアクセスする
ansibleのインベントリに設定した変数にアクセスするには、下記のように指定します。
hostvars[groups['server1'][0]]['hoge']
例:
- name: コマンド実行
command:
cmd: echo {{ hostvars[groups['server1'][0]]['hoge'] }}
register: result
- name: "結果出力"
debug:
msg: "{{ result.stdout_lines }}"
小粋空間プラグインのMovable Type8対応状況
小粋空間で販売させて頂いているプラグインのMovable Type8対応状況です。
Workflow
コンテンツデータ・記事・ウェブページで承認ワークフローを実現します。多段階承認やグループ別承認、複数承認も可能です。
すべてのグレードでMT8に対応しました。
CSVDataImExporter
CSV形式でMovable Typeのコンテンツデータ・記事・ウェブページデータのエクスポート・インポートが可能になるプラグインです。
通常版・機能拡張版、いずれもでMT8に対応しました。
SaveWithoutRebuild
Movable Typeでコンテンツデータや記事保存時に再構築を行わないためのプラグインです。
MT8に対応しました。
ListingFieldEditor
コンテンツデータや記事のカスタムフィールドのデータを一覧画面で編集できるプラグインです。
MT8に対応しました。
PowerListingFieldEditor
コンテンツデータや記事のカスタムフィールドのデータを一覧画面で一括編集できるプラグインです。
MT8に対応しました。
価格について
いずれも価格はMT7から据え置きですが、今後機能追加や機能差分等で改修を伴う場合は価格を変更させて頂くかもしれません。
その他
他のプラグインも随時、MT8に対応させて頂く予定です。
VirtualBoxにisoファイルをマウントしてローカルリポジトリでdnfを利用する方法
VirtualBoxにisoファイルをマウントしてローカルリポジトリでdnfを利用する方法を紹介します。
ここではWindowsマシンにVirtualBoxをインストールしてCentOSのゲストOSを作成し、Windowsのフォルダにisoファイルを配置している前提で進めます。
利用したいisoファイルは事前に入手し、Windowsの任意のフォルダにダウンロードしておいてください。
1.isoファイルのマウント
該当のゲストOSが停止・選択している状態で、VirtualBoxマネージャーの「設定」をクリック。
「ストレージ」をクリック。
「コントローラーIDE」にisoファイルを設定します。この例ではすでに設定してしまっているので、すいませんが他の記事を参考に設定してください。
また、このサンプルではCentOSのisoのみを設定していますが、デフォルトではVBoxGuestAdditions.isoがマウントされている可能性があります。その状態で後続のマウントを実施すると期待する結果にならないようなので、マウントしたいisoのみにしてください。
そしてゲストOSを起動して、/media配下にcdromディレクトリを作成し、mountコマンドを実行します。
# cd /media
# mkdir cdrom
# mount /dev/cdrom /media/cdrom
mount: /media/cdrom: 警告: デバイスは書き込み禁止です、読み込み専用でマウントします.
これで/media/cdrom配下が下記の状態になればOKです。
# pwd
/media/cdrom
# ls
AppStream BaseOS EFI TRANS.TBL images isolinux media.repo
2.リポジトリの設定変更
デフォルトでは外部のリポジトリを参照する設定になっているので、それらを変更します。
ちなみに、何も設定していない状態でdnf listを実行すると、次のようなエラーになります。
# dnf repolist
CentOS-8 - AppStream 6.8 B/s | 38 B 00:05
repo 'AppStream' のメタデータのダウンロードに失敗しました。
エラー: repo 'AppStream' のメタデータのダウンロードに失敗しました。
/etc/yum.repos.d/CentOS-AppStream.repoのenabledを1(有効)から0(無効)に変更します(★の行、以下同様)。
/etc/yum.repos.d/CentOS-AppStream.repo
:
[AppStream]
name=CentOS-$releasever - AppStream
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=AppStream&infra=$infra
#baseurl=http://mirror.centos.org/$contentdir/$releasever/AppStream/$basearch/os/
gpgcheck=1
enabled=0★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
/etc/yum.repos.d/CentOS-Base.repoのenabledを1(有効)から0(無効)に変更します。
/etc/yum.repos.d/CentOS-Base.repo
:
[BaseOS]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=BaseOS&infra=$infra
#baseurl=http://mirror.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=0★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
/etc/yum.repos.d/CentOS-Extras.repoのenabledを1(有効)から0(無効)に変更します。
/etc/yum.repos.d/CentOS-Extras.repo
:
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
#baseurl=http://mirror.centos.org/$contentdir/$releasever/extras/$basearch/os/
gpgcheck=1
enabled=0★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
/etc/yum.repos.d/CentOS-Media.repoのenabledを0(無効)から1(有効)に変更します。
/etc/yum.repos.d/CentOS-Media.repo
:
[c8-media-BaseOS]
name=CentOS-BaseOS-$releasever - Media
baseurl=file:///media/CentOS/BaseOS
file:///media/cdrom/BaseOS
file:///media/cdrecorder/BaseOS
gpgcheck=1
enabled=1★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
[c8-media-AppStream]
name=CentOS-AppStream-$releasever - Media
baseurl=file:///media/CentOS/AppStream
file:///media/cdrom/AppStream
file:///media/cdrecorder/AppStream
gpgcheck=1
enabled=1★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
これで、dnfコマンドでローカルリポジトリが利用できるようです。
# dnf repolist
CentOS-BaseOS-8 - Media 154 MB/s | 2.2 MB 00:00
CentOS-AppStream-8 - Media 177 MB/s | 5.4 MB 00:00
repo id repo の名前 状態
c8-media-AppStream CentOS-AppStream-8 - Media 4,755
c8-media-BaseOS CentOS-BaseOS-8 - Media 1,659