『入る学科間違えた高専生』の日記

プログラミングのコードを書いたりする予定です。あとは日記等。あといつまで高専生やねん

iOS Simulatorの写真ライブラリとかの権限を自動で与えたい人々

はじめに

タイトルなんか意味わからんことになったけど、

import Photos

PHPhotoLibrary.requestAuthorization {
    if case .authorized = $0 {
        print("アクセスが許可された!")
    } else {
        print("アクセスを許可してね!")
    }
}

みたいなコード書いて、 UT とかでテストしたいときとかあるじゃないですか?
そういうときに GUI のポップアップだされても人間がテストしてるときはある程度勝手に許容する動作をしてくれると思うのですが、ロボットはそんなことしてくれないのでそこをやってあげることできないかと思って調べたらできそうだったのでやってみてできたので記事にまとめるやつ。

ちなみに Xcode 11.4 からは今から紹介するまどろっこしい操作をしなくてもよくなったのでありがたい!!後で紹介します。

もう Xcode 11.3.x は触らないぜ!ヒャッハー!!な方はこちらを押すと Xcode 11.4 の話まですっ飛びます

環境

続きを読む

AWS BatchへのデプロイをGitHub Actionsで実装した

はじめに

また3ヶ月以上もブログを書いていなかったらしい。(生存ブログに関しては11月20日から書いていない)

今回は、仕事で AWS 環境化においての Batch 、 ECR 及び CloudWatch Events の更新を手動でやるのはダルいなという判断(脳内会議)になったので最近熱いと噂の GitHub Actions を使って CD 環境を作ろうとなって実装したのでその記事

CircleCI 等の環境でも同じようなことはできますが、僕が CircleCI を別のリポジトリで使いすぎて週間クレジットをリアルに毎週使い切るということになりそうなのでそれはそっちで使うということで使わないという判断です。

AWS のサービスの CodeBuild を使うという手もあるんですが、今の仕事では CloudFormation (以下、見出し等以外 CFn ) を使って一貫管理してないところもある *1 のですが95%以上は管理されているのでそのためにユーザ (Role) 増やして CodeBuild のログを見られるように修正パッチを毎回デプロイするとかかが面倒なので GitHub Actions での対応を判断しました。

github.co.jp

circleci.com

aws.amazon.com

*1:外部ライブラリに依存した Labmda 関数のデプロイパッケージの配置された S3 バケット

続きを読む

2019年の振り返り反省と2020年の生き方

はじめに

めっちゃ久しぶりにブログを書く。
今日は 2020 年 1 月 3 日 (金) 。。。すでに仕事は始まっていて3日が経過した。

2019年の振り返りと2020年の抱負というか生き方について書きたい

  1. 2019年どうだったか
  2. 2020年はどうするのか

この2点で今回は記事を書きたい。

続きを読む

troposphereで作ったAWS CloudFormationのテンプレートをCircleCIのジョブで検証する

はじめに

世の中にはとても便利なものがありふれており...

今回は CircleCIAWS CloudFormation (以下 CFn) をメインにタイトルのようなことをしていくやつです。

みんな大好き CircleCI

circleci.com

aws.amazon.com

troposhpere っていうのは CFn のテンプレートを Python を使って生成するツールです。

github.com

テンプレートを自分でゴリゴリ書けるぜ!!Foooooo!!な方は別に troposphere 使わんでもいいと思うし自分で書けばいいと思う。

環境

続きを読む

Instrumentsを使わずにiOSアプリだけでメモリリークを簡易的に検知する。黒魔術あり

はじめに

Instruments っていう Xcode に同梱されているアプリがあるんですけど、それを使わずに iOS アプリで開発中にメモリリークを検知したいとかあるかなって思って、メモ的なそれとちょっと黒魔術を使っていい感じに実装していくやつ。

環境

  • iOS 13.1 beta 3
  • Swift 5.1
  • Xcode 11 GM Seed
  • macOS Catalina 10.15 beta 8
  • Swift Package Manager

環境自体が Beta 環境なのは許してください。 Xcode 11 GM Seed なので Swift Package Manager (以下 SwiftPM ) を使用してます。
ここで書いていることはすでに Apple から公開されている情報だと思うんですが、もしなにかあれば教えてくださると助かります。

あと今回ライブラリの紹介的な記事になったのでわりと雑に書きます。

続きを読む

Aqoursのライブに関係者席で入らせてください!