Redmine プラグインで controller を load すると別のプラグインに影響がある

Module#prepend での本体のヘルパーを上書き 従来 Redmine のプラグインで本体の動作を変えたい場合は alias_method_chain を使いましょうということになっていた。 Redmine 4 系から Rails 5.x ベースとなって alias_method_chain が廃止されてからは Modul…

rsync でタイムスタンプの違いは無視したい

rsync するときタイムスタンプが違ってもファイルに違いがなければコピーされないようにしたい。 $ rsync --checksum ... ファイルのチェックサムが一緒ならそのファイルはコピーしなくなる。 ファイルがたくさんある場合は checksum の計算だけで時間と CPU…

プロセスがどこにログを吐いているか調べる

知らないフレームワークを使っている Web アプリがどこにログを吐いているか調べるために、そのフレームワークの設定方法を調べるより $ lsof -p プロセスID とかしてそれっぽいファイルを探すほうが速かった。

Visual Studio Code をコマンドラインで起動する

確認バージョン Visual Studio Code: 1.34.0 設定 Visual Studio Code を起動する Cmd+Shift+P (Windows の場合は Ctrl+Shift+P) でコマンドパレットを開く shell と入力すると Shell Command: Install 'code' command in PATH というのが出てくるのでこれを…

Google スライドの幅の設定

Google スライドでスライドを作ったらデフォルトが PowerPoint より横長だったので変更する。 特にデフォルトのままで PowerPoint からインポートすると違和感が半端ない。 「ファイル(File)」メニュー > 「ページ設定(Page setup)」 標準(4:3)を選択する…

iPhone のブラウザで 1Passwordから ID/パスワードを入力できるようにする設定

初回起動時に有効にするか聞かれたのかもしれないけど設定されてなくてどこから設定すればいいか困ったのでメモ。 確認バージョン iOS: 12.3.1 1Password: 7.3.2 手順 パスワードとアカウント パスワードを自動入力 1passwordを選んで有効化 ブラウザでログ…

HTTP サーバが TLS1 に対応しているかどうかを確認するコマンド

$ openssl s_client -connect ホスト名:443 -tls1 < /dev/null -tls1 オプションは TLSv1 指定で接続する。 -tls1 を -tls1_1 や -tls1_2 にするとそれぞれのバージョンで接続チェックができる。 サーバが対応してない場合は以下のようなエラーメッセージが…

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 にマージしたかったが修…

はてなダイアリーの記事を移行した

はてなダイアリー終了の際、すべての投稿データをはてなブログに自動移行します - はてなダイアリー日記 ということではてなダイアリー 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, "he…

Redmine Bitbucket Hook プラグインを fork して最新の Redmine で使えるようにした

Bitbucket に push したコミットを Redmine のリポジトリに取り込むプラグイン redmine_bitbucketgit_hook が Rails4 ベースの Redmine と最新の Bitbucket に対応していなかったので対応した。 リポジトリ https://github.com/suer/redmine_bitbucketgit_ho…

Excel から Markdownのテーブル形式で簡単に貼り付けられる Redmine プラグインを作った

誰でも簡単にテーブルが書けるように Excel からコピペでできるプラグインを作った。 元ネタは ReleaseNotes/2017/02/03/Excel等から簡単に表を貼り付けられるようになりました - docs.esa.io から。仕事に使っている Redmine に導入したら評判がよく、たく…

systemctl enable コマンドで Failed to execute operation: Invalid argument が出た

環境 CentOS 7.3 現象 # systemctl enable サービス名 Failed to execute operation: Invalid argument 原因 systemctl enable コマンドで /etc/systemd/system/multi-user.target.wants/サービス名.service にシンボリックリンクが張られるが、間違えてファ…

ポートの疎通確認のために代わりのプロセスを立ち上げる

CentOS 6 から 7 に移行するために、firewalld の練習をしている。 特定のポートを開ける設定を行い、疎通確認をしたいので CentOS 7 に大抵入っている Pyhon を使って確認用のプロセスを立ち上げる。 環境 CentOS 7.3 Python 2.7.5 立ち上げる Python 2 系…

Rails アプリの wercker docker 対応で PostgreSQL の対応

Wercker からマイグレーションせよというメールが来たので対応してみた - mallowlabsの備忘録 を参考に wercker のマイグレーションを実施した。 こちらの記事では MongoDB の例だったので、PostgreSQL の場合はどうするのかと調べた。 結論としては box: ru…

Mac OS X 環境でコマンドラインで Exif から Orientation を消す

画像ファイルで Exif はあるけど Orientation が無い、という特殊なテストデータが必要になったので。 環境 Homebrew 0.9.5 exiftool のインストール $ brew install exiftool Orientaiton を消す $ exiftool -Orientation= XXX.jpg

Redmine で Github のように絵文字を入力できるプラグインを作った

