Yeah, the >>> implies you're at the Python REPL, and the page I linked you
to is a few pages into learning to use Fabric; so it's going to assume you
installed the library. If you already know Tcl/Expect, I'm sure you can
bang out a script to do your task at hand, and if you need it now and don't
have time to pick up Python and Fabric on top of it, that sounds like your
best option.

When you get some spare time, there are a bunch of great tutorials that can
help you with the syntax (which may be easy), and also how Python is
loading/running scripts/packages/modules (which is usually less obvious),
which Fabric then uses to find a 'fabfile' package. I haven't heard of
Tidelift, but yeah, I feel your pain that a lot of training sites which
were once free are now pay-only (or very expertly hide the free options,
*coughcodecademycough*). Fortunately, the gigantic popularity of Python
means new, free content is always being created, so some searching may help
(I'm hesitant to cite anything in particular because I haven't looked at
any recently)

I was curious what examples/documentation you were following along with
originally, however, because it seemed incomplete, even for the 3-4 lines
that you had. It would be nice to correct it so others aren't misled in the
future.

On Fri, Nov 23, 2018 at 11:39 AM Bob Gustafson <bob...@rcn.com> wrote:

> Hi Nick
>
> Yes, 'incomplete' is a charitable description.
>
> I have zit knowledge of python. Perhaps this has been accidental good
> luck. My favorite languages over the decades have been Fortransit, Pascal,
> Ruby, and lately Nim.
>
> Using your linked example ('Getting Started'..), starting with the first
> code line:
>
>    >>> from fabric import Connection
>
> There seems to be a lot that is assumed to have been done by the reader.
> The >>> probably means that the reader has already typed 'python' to jump
> into an interactive Python session, but this is not mentioned.
>
> Also, just typing 'python' is not sufficient, as the following lines may
> not work under Python 2.7 or Python 3.7. Which Python is invoked depends on
> what has been typed before.
>
> Also, 'fabric' is used in the code line. This library must have been
> loaded or the line will not work. Again, loading fabric beforehand is not
> mentioned. Also 'fabric' comes in several versions <2, 2, and a version not
> recommended - 3.
>
> I see from the libraries, and my experience with Sage, that lots of good
> things have been done with Python. However, the state of python
> documentation available on the internet leaves a lot unsaid. Perhaps it is
> all a game to get new users to buy a subscription to Tidelift.
>
> At this point, for me, coding up 'expect' and fabric in Nim seems easier
> than continuing this frustration.
>
> Best regards
>
> Bob G
> On 11/22/18 9:04 PM, Nick Timkovich wrote:
>
> For the `fab` tool to pick up functions in your fabfile module/package as
> tasks, you need to decorate them with the @task decorator (specifically
> fabric.task). See
> http://docs.fabfile.org/en/2.4/getting-started.html#addendum-the-fab-command-line-tool
> What documentation are you following? It sounds fairly incomplete and could
> be fixed.
>
> Nick
>
> On Thu, Nov 22, 2018 at 2:06 PM Bob Gustafson <bob...@rcn.com> wrote:
>
>> I am running on a Mac air with Mojave os 10.14.1.
>>
>> I installed python with homebrew
>>
>> Also using virtualenv and the folder fabric-test
>>
>> cd fabric-test
>>
>> air:fabric-test bobgus$ ls
>> env     fabfile.py
>>
>> air:fabric-test bobgus$ source env/bin/activate
>>
>> (env) air:fabric-test bobgus$ which python
>> /Users/bobgus/fabric-test/env/bin/python
>>
>> (env) air:fabric-test bobgus$ python -V
>> Python 3.7.0
>>
>> (env) air:fabric-test bobgus$ fab -V
>> Fabric 2.4.0
>> Paramiko 2.4.2
>> Invoke 1.2.0
>>
>> (env) air:fabric-test bobgus$ cat fabfile.py
>> #!/usr/bin/env python
>>
>> def welcome():
>>    print("Welcome to fabric running on python 3")
>>
>> def uptime():
>>    run("uptime")fab
>>
>> --------------------- testing -------
>>
>> (env) air:fabric-test bobgus$ fab uptime
>> No idea what 'uptime' is!
>>
>> (env air:fabric-test bobgus$ fab welcome
>> No idea what 'welcome' is!
>>
>> --------------------------------------
>>
>> I must be doing something wrong here..
>>
>>
>> _______________________________________________
>> Fab-user mailing list
>> Fab-user@nongnu.org
>> https://lists.nongnu.org/mailman/listinfo/fab-user
>>
>
_______________________________________________
Fab-user mailing list
Fab-user@nongnu.org
https://lists.nongnu.org/mailman/listinfo/fab-user

Reply via email to