0

私は、プライベート gitlab git リポジトリでカスタムメイドのロールをホストすることに飛び込んでいます。

これに対する答えは、「1 つのロールに対して 1 つのリポジトリのみが必要です」ということになるかもしれませんが、私はそれを行っていません。リポジトリに 2 つのロールを配置しようとしましたが、フォルダーを使用して最上位でそれらを区別しました。

「requirements.yml」が私の役割を引き出したので、正しく書かれたようです。ただし、「nexus」のすべてのファイルを「chocolatey_factory」のスケルトン ロールに入れています。「ネクサス」のインポートされた役割はうまくいきます。

私の要件ファイルは次のとおりです。

---
- src: git+ssh://git@[local_ip_address]/gitlab-instance-937dde58/my_first_project.git
  scm: git
  version: main
  name: nexus

- src: git+ssh://git@[local_ip_address]/gitlab-instance-937dde58/my_first_project.git
  scm: git
  version: main
  name: chocolatey_factory

これが私のレポのレイアウトです。アイデアは、レポの最上位にある各フォルダーをロールにすることです。この場合、私には 2 つの役割があります。

レポのトップレベル

nexus フォルダー/ロール ファイル

Chocolatey_factory Galaxy 初期フォルダー

ここで何が間違っていますか?

1 つは「nexus」、もう 1 つは「chocolatey_factory」です。Nexus は、私が取得した Sontaype nexus の構成に使用できるパブリック ロールです。Chocolatey_factory は私が作成しているものですが、現時点では ansible-galaxy init スケルトンにすぎません。

次に ansible-galaxy コマンドを実行します

ansible-galaxy install -r roles/requirements.yml -p roles/

ロールをインポートします。ただし、「nexus」ロールのファイルは「chocolatey_factory」ロールに表示されます。

「nexus」ロールには pom.xml のようなファイルがあり、「chocolatey_factory」には ansible-galaxy init が作成するもの以外は何もありません (つまり、pom.xml ファイルはありません)。

ここでは、両方のフォルダーにすべて同じファイルがあることがわかります。

ls roles
chocolatey_factory  nexus  requirements.yml

ls roles/chocolatey_factory
chocolatey_factory  filter_plugins  molecule          tasks
CODE_OF_CONDUCT.md  handlers        pom.xml           templates
defaults            LICENSE.md      README.md         tests
files               meta            requirements.txt  vars

ls roles/nexus
chocolatey_factory  filter_plugins  molecule          tasks
CODE_OF_CONDUCT.md  handlers        pom.xml           templates
defaults            LICENSE.md      README.md         tests
files               meta            requirements.txt  vars

あるロールのファイルが別のロールに挿入されるのはなぜですか? 同じ git リポジトリに 2 つのロールを持つことはできませんか?

4

0 に答える 0