チケットの内容は簡潔に書くのがいいと思うが、簡潔に書きすぎると冷たい印象になったりしてよくない。一方、同じような issue 管理機能でも Github では ":"(コロン) で囲った一定の文字列で絵文字が手早く書けるので、簡潔に内容を書きながら、ちょっとし…

サブディレクトリ運用の複数の Redmine で別の Redmine にアクセスすると勝手にログアウトするのを防ぐ

確認したバージョン Redmine 2.6.9.stable 問題 Redmine は _redmine_session という Cookie でログイン状態が管理されていてる。 Redmine では、何もしないとパスが "/" で登録されるので、実際に異なるパスの Cookie データでも、同じとみなされてしまう。…

タブ文字で grep する

test(タブ文字) みたいなのを grep したい場合。 ターミナル $ grep "test(タブ文字)" /path/to/file のように入力したいが、普通に入力するとシェルがタブ文字を奪う。 bash, zsh の場合は ctrl-v を入力してからタブを打つと入力される。 ただし、これはメ…

Java の .class ファイルを一括で逆コンパイルする

環境 Jad v1.5.8g. jad のインストール Mac OS X で Homebrew の場合 $ brew install homebrew/binary/jad 逆コンパイル classes 以下に展開されているとすると、以下のコマンドで src ディレクトリ以下に .java ファイルとして一括で逆コンパイルできる。 $…

Zendesk で独自ドメインのサポートアドレスを使用する設定の SPF レコードチェックでエラーが出た

Zendesk のサポートアドレスに独自ドメインを使用する場合は SPF レコードに mail.zendesk.com を指定すると、メールから Zendesk という文字が消えるので顧客は Zendesk を意識せずにサポートを受けることができる。 自社のメールドメインを使用してメール…

シェルスクリプトで find の結果で回すときに空白文字が含まれるファイル名が含まれる場合の対処

IFS を改行のみにしておくとよい。 IFS=$'\n' for file in $(find /path/to/directory -name "*.txt"); do echo "$file" done

SimpleSAMLphp で開発用の SAML ID Provider を立てる

SAML によるシングルサインオンに対応したアプリを作るときに、開発環境としてお手軽に試せる ID Provider があると便利なので、SimpleSAMLphp でタダで作る。 OneLogin のアカウントを持っている場合は、 "SAML Test Connector (IdP)" を使えば簡単に作れる…

Atom の Markdown Preview の中国語フォントを日本語フォントにする

環境 Atom 1.1.0 GitHub.com のスタイルに変更 Packages > Settings View > Open (もしくは ctrl+ ,) packages タブから markdown-preview を検索して Settings ボタンをクリック Use GitHub.com style をチェック プレビューのフォントを変更 Packages > Se…

Redmine で Github のように草を生やすプラグインを作った

Redmine 内での活動を Github のように表示するプラグインです。「活動」タブで見れる情報が対象となります。プロジェクト全体の活動が見れるほか、担当者毎の活動も可視化できます。 環境 Redmine 3.0.x リポジトリ https://github.com/suer/redmine_glance…

CentOS 5 32bit で fluent-agent-hydra を無理やり動かす

環境 CentOS 5.5 (Linux kernel 2.6.18) Go 1.4.2 fluent-agent-hydra v0.1.3 問題 Go は CentOS 5 をサポートしていないせいか、 CentOS 5 32bit (Linux kernel 2.6.18) 上で fujiwara/fluent-agent-hydra · GitHub の32bit バイナリを動かすと以下のエラー…

Mac OS X Yosemite で Font Awesome の PNG ファイルを作る

環境 Mac OS X Yosemite 10.10.3 Homebrew 0.9.5 Font-Awesome-SVG-PNG 1.1.5 参考 encharm/Font-Awesome-SVG-PNG · GitHub 手順 必要なパッケージのインストール $ brew install node npm librsvg librsvg の link がうまくいかなかった旨のメッセージが出…

Ivy で SNAPSHOT リポジトリの最新版を取得する方法

Ivy はデフォルトだと同じ名前の jar ファイルはローカルにキャッシュしたものを優先するので、SNAPSHOT リポジトリと相性が悪い。 ivysetting.xml で checkmodified を指定して、毎回確認するように変更する。 <ivysettings> <property name="ivy.checksums" value=""/> <settings defaultResolver="chained"/> <resolvers> <chain name="chained" returnFirst="true" changingPattern=".*SNAPSHOT"> …</chain></resolvers></settings></property></ivysettings>

Archive するたびに Splunk Mint (旧 Bugsense) に自動で dSYM ファイルをアップロードする

ios

追記: この記事は古い情報です。現在この記事の方法ではアップロードできません。 最新の SplunkMint-iOS をインストールし、以下の記事に従って設定してください。(ただし、アーカイブ時ではなくビルド時にアプロードされます) Configure your project for …