- 投稿日:2021-12-24T16:43:25+09:00
Macでランダムな文字列をサクッとつくる
背景・目的 テストデータなど作成する際に、ランダムな文字列が欲しくなるのでメモしておく。 openssl 環境のセットアップなしでMacでサクッと作れる。 $ openssl rand -base64 12 CNnu8tZYagKCdV7I $ openssl rand -base64 15 wsPE5ZItiWKnuQfX3GI6
- 投稿日:2021-12-24T13:54:10+09:00
[Jenkins] JenkinsをUpdateしたらエラーでハマった問題
はじめに Jenkinsで新しいバージョンにしたところ下記のエラーになって使えなくなってしまった。 解消したやり方の忘却録 java.lang.IllegalStateException: An attempt to save the global configuration was made before it was loaded 前提 Homevrewで「jenkins-lts」を使用 やったこと ①、brew info jenkins-ltsでまず現在の情報を確認 jenkins-lts: stable 2.319.1 (bottled) Extendable open-source CI server https://www.jenkins.io/index.html#stable /usr/local/Cellar/jenkins-lts/2.263.4 (7 files, 67.2MB) * Built from source on 2021-12-24 at 13:23:01 /usr/local/Cellar/jenkins-lts/2.277.1 (7 files, 70.9MB) Built from source on 2021-12-24 at 13:17:27 /usr/local/Cellar/jenkins-lts/2.277.4 (7 files, 70.9MB) Built from source on 2021-12-24 at 13:13:38 /usr/local/Cellar/jenkins-lts/2.289.1 (7 files, 74.0MB) Poured from bottle on 2021-12-24 at 12:01:49 /usr/local/Cellar/jenkins-lts/2.319.1 (8 files, 72.2MB) Poured from bottle on 2021-12-24 at 11:34:09 From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/jenkins-lts.rb License: MIT ==> Dependencies Required: openjdk@11 ✔ ==> Caveats Note: When using launchctl the port will be 8080. To restart jenkins-lts after an upgrade: brew services restart jenkins-lts Or, if you don't want/need a background service you can just run: /usr/local/opt/openjdk@11/bin/java -Dmail.smtp.starttls.enable=true -jar /usr/local/opt/jenkins-lts/libexec/jenkins.war --httpListenAddress=127.0.0.1 --httpPort=8080 ==> Analytics install: 4,780 (30 days), 15,102 (90 days), 62,524 (365 days) install-on-request: 4,781 (30 days), 15,108 (90 days), 62,529 (365 days) build-error: 0 (30 days) ②、/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formulaに移動 ③、git log --oneline jenkins-lts.rb バージョン一覧を確認 464ad19fe41 jenkins-lts: update 2.319.1 bottle. 16ad14ad681 jenkins-lts 2.319.1 8d7ce70778c jenkins-lts: update 2.303.3 bottle. efb18adfa6a jenkins-lts 2.303.3 7e47b5825c8 jenkins-lts: update 2.303.2 bottle. 011e6b85725 jenkins-lts 2.303.2 276b7f954f6 jenkins-lts: update 2.303.1 bottle. b674d1d04c8 jenkins-lts: update homepage c9a9ee1bfc8 jenkins-lts: update 2.303.1 bottle. 3b002d1c05f jenkins-lts 2.303.1 c16b22eb2bf jenkins-lts: update 2.289.3 bottle. df9e7d44c53 jenkins-lts: replace `plist` with `service` a5038b50f51 jenkins-lts: update 2.289.3 bottle. e08a02d32f3 jenkins-lts 2.289.3 b6926ffe30e jenkins-lts: update 2.289.2 bottle. 5f2cae66354 jenkins-lts 2.289.2 3a567e39af4 jenkins-lts: update 2.289.1 bottle. 429f97b381c jenkins-lts 2.289.1 14190b5777b jenkins-lts: add 2.277.4 bottle. 72f5bb488f3 jenkins-lts 2.277.4 a54a050d3fa jenkins-lts 2.277.3 27c28dda052 jenkins-lts 2.277.2 (#74753) bab4933f7e1 jenkins-lts 2.277.1 54ef3077819 jenkins-lts: update livecheck 47d159b208a jenkins-lts: remove ambiguous regexp literals db1df7d5bd0 jenkins-lts: use HTTPS urls. 3a3803f22e2 jenkins-lts 2.263.4 (#70853) d67475d00fe jenkins-lts 2.263.3 (#69803) 584fc4d559e jenkins-lts 2.263.2 119da4ff5bb jenkins-lts 2.263.1 (#66075) 33f33460ec9 jenkins-lts 2.249.3 (#64136) 7920ad6d1d9 jenkins-lts 2.249.2 0c00b5a1ae0 jenkins-lts 2.249.1 9591758fd8a Add livecheck blocks from homebrew-livecheck 53548e17a6e jenkins-lts 2.235.5 (#59783) bbea9bfcf72 jenkins-lts 2.235.4 (#59632) 34f30ced0b1 jenkins-lts 2.235.3 (#58790) 613790f173b jenkins-lts: fix RuboCop style. d4992efefa7 jenkins-lts 2.235.2 (#58005) 6f9ac931b6f jenkins: use openjdk 11 (#57215) b68c0358948 jenkins-lts 2.235.1 2d95073b0ae jenkins-lts 2.222.4 d4bad9e5f94 Merge pull request #52593 from bayandin/free_port-instead-of-predefined 1a17ffa6ba4 jenkins-lts 2.222.1 (#52264) c070c77dd13 jenkins-lts 2.204.6 (#52159) 26ca9afb437 jenkins-lts: fix RuboCop Style/TrailingBodyOnMethodDefinition. 8b535e58670 jenkins-lts 2.204.5 (#51299) 68e2cce51ce jenkins-lts 2.204.4 (#51072) ④、以前のバージョンは動いていたので以前のバージョンを探して戻す git checkout 3a3803f22e2 jenkins-lts brew unlink jenkins-lts brew install jenkins-lts brew services restart jenkins-lts cd ~/Library/LaunchAgents launchctl unload -w homebrew.mxcl.jenkins-lts.plist launchctl load -w homebrew.mxcl.jenkins-lts.plist むやみやたらに軽い気持ちでアップデートするとPlugin周りの整合性が取れずというところでした。 参考文献
- 投稿日:2021-12-24T09:24:26+09:00
どうしてもSlack風の絵文字入力と共にTwitter年越しをしたいからジタバタした結果
dip株式会社のアドベントカレンダー24日目です。 Typescriptを使ってフロント開発・スクラムマスターしている@bo469maです。 今回はTwitter年越しを快適にするために工夫した話を書きました。 ラノベ風のまとめ slackで絵文字ネイティブになった社会人は、 日本語入力と絵文字タブと相いれないので、 プロパティファイルとユーザー辞書で絵文字入力ユートピアを作る。 背景 年末の音楽番組だったり、駅伝だったりお笑いを見て パソコンでTweetdeckで実況ツイしてTLのお友達とわいわいするのが恒例なのですが いつも絵文字を入れようとすると... :mu タブ タブ タブ タブ タァァァァァァァブ(力強いキー音) 出ない!! いつもslackで脊髄反射で打ってる絵文字がでない!!!!! :muscle: フルで打っても出ない!!! ?を打ちたいだけなのに!! そう!ここはいつものslackのtimes(雑談チャンネル)ではないのである!!!! じゃ、muscleじゃないなら何を打てばいいの...? 右腕 筋肉 絵文字 検索 =>ちからこぶという意味 ちからこぶで変換できるの? ちからこぶ→?昆布 君ちからなの...? muscle=ちからは確かにそうだけども.... でも君は私にとってmuscleでしかないの.... 絵文字タブとか絵文字キーボードから探し出すほど送りたいわけではないし... そうだ、どうにか:muscle:で?を出してもらうようにしよう(決意) 実践してみた 略語とかお馴染みのユーザー辞書登録をしていきます。 Macの右上のキーボード設定からユーザー辞書を編集...を選びます。 (それかシステム環境設定>キーボード>ユーザー辞書を開きます。) 普通に略語の時は入力にひらがな、変換に漢字のところを、 入力にslackの:emoji:を、変換に絵文字を入れます。 試しに登録できてるか書いてみます。 :muscle:と入力した後、変換候補が出て、スペースを押すと変換できるようになりました?? もっともっと実践する ユーザー辞書のバックアップ方法を利用して、一度にたくさん登録する。 ユーザー辞書の項目を選択してデスクトップにドラッグすると、 .plistが生成されます。 (複数選択してドラッグ→ユーザー辞書.plist、単体選択してドラッグ→変換.plistが出ると思います) 先程の登録した?のplistを開くと、以下のコードが記述されてます。 XML: ? .plist <?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"> <array> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:muscle:</string> </dict> </array> </plist> 比較用にもう一つ絵文字?を追加して、ユーザー辞書のplistを開くと、 XML: ユーザー辞書 .plist <?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"> <array> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:muscle:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:present:</string> </dict> </array> </plist> (注:絵文字が入っているとcodeブロックがうまく機能しない様子) コードを見るとphraseが変換、shortcutが入力にあたりそう。 <dict>~</dict>の中身を繰り返せば一度に他の絵文字も登録できそう...? 追加したい絵文字をそのままユーザー辞書.plistに書き足してみる。 XML: ユーザー辞書 .plist <?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"> <array> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:muscle:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:gift:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:santa:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:tada:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:christmas_tree:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:beer:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:heart_eyes:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:pien:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:cake:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:birthday:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:pray:</string> </dict> <dict> <key>phrase</key> <string>?</string> <key>shortcut</key> <string>:bow:</string> </dict> </array> </plist> これをこのままユーザー辞書にドラッグ&ドロップする。 やった〜〜〜?????たくさん一度に登録できた〜〜〜??? これで急いでる時でも?できるし、?できる! 快適なemojiライフの始まり始まり〜〜? いつか実践できるようにしたい この方法だと:muscle:をフルフルで入力する必要があるので、 slackみたいにtabだったり、 :スタートの入力+何かのボタンをトリガーに補完してくれるアプリが欲しいと思いました。 また、Googleの検索欄など、英字変換が機能しないこともあるので、他の実践方法を模索したいですね。 補足 AppleID?のiCloud☁️の連携をしていれば、 Mac?のユーザー辞書に設定した絵文字たちは iPhone?のユーザー辞書にも反映されます。 (長いものは変換に出てこないので、iPhone用に短い読みで登録するのがおすすめです) 余談 ちな、この記事を書いてる時、 QiitaはWindows風の可愛い絵文字に ドンドン変換してくれて 嬉しみがヤバたんでした まーじバイブステンアゲ 天下統一果たした豊臣尊み〜 って感じだったので、 こういうフォーマットを使いこなせる記事を もっともっと 書いてみたいと改めて思いました。