배포를 편리하게 만드는 솔루션 인 release-request
release-request
The release-request is a cli tool for Pull Request driven deployment.
하지만
무엇을 할 수 있는가
선행 OSS
선행하는 OSS에 비해 이점
거동
고안
설정 파일
외부 프로그램의 예
calls:
- name: deploy_timing
command: |
perl -MTime::Piece -E '
my $now = Time::Piece->new;
for my $hms (qw/16:30:00 19:45:00 23:45:00/) {
next if $now->hms gt $hms;
say $now->ymd . " " . $hms;
last;
}'
외부 프로그램을 Markdown에서 사용
위의 프로그램을 조합하여 배포 창의 설명을 절차에 포함합니다.
# Release
Estimated time of deploying: {{ .Call "deploy_timing" }}
DDL 차이가 있으면 반영 절차를 넣으십시오.
- name: has_ddl
command: |
perl -MJSON -E '
my $json = do { local $/; <STDIN> };
my $releaser = JSON::decode_json($json);
my $files = $releaser->{comparison}->{files};
my @assets = grep { $_->{name} =~ m!^sql/master.sql.*$! } @$files;
@assets > 0 ? exit 0 : exit 1;
'
DDL 차이가 있으면 반영 절차를 넣으십시오.
{{ with .CallIf "has_ddl" -}}
- [ ] migrate ddl
$ git_ddl_migrater sql/master.sql
{{ end }}
해결하는 문제
라는 느낌으로 사용해주세요! ! !
나중에 OSS 소개 Advent Calendar하고 있습니다.
등록해주세요! ! !
Reference
이 문제에 관하여(배포를 편리하게 만드는 솔루션 인 release-request), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mackee_w/items/54db54c4389bbc33879f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)