Bartosz Ratajczyk

Bartosz Ratajczyk MS SQL Developer

Temat: Capistrano, ale nie do sadzania aplikacji

Capistrano zostało napisane głównie z myślą do sadzania aplikacji RoR na serwerach docelowych. Ale można też wykorzystać to do automatyzacji innych zadań.

Powiedzmy, że mam banalny skrypt:
set :user, "user"
set :password, "password"

task :env_test, :hosts => "host.address.pl" do
# miejsce na dyskach
run "df"
end

Czy jest jakaś możliwość przechwycenia tego co skrypt wypluwa na konsolę do pliku tekstowego na maszynie, gdzie odpalam skrypt?

konto usunięte

Temat: Capistrano, ale nie do sadzania aplikacji

run "df > output.txt"?
Bartosz Ratajczyk

Bartosz Ratajczyk MS SQL Developer

Temat: Capistrano, ale nie do sadzania aplikacji

To mi wypluje do pliku na maszynie host.address.pl
A ja potrzebuję log u siebie, na swoim kompie

konto usunięte

Temat: Capistrano, ale nie do sadzania aplikacji

run "df > output.txt"
get "output.txt"
run "rm output.txt"

Najprostsze co mi do łba przychodzi po przeczytaniu źródeł Cap - run wywołuje jakieś mroczne pętle, a get jest takie ładne i prostolinijne. Definicję metody get masz w #{katalog_gema_capistrano}/ lib/ capistrano/ configuration/ actions/ file_transfer.rb

Za argument geta po prostu "output.txt" nie ręczę - najlepiej skorzystać z (pomocna jest wykomentowana linia ponad definicją metody) czegoś w rodzaju get "#{deploy_to}/output.txt".

EDIT: Dżizas, czyżbyś kończył mój wydział? :DTomasz Stachewicz edytował(a) ten post dnia 16.01.08 o godzinie 20:29
Bartosz Ratajczyk

Bartosz Ratajczyk MS SQL Developer

Temat: Capistrano, ale nie do sadzania aplikacji

Tomasz Stachewicz:
run "df > output.txt"
get "output.txt"
run "rm output.txt"

Dzięki. O tym nie pomyślałem. Popatrzę na źródła.
EDIT: Dżizas, czyżbyś kończył mój wydział? :D

No, ale jak widzisz trochę mi zajęło :)

konto usunięte

Temat: Capistrano, ale nie do sadzania aplikacji

Jeszcze mi kumpel podrzucił pomysł:
`"run df" > output.txt`
podobno w Cap taki myk działa. Na pewno można tak `...` w rubym wywoływać komendy shellowe z przekierowaniem wyjścia - czy w Capistrano można tak metody Cap wywoływać nie wiem, nie testowałem. Ale warto spróbować :)

PS. Korzystasz z RoR w tepsie czy hobbystycznie? :)
Bartosz Ratajczyk

Bartosz Ratajczyk MS SQL Developer

Temat: Capistrano, ale nie do sadzania aplikacji

Bardziej hobbystycznie.
Dzięki, sprawdzę i dam znać czy działa.
Bartosz Ratajczyk

Bartosz Ratajczyk MS SQL Developer

Temat: Capistrano, ale nie do sadzania aplikacji

Nie zadziałało:
`"run df" > output.txt`

Prawie działa:
get "output.txt", "."

(trzeba jako drugi argument podać katalog docelowy)
Prawie działa, bo jeszcze nie mogę obejść problemu 'Permission denied ' przy próbie ściągania pliku. Nie wiem jeszcze skąd się bierze.

konto usunięte

Temat: Capistrano, ale nie do sadzania aplikacji

Bartosz Ratajczyk:
Nie zadziałało:
`"run df" > output.txt`
No jak już masz używać get, to wystarczy "run df > output.txt", ewentualnie z ciapkami wokół `df > output.txt` :)



Wyślij zaproszenie do