Ok - got it.

Sounds like a path just needs to be os.path.abspath'd somewhere.

If your 1.7 checkout is up to date, please file a github ticket so we can
take a look.

Thanks!


On Mon, Jul 28, 2014 at 3:15 PM, Synaesthete <[email protected]>
wrote:

> ansible 1.7
>
> On Monday, July 28, 2014 10:09:32 AM UTC-4, Michael DeHaan wrote:
>
>> What is "ansible --version" ?
>>
>>
>>
>>
>> On Sun, Jul 27, 2014 at 5:45 PM, Synaesthete <[email protected]> wrote:
>>
>>> Thanks for the response.
>>>
>>> I'm using the following task:
>>>
>>> - debug: msg="{{ playbook_dir }}"
>>>
>>>
>>> With this output...
>>>
>>> ok: [localhost] => {
>>>     "msg": "."
>>> }
>>>
>>>
>>> So it's returning a relative path. I get this same output regardless of
>>> where I run the debug task, so this doesn't help me point to my project
>>> root if I use the playbook_dir variable in one of my roles or some other
>>> subdirectory. Incidentally, inventory_dir returns an absolute path (e.g.
>>> /etc/ansible), though the inventory directory isn't what I'm after.
>>>
>>> On Sunday, July 27, 2014 4:54:33 PM UTC-4, Michael DeHaan wrote:
>>>
>>>> This may be a useful resource for organization tips:
>>>>
>>>> http://docs.ansible.com/playbooks_best_practices.html
>>>>
>>>> Also, if you haven't seen it already, the ansible-galaxy CLI can be
>>>> used to quickly stub out a role with the "init" command.
>>>>
>>>> You may wish to read about role dependencies, however galaxy is not
>>>> meant as a way to distribute top level playbooks - in practice, they are
>>>> seldom reusable because nobody wants  to install the exact same
>>>> infrastructure (you've already made a lot of choices about Sublime and
>>>> Node), whereas roles provide a more ideal chunk of reuse.
>>>>
>>>> As for your directory questions try, "{{ playbookdir }}/some_path".
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Sun, Jul 27, 2014 at 10:31 AM, Synaesthete <[email protected]>
>>>> wrote:
>>>>
>>>>>  I'm working on a small Ansible project that's a little outside its
>>>>> primary use-case. I'm automating the generation of new web projects in a
>>>>> Mac OS X dev environment. There are two objectives:
>>>>>
>>>>> 1.) Install all development tools on the local machine
>>>>> 2.) Compose various projects based on small component roles/tasks
>>>>>
>>>>> As a simple example, if you run the main playbook, it will prompt you
>>>>> for a project folder, install Sublime Text, NodeJS, etc., and set up all
>>>>> the basic files needed to begin working on a new project. Here's a subset
>>>>> of my project folder:
>>>>>
>>>>> ansible-generator
>>>>>   |- main.yml <-- Main playbook
>>>>>   |- apps
>>>>>      |- nodejs
>>>>>         |- tasks,vars,defaults,etc.
>>>>>      |- sublime
>>>>>   |- scaffolds
>>>>>      |- git
>>>>>      |- node
>>>>>      |- vagrant
>>>>>   |- install
>>>>>      |- dmg.yml
>>>>>
>>>>>
>>>>> Everything under both apps and scaffolds are roles. 'apps' install
>>>>> local dev tools, and 'scaffolds' uses templates to set up and modify new
>>>>> project files (package.json, Vagrantfile, .gitignore, etc.)
>>>>>
>>>>> I have a couple questions:
>>>>>
>>>>> 1.) Could this entire project be turned in to a role itself and be
>>>>> distributed on Ansible Galaxy, given its different project layout and
>>>>> different use-case? Since this is a project built using lots of small
>>>>> sub-roles, how could I run all those dependent roles from tasks/main.yml?
>>>>>
>>>>> 2.) The roles in the /apps folder need to reference tasks under the
>>>>> /install folder. Right now I have to use relative paths like
>>>>> "../../../dmg.yml". I'd rather set up a variable further up and just use
>>>>> "{{ installers }}/dmg.yml", but without just setting this variable to
>>>>> "../../.." What's the best way to get the absolute path to the root of 
>>>>> this
>>>>> project? The playbook_dir variable always returns "."
>>>>>
>>>>> 3.) Any other thoughts on organizing my project? Is it reasonable to
>>>>> have roles in both /apps and /scaffolds or does this seem unwieldy 
>>>>> compared
>>>>> to putting everything under a /roles folder?
>>>>>
>>>>> Thanks! If you'd like to take a closer look at my project you can find
>>>>> it here: https://github.com/rvangundy/ansible-generator
>>>>>
>>>>>  --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Ansible Project" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> To post to this group, send email to [email protected].
>>>>>
>>>>> To view this discussion on the web visit https://groups.google.com/d/
>>>>> msgid/ansible-project/647cf28d-77cc-4ebf-84db-ec87659fe0a7%
>>>>> 40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/ansible-project/647cf28d-77cc-4ebf-84db-ec87659fe0a7%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>>  --
>>> You received this message because you are subscribed to the Google
>>> Groups "Ansible Project" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> To view this discussion on the web visit https://groups.google.com/d/
>>> msgid/ansible-project/0cf0257a-c8e9-4bf3-aa4f-
>>> 5a13b70ff533%40googlegroups.com
>>> <https://groups.google.com/d/msgid/ansible-project/0cf0257a-c8e9-4bf3-aa4f-5a13b70ff533%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/856b99bd-d0f8-4fe7-b123-5d279f8c740c%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/856b99bd-d0f8-4fe7-b123-5d279f8c740c%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgzu%2BE%3Do2zJ-GvC4JwwX57o252BW4yuiZX%2Bvcf%3DOL--2cQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to