AWX(Tower)のデータベースから、インベントリーの情報を取得するSQLクエリをご紹介します。
はじめに
以前、Ansible AWX(Tower)のデータベースに接続する方法を解説しました。
今回は、そのデータベースから「インベントリー」の設定情報を取得するSQLクエリをご紹介したいと思います。
取得する情報について
今回取得する情報は、下記画像のインベントリーの詳細画面の内容になります。
また、インベントリーが複数登録されている場合は、全て取得されます。
SQLクエリ
インベントリー情報を取得するSQLクエリです。
SELECT inventory.id,
inventory.name AS 名前,
inventory.description AS 説明,
organization.name AS 組織,
credential.name AS "INSIGHTS 認証情報",
instancegroup.name AS インスタンスグループ,
inventory.variables AS 変数
FROM public.main_inventory AS inventory
LEFT JOIN public.main_credential AS credential
ON inventory.insights_credential_id = credential.id
LEFT JOIN public.main_inventoryinstancegroupmembership AS inventoryinstancegroupmembership
ON inventory.id = inventoryinstancegroupmembership.inventory_id
LEFT JOIN public.main_instancegroup AS instancegroup
ON inventoryinstancegroupmembership.instancegroup_id = instancegroup.id
INNER JOIN public.main_organization AS organization
ON inventory.organization_id = organization.id
ORDER BY inventory.id ASC
リンク
実行結果
SQLクエリをpgAdminで実行した結果です。
下記のように、インベントリーの情報を取得することが可能です。
また、1つ目のカラムはインベントリーのIDを取得しています。
通常、インベントリーIDは画面から確認出来ませんが、検索やAPIを利用する場合のインプットにするなど、何かとあると便利なので取得しています。
ID | 名前 | 説明 | 組織 | INSIGHT 認証情報 | インスタンスグループ | 変数 |
---|---|---|---|---|---|---|
1 | Demo Inventory | Default | ||||
2 | SyuTaku Server Inventory | 秋拓環境向けインベントリ | Default | — inventory_ex_vars: インベントリの追加変数 | ||
3 | Insight Inventory | Insight認証情報向けインベントリ | Default | insight | tower | — inventory_ex_vars: インベントリの追加変数 |
記事は以上です。他の情報を取得するSQLクエリも順次ご紹介したいと思います。
リンク
コメント