在合理的angular色中分享简单的任务?

我有几种不同的机器types,都需要为它们定义官方的postgres APT repo,以便能够apt-get install正确版本的工具。 这些不同的机器都需要共享以下内容:

 --- - name: add postgres repo key sudo: yes apt_key: url=http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc id=ACCC4CF8 - name: add postgres repo sudo: yes apt_repository: repo='deb http://apt.postgresql.org/pub/repos/apt/ {{ ansible_distribution_release }}-pgdg main' 

我有两个angular色,依赖它,我的nagiosangular色(需要做一堆psql工作)和我的postgres-baseangular色。 如果我能将这两个angular色以某种方式包含上面的相同文件/任务,那将是太棒了。

现在我已经为这些任务创build了一个单独的angular色,称之为postgres-repo并且我使用了ansible的angular色依赖来确保上面的angular色在执行之前运行postgres-repo

这是他们的meta/main.yml

 --- dependencies: - postgres-repo 

这是我能做的最好的吗? 有没有一个更轻量级的方法比做一个单独的angular色?

这对我来说似乎是最好的select; angular色是关于做1件事情,做得好:)