HTTP サーバが TLS1 に対応しているかどうかを確認するコマンド
$ openssl s_client -connect ホスト名:443 -tls1 < /dev/null
-tls1
オプションは TLSv1 指定で接続する。
-tls1
を -tls1_1
や -tls1_2
にするとそれぞれのバージョンで接続チェックができる。
サーバが対応してない場合は以下のようなエラーメッセージが出力される。
CONNECTED(00000005) write:errno=54 --- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 0 bytes and written 0 bytes ---
https 経由で証明書の有効期限を確認するワンライナー
$ openssl s_client -connect ホスト名:443 -showcerts < /dev/null 2> /dev/null | openssl x509 -text | grep Not Not Before: May 21 20:55:26 2019 GMT Not After : Aug 13 20:32:00 2019 GMT
git rebase --onto
ブランチで開発してるとどうしても必要な場面が出てくるので覚えた。
こんな状況。
- コミット C からブランチして i, ii, iii と開発を進めた。
- iii からそれを前提とするブランチをつくって 1, 2, 3 と開発を進めた。
- iii を master にマージしたかったが修正が入り iv をコミットしてから master にマージした
この状況で branch_b を master の先端(Z) にリベースしたいが、 i、 ii、 iii はすでに master に入っているので iii の後の 1, 2, 3 だけを rebase したい。
少しなら 1 2 3 を一つづつ cherry-pick してもそんなに苦ではない。 (cherry-pick コミットID..コミットID で一気にやることもできる)
cherry-pick の場合は一度作業用のブランチを作ったりして進めないといけなかったりして少々面倒になってきたので git rebase --onto を覚えた。
こんな感じ。
$ git rebase --onto (移動先のベースとなるコミット) \ (移動するコミット列のベースのコミット) (移動するブランチ)
最初の絵の状況なら
- 移動先のベースとなるコミット = Z
- 移動するコミット列のベースのコミット = iii
- 移動するブランチ = branch_b
なので
$ git rebase --onto Z iii branch_b
また、最初の絵の場合 master が Z を指しているので以下でもできる。
$ git rebase --onto master iii branch_b
はてなダイアリーの記事を移行した
はてなダイアリー終了の際、すべての投稿データをはてなブログに自動移行します - はてなダイアリー日記
ということではてなダイアリー http://d.hatena.ne.jp/suer の記事をこのブログに移行した。 (既にリダイレクト設定したので、上記 URL はもうこのブログに飛ばされるけど)
最近書いてないけど。
Line Notify する Google Apps Script
var token = PropertiesService.getScriptProperties().getProperty("LINE_TOKEN"); function main(){ var message = "お知らせ"; notify(message); } function notify(message){ var options = { "method" : "post", "payload" : "message=" + message, "headers" : {"Authorization" : "Bearer "+ token} }; UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options); }
Line Nofify の Access Token は
File メニュー
> Project Properties
> Script Properties タブ
で LINE_TOKEN
を追加して設定する。
参考
Redmine Bitbucket Hook プラグインを fork して最新の Redmine で使えるようにした
Bitbucket に push したコミットを Redmine のリポジトリに取り込むプラグイン redmine_bitbucketgit_hook が Rails4 ベースの Redmine と最新の Bitbucket に対応していなかったので対応した。
変更点
Bitbucket の Webhook 設定に対応
Bitbucket では従来 Services という設定で他のアプリとの連携を行っていたが、ある時期から Webhooks という設定に変更になった。
この新しい設定に対応した。
インストール
1. 以下を実行
$ cd $RAILS_ROOT/plugins $ git clone https://github.com/suer/redmine_bitbucketgit_hook.git $ bundle install
上記を実行して Redmine の再起動
使い方
管理 > プラグイン > redmine_bitbucketgit_hook の「設定」で Bitbucket から clone する先のディレクトリを指定する。(1度だけ)
リポジトリの設定で Bitbucket のリポジトリ URL を指定する。
作成ボタンをクリックすると、またリポジトリの設定画面が表示されるが、ローカルのディレクトリパスに変換されているので、もう一度このまま作成ボタンをクリックする。
Bitbucket 側では Webhooks の設定を行う。
URL には https://{Redmine の Root}/bitbucketgit_hook を指定する
以上の設定により、
- Bitbucket に push
- Bitbucket が https://{Redmine の Root}/bitbucketgit_hook にアクセス
- Redmine が Bitbucket からもらった JSON を見て Bitbucket から fetch
という動きとなり、自動的に同期される。
Excel から Markdownのテーブル形式で簡単に貼り付けられる Redmine プラグインを作った
誰でも簡単にテーブルが書けるように Excel からコピペでできるプラグインを作った。
元ネタは ReleaseNotes/2017/02/03/Excel等から簡単に表を貼り付けられるようになりました - docs.esa.io から。
仕事に使っている Redmine に導入したら評判がよく、たくさんテーブルを書いてくれるようになった。
この記事を書くにあたって macOS の Numbers にも対応した。
環境
Redmine 3.0 以降