requirements.yml で Role をインストールする
依存関係を固定して取得します。
「requirements.yml で Role をインストールする」はCoddyKit上の無料DevOps Bootcampレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDevOps Bootcamp学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 DevOps Bootcampコースには全4レッスンが含まれています。
手作業でのインストールをやめる
インストールコマンドを1つずつ実行する方法は、規模が大きくなると対応できません。requirements.ymlファイルにすべての依存関係を一覧化すれば、プロジェクト全体を一度にインストールできます。
依存関係のマニフェスト
requirements.ymlはパッケージマニフェストのようなものです。Playbookの実行に必要なロールとコレクションを正確に宣言します。
rolesの下にロールを一覧化する
ファイル内のrolesキーにはリストを記述します。各項目では、Galaxyから取得するロールをauthor.name形式で指定します。
roles:
- name: geerlingguy.nginxコレクションも一覧化する
別のcollectionsキーには、namespace.collection形式の名前でコレクションを一覧化します。これにより、1つのファイルで両方のコンテンツタイプを管理できます。
collections:
- name: community.generalバージョンを固定する
インストールを再現可能にするため、必ずversionを追加します。指定しないと、チームメンバーのマシンで新しく公開された互換性のないリリースを取得する可能性があります。
roles:
- name: geerlingguy.nginx
version: "3.1.4"すべてを一度にインストールする
-rを使ってansible-galaxyにファイルを渡すと、一覧にあるすべての依存関係を解決し、1つのコマンドでインストールします。
ansible-galaxy install -r requirements.ymlコレクションには別の実行が必要
通常のインストールコマンドはロールを処理します。コレクションには、同じ-rフラグを付けてcollection installサブコマンドを使います。
ansible-galaxy collection install -r requirements.ymlGalaxyだけでなくGitから取得する
ロールの項目では、Galaxyの名前の代わりにsrcのGit URLを使うこともできます。これにより、非公開または未公開のロールをインストールできます。
roles:
- src: https://github.com/acme/role-app.git
version: mainインストール先のパスを選ぶ
-pを追加すると、グローバルパスではなくroles/のようなプロジェクト固有のフォルダーにロールを配置できます。各プロジェクトを自己完結させるのに役立ちます。
ansible-galaxy install -r requirements.yml -p roles/強制的に再取得する
デフォルトでは既存のロールが保持されます。固定したバージョンを更新する際に--forceを渡すと、ロールを再ダウンロードして上書きします。
ansible-galaxy install -r requirements.yml --forceロールではなくファイルをコミットする
requirements.ymlはGitにコミットし、ダウンロードしたロールのフォルダーは無視します。マニフェストから誰でも同じ構成を正確に再構築できます。
クイックチェック
プロジェクトが依存するすべてのものをインストールする方法を思い出してください。
まとめ
requirements.ymlにロールとコレクションを列挙してバージョンを固定し、ansible-galaxy -rですべてインストールします。1つのファイルで、再現可能な環境を構築できます。📦
よくある質問
「requirements.yml で Role をインストールする」レッスンは無料ですか?
はい。「requirements.yml で Role をインストールする」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、DevOps Bootcampコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 DevOps Bootcampコースには全4レッスンが含まれています。
「requirements.yml で Role をインストールする」で何を学びますか?
依存関係を固定して取得します。 ブラウザで直接実行するハンズオンコードでDevOps Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
DevOps Bootcampを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのDevOps Bootcampは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「requirements.yml で Role をインストールする」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このDevOps Bootcampレッスンでコードを書いて実行できますか?
はい。すべてのDevOps Bootcampレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Galaxy における Role と Collection
- requirements.yml で Role をインストールする
- FQCN の利用:namespace.collection.module
- 自作 Role を Galaxy に公開する