[modifica] Abbiamo lavorato al nostro set di strumenti un po 'da quando questa risposta è stata scritta e accettata. Il corso answer from my colleague below è il corso consigliato in avanti. [/ Edit]
Ho scritto la libreria client Python per IronWorker. Sono anche impiegato da Iron.io.
Se si utilizza la libreria client Python, il modo più semplice (e consigliato) per farlo è copiare semplicemente la cartella installata della libreria e includerla quando si carica il pacchetto. Questo è ciò che sta facendo l'esempio di Python Loggly. Come hai detto, questo non specifica una versione o da dove scaricare la libreria, perché non gli interessa. Prende solo quello installato sul tuo sistema e lo usa. Qualunque cosa tu ottenga quando inserisci "import boto" sul tuo computer locale è ciò che verrebbe caricato.
L'altra opzione utilizza il nostro CLI per caricare il lavoratore, con un .worker file.
Per fare questo, ecco cosa avresti bisogno di fare:
Creare un file botoworker.worker:
runtime "binary"
build 'pip install --install-option="--prefix=`pwd`/pips" boto'
file 'botoworker.py'
exec "botoworker.sh"
Quella seconda linea è il comando pip che verrà eseguito da installare la dipendenza . Puoi modificarlo come faresti con qualsiasi comando pip dalla riga di comando. Eseguirà quel comando sul worker durante la fase di "build", quindi verrà eseguito una volta sola invece di ogni volta che si esegue un'attività.
La terza riga deve essere modificata nel file Python che si desidera eseguire: è il file di lavoro Python. Ecco quello che abbiamo usato per testare questo:
import boto
Se si salva che come botoworker.py, quanto sopra dovrebbe funzionare senza alcuna modifica. :)
La quarta riga è uno script di shell che eseguirà effettivamente il tuo worker. Ho incluso quello che abbiamo usato qui sotto. Basta salvarlo come botoworker.sh, e non dovrai preoccuparti di modificare il file .worker qui sopra.
PYTHONPATH="$HOME/pips/lib/python2.7/site-packages:$PYTHONPATH" python botoworker.py "[email protected]"
Noterete si riferisce al file Python - se non chiami il file botoworker.py Python, ricordarsi di cambiare qui, anche. Tutto ciò è impostato su PYTHONPATH per includere la libreria installata, quindi esegue il file Python.
Per caricare questo, assicurati di aver installato la CLI (gem installa iron_worker_ng, assicurati che la tua versione di Ruby sia 1.9.3 o successiva) e poi esegui "iron_worker upload botoworker" nella tua shell, dalla stessa directory tua file botoworker.worker è in.
Spero che questo aiuti!
+1 Che dovrebbe essere nella documentazione di Iron Work! –
@KevinSimper Ci stiamo lavorando. :) Il nostro team itera velocemente, il che rende difficile per il nostro team di documentazione (che è una specie di mia responsabilità) tenere il passo. Stiamo lavorando su alcune cose che dovrebbero, si spera, rendere questo molto meglio, però. – Paddy
kevin - nessuna necessità. molto presto avremo il supporto per il comando 'pip' in .worker. – iced