Archive するたびに Splunk Mint (旧 Bugsense) に自動で dSYM ファイルをアップロードする
追記: この記事は古い情報です。現在この記事の方法ではアップロードできません。
最新の SplunkMint-iOS をインストールし、以下の記事に従って設定してください。(ただし、アーカイブ時ではなくビルド時にアプロードされます)
Configure your project for symbolication - Splunk Documentation
API キーとトークンの取得
API キーとトークンは Splunk Mint のサイトにログインして、それぞれ以下のページから取得する。
Xcode プロジェクトの設定
Xcode のスキーマ(Xcode 上バーのデバッグ停止ボタンの右) をクリックして Edit Scheme... を選択する。
Archive の Post-actions を開き、+ をクリックして New Run Script Action を選択する。
API_KEY="API キー" API_TOKEN="API トークン" APP_NAME=アプリ名 rm -f $APP_NAME.app.dSYM.zip zip -r $APP_NAME.app.dSYM.zip "${ARCHIVE_DSYMS_PATH}/$APP_NAME.app.dSYM" curl -F file=@"$APP_NAME.app.dSYM.zip" --header "X-Splunk-Mint-apikey: $API_KEY" --header "X-Splunk-Mint-Auth-Token: $API_TOKEN" "https://symbolicator.splkmobile.com/upload/dsym" -i
API キーやトークンを Git の管理対象に入れたく無い場合
プロジェクトルートディレクトリに mint.plist というファイルを置いて、.gitignore で管理対象にならないようにする。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>API_KEY</key> <string>API キー</string> <key>API_TOKEN</key> <string>API トークン</string> </dict> </plist>
以下のようなスクリプトを登録する
APP_NAME="アプリ名" API_KEY=$(/usr/libexec/PlistBuddy -c "Print API_KEY" $(dirname ${WORKSPACE_PATH})/mint.plist) API_TOKEN=$(/usr/libexec/PlistBuddy -c "Print API_TOKEN" $(dirname ${WORKSPACE_PATH})/mint.plist) rm -f $APP_NAME.app.dSYM.zip zip -r $APP_NAME.app.dSYM.zip "${ARCHIVE_DSYMS_PATH}/$APP_NAME.app.dSYM" curl -F file=@"$APP_NAME.app.dSYM.zip" --header "X-Splunk-Mint-apikey: ${API_KEY}" --header "X-Splunk-Mint-Auth-Token: ${API_TOKEN} "https://symbolicator.splkmobile.com/upload/dsym" -i
管理者権限でログインしているかどうかをひと目で分かるようにする Redmine プラグインを作った
Redmine の管理者と一般ユーザを分けていると、よくある失敗として、
管理者権限でログインしたままでいることを忘れたままチケットを作成・更新してしまう、
ということがあります。
そうすると、チケットの更新者が自分じゃなくて管理者ユーザになってしまって悲しい思いをします。
そういった事故を減らすために管理者でログインしているかどうかをテーマでひと目で分かるようにするプラグインを作りました。
環境
Redmine 3.0.0
機能
管理者ユーザでログインしている時のみ <body> タグの class に "admin" を追加します。
この class を利用したテーマを自作することで管理者と一般ユーザの画面の見た目を切り替えることができるようになります。
利用手順
テーマを作成します。
例えば、public/themes/admin/stylesheets/application.css を以下のように作成します。
@import url(../../../stylesheets/application.css); body.admin #top-menu { background-color: #f0908d; } body.admin #header { background-color: #f2a0a1; }
管理画面で作成したテーマを指定します。
この例の場合は、一般ユーザでログインした場合は通常の画面
管理者でログインした場合は別の見た目になります。
これで誤ったアカウントでチケットを更新する事故をかなり防げるようになります。
MagicalRecord でシミュレータ実行時に作成された sqlite のデータベースファイルを探す
環境: iOS SDK8.1
MagicalRecord で
MagicalRecord.setupCoreDataStackWithAutoMigratingSqliteStoreNamed("database.sqlite")
のように実行した場合、シミュレータでは
~/Library/Developer/CoreSimulator/Devices/デバイスID
以下に作成される。
デバイス ID が分からないことが多いので find で探す。
$ find ~/Library/Developer/CoreSimulator/Devices/ -name "database.sqlite"