특정 처리 전후에 ChatWork에 게시하는 'capistrano-around_chatwork'
마지막은
cap deploy
라든지의 전후에 ChatWork에 투고하기 위한 gem의 소개입니다capistrano-chatwork와의 차이
capistrano에서 ChatWork에 게시하는 플러그인에 htps : // 기주 b. 코 m / 미츠키 좋다 / 카피 st 등의 짱이 있지만 capistrano-chatwork는 cap deploy
앞이나 뒤에 게시하는 반면 capistrano-around_chatwork는 모든 작업 전후에 ChatWork에 게시 할 수 있습니다. .
샘플
cap unicorn:start
앞뒤로 ChatWork에 게시했습니다. done task 실행 시간도 자동 계산됩니다.
사용법
Capfilerequire "capistrano/around_chatwork"
config/deploy.rbset :chatwork_api_token, "YOUR_API_TOKEN"
set :chatwork_room_id, 00000000
around_chatwork "unicorn:start"
ChatWork의 API token과 통지처의 방 ID를 설정해, 전후를 통지로 둘러싸고 싶은 태스크를 around_chatwork
에 쓰는 것만으로 ok입니다.
chatwork_api_token
및 chatwork_room_id
는 capistrano-chatwork와 정확히 동일하므로 capistrano-chatwork를 배포하는 경우 동일한 설정을 공유 할 수 있습니다.
알림 메시지를 편집하려면 starting_message
와 ending_message
를 느낌으로 편집하십시오.
config/deploy.rbset :starting_message, -> {
"[info][title][#{fetch(:stage)}] :task_name: @#{fetch(:user)}[/title]started[/info]"
}
set :ending_message, -> {
"[info][title][#{fetch(:stage)}] :task_name: @#{fetch(:user)}[/title]done (:elapsed_time: sec)[/info]"
}
문장의 :task_name:
와 :elapsed_time:
는 후크 된 작업 이름과 작업의 처리 시간으로 바뀝니다.
자세한 내용
cap 작업 전후에 동적으로 작업을 설정하고 싶습니다.
capistrano 3계의 구조는 Rake task가 베이스이므로 이하가 참고가 됩니다
Rake에서 모든 작업 전후에 다른 작업 수행 - HsbtDiary(2012-02-10)
실제 코드는 이런 느낌입니다.
lib/capistrano/around_chatwork.rbdef around_chatwork(task_name)
start_time = nil
before_task = Rake::Task.define_task("#{task_name}:__before__") do
message = Capistrano::AroundChatwork.format_message(fetch(:starting_message), task_name)
Capistrano::AroundChatwork.post_chatwork(message)
start_time = Time.now
end
after_task = Rake::Task.define_task("#{task_name}:__after__") do
elapsed_time = Time.now - start_time
message = Capistrano::AroundChatwork.format_message(fetch(:ending_message), task_name, elapsed_time)
Capistrano::AroundChatwork.post_chatwork(message)
end
Rake::Task[task_name].enhance([before_task]) do
Rake::Task[after_task].invoke
end
end
좀 강력하지만, around_chatwork
에 건네진 task명의 전후에 실행하고 싶은 task를 각각 동적 생성해, enhance
와 invoke
에 건네주고 있습니다.
그건 그렇고, capistrano의 before/after에서도 마찬가지입니다.
htps : // 기주 b. m / 카피 st 등의 / 카피 st 등의 / b / b / v3. rb#L5-L18
Reference
이 문제에 관하여(특정 처리 전후에 ChatWork에 게시하는 'capistrano-around_chatwork'), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sue445/items/2169bc38d92101449d56
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
cap unicorn:start
앞뒤로 ChatWork에 게시했습니다. done task 실행 시간도 자동 계산됩니다.사용법
Capfilerequire "capistrano/around_chatwork"
config/deploy.rbset :chatwork_api_token, "YOUR_API_TOKEN"
set :chatwork_room_id, 00000000
around_chatwork "unicorn:start"
ChatWork의 API token과 통지처의 방 ID를 설정해, 전후를 통지로 둘러싸고 싶은 태스크를 around_chatwork
에 쓰는 것만으로 ok입니다.
chatwork_api_token
및 chatwork_room_id
는 capistrano-chatwork와 정확히 동일하므로 capistrano-chatwork를 배포하는 경우 동일한 설정을 공유 할 수 있습니다.
알림 메시지를 편집하려면 starting_message
와 ending_message
를 느낌으로 편집하십시오.
config/deploy.rbset :starting_message, -> {
"[info][title][#{fetch(:stage)}] :task_name: @#{fetch(:user)}[/title]started[/info]"
}
set :ending_message, -> {
"[info][title][#{fetch(:stage)}] :task_name: @#{fetch(:user)}[/title]done (:elapsed_time: sec)[/info]"
}
문장의 :task_name:
와 :elapsed_time:
는 후크 된 작업 이름과 작업의 처리 시간으로 바뀝니다.
자세한 내용
cap 작업 전후에 동적으로 작업을 설정하고 싶습니다.
capistrano 3계의 구조는 Rake task가 베이스이므로 이하가 참고가 됩니다
Rake에서 모든 작업 전후에 다른 작업 수행 - HsbtDiary(2012-02-10)
실제 코드는 이런 느낌입니다.
lib/capistrano/around_chatwork.rbdef around_chatwork(task_name)
start_time = nil
before_task = Rake::Task.define_task("#{task_name}:__before__") do
message = Capistrano::AroundChatwork.format_message(fetch(:starting_message), task_name)
Capistrano::AroundChatwork.post_chatwork(message)
start_time = Time.now
end
after_task = Rake::Task.define_task("#{task_name}:__after__") do
elapsed_time = Time.now - start_time
message = Capistrano::AroundChatwork.format_message(fetch(:ending_message), task_name, elapsed_time)
Capistrano::AroundChatwork.post_chatwork(message)
end
Rake::Task[task_name].enhance([before_task]) do
Rake::Task[after_task].invoke
end
end
좀 강력하지만, around_chatwork
에 건네진 task명의 전후에 실행하고 싶은 task를 각각 동적 생성해, enhance
와 invoke
에 건네주고 있습니다.
그건 그렇고, capistrano의 before/after에서도 마찬가지입니다.
htps : // 기주 b. m / 카피 st 등의 / 카피 st 등의 / b / b / v3. rb#L5-L18
Reference
이 문제에 관하여(특정 처리 전후에 ChatWork에 게시하는 'capistrano-around_chatwork'), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/sue445/items/2169bc38d92101449d56
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
require "capistrano/around_chatwork"
set :chatwork_api_token, "YOUR_API_TOKEN"
set :chatwork_room_id, 00000000
around_chatwork "unicorn:start"
set :starting_message, -> {
"[info][title][#{fetch(:stage)}] :task_name: @#{fetch(:user)}[/title]started[/info]"
}
set :ending_message, -> {
"[info][title][#{fetch(:stage)}] :task_name: @#{fetch(:user)}[/title]done (:elapsed_time: sec)[/info]"
}
cap 작업 전후에 동적으로 작업을 설정하고 싶습니다.
capistrano 3계의 구조는 Rake task가 베이스이므로 이하가 참고가 됩니다
Rake에서 모든 작업 전후에 다른 작업 수행 - HsbtDiary(2012-02-10)
실제 코드는 이런 느낌입니다.
lib/capistrano/around_chatwork.rb
def around_chatwork(task_name)
start_time = nil
before_task = Rake::Task.define_task("#{task_name}:__before__") do
message = Capistrano::AroundChatwork.format_message(fetch(:starting_message), task_name)
Capistrano::AroundChatwork.post_chatwork(message)
start_time = Time.now
end
after_task = Rake::Task.define_task("#{task_name}:__after__") do
elapsed_time = Time.now - start_time
message = Capistrano::AroundChatwork.format_message(fetch(:ending_message), task_name, elapsed_time)
Capistrano::AroundChatwork.post_chatwork(message)
end
Rake::Task[task_name].enhance([before_task]) do
Rake::Task[after_task].invoke
end
end
좀 강력하지만,
around_chatwork
에 건네진 task명의 전후에 실행하고 싶은 task를 각각 동적 생성해, enhance
와 invoke
에 건네주고 있습니다.그건 그렇고, capistrano의 before/after에서도 마찬가지입니다.
htps : // 기주 b. m / 카피 st 등의 / 카피 st 등의 / b / b / v3. rb#L5-L18
Reference
이 문제에 관하여(특정 처리 전후에 ChatWork에 게시하는 'capistrano-around_chatwork'), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sue445/items/2169bc38d92101449d56텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)