BioErrorLog Tech Blog

試行錯誤の記録

S3バケットポリシーとIAMポリシーの関係を整理する

S3バケットポリシーとIAMポリシーの関係を、同一アカウント・クロスアカウントそれぞれにおいて整理します。 はじめに S3バケットポリシーとIAMポリシーの関係 結論 検証準備 同一アカウント内アクセス クロスアカウントアクセス おわりに 参考 はじめに こ…

英語圏でGoogle検索する方法

英語圏のサイトをGoogle検索する方法を整理します。 はじめに 英語圏でGoogle検索する 結論 URLパラメータの説明 おわりに 参考 はじめに こんにちは、@bioerrorlogです。 技術的な調べ物をするときは、なるべく英語で検索するようにしています。 日本語での…

LambdaでAWS CLIを実行する | AWS Lambda Layer

Lambda Layerを利用して、Lambda上でAWS CLIを実行する方法をメモします。 はじめに LambdaでAWS CLIを実行する Python仮想環境の作成 仮想環境にAWS CLIをインストール Python実行パスの変更 AWS CLI関連パッケージをzipファイルにまとめる Lambda Layerの…

Unityで位置情報(緯度/経度/高度)を取得する | Android / iOSアプリ

UnityでGPS位置情報(緯度/経度/高度)を取得する方法を整理します。 はじめに Unityで位置情報を取得する 最終的なアプリ 位置情報を取得するスクリプト おわりに 参考 はじめに こんにちは、@bioerrorlogです。 ふと、位置情報を利用したアプリを作ってみた…

S3既存オブジェクトに一括でbucket-owner-full-controlを付与する | AWS CLI

S3バケットの既存の全オブジェクトに--acl bucket-owner-full-controlを一括付与するやり方の備忘録です。 はじめに 既存オブジェクトにbucket-owner-full-controllを一括付与する 追記バージョンコマンドの解説 旧バージョンコマンドの解説 おわりに 関連記…

Boto3でAssumeRoleする | AWS SDK for Python

Boto3でAssumeRoleするやり方をまとめます。 はじめに Boto3でAssumeRoleする AssumeRole関数の実装 使用例 おわりに 参考 はじめに こんにちは、@bioerrorlogです。 Boto3を利用したPythonスクリプトで、AssumeRoleしたい状況はよくあります。 その度にAssu…

aws s3 cpとsyncの違い | AWS CLI

AWS CLIのs3 cpとs3 syncの違いをまとめます。 はじめに cpとsyncの違い Descriptionを比較する コマンドオプションを比較する コマンドの挙動を比較する おわりに 参考 はじめに こんにちは、@bioerrorlogです。 あるS3バケットのオブジェクトを別のS3バケ…

CloudWatch EventsでS3への特定オブジェクトのアップロードを検知する

S3への特定オブジェクトのアップロードをトリガーに、CloudWatch Eventsを起動するやり方の備忘録を残します。 はじめに CloudWatch Eventsのイベントソースを調べる S3トリガーで起動するCloudWatch Eventsを作成する CloudTrail証跡を作成する CloudWatch …

grepコマンドで特定の文字列を含むファイルを検索する | Linux shell

ある特定の文字列を含むファイルをLinuxコマンドで検索する方法を整理します。 はじめに ある文字列を含むファイルをコマンドで検索する やり方 解説 補足: 特定ディレクトリをgrep対象から除外する おわりに 参考 はじめに こんにちは、@bioerrorlogです。 …

Godot EngineでBoids Flockingを実装する | 人工生命

Boids FlockingシミュレーションをGodot Engineで実装します。 はじめに Boids Flockingとは 実装 Separation Alignment Cohesion エサを追いかける動作 おわりに 参考 はじめに Boids Flocking (ボイドモデル / ボイド群衆アルゴリズム) をGodot Engineで実…

Amplify & GraphQLでのデータモデル設計事例集

AWS Amplify & GraphQLでのデータモデル (スキーマ) 設計例をまとめます。 はじめに スキーマ設計例 Todoアプリ イベントアプリ チャットアプリ Eコマースアプリ WhatsAppクローン Redditクローン マルチユーザーチャットアプリ インスタグラムクローン カン…

Amplify & AppSyncで時系列データを日付範囲でList取得する

AWS Amplify (AppSync)で、時系列データをある日付の範囲でList取得する方法を記します。 はじめに Amplify & AppSyncで時系列データを日付範囲でList取得する ケース1: 全List取得に対する日付範囲での絞りこみ ケース2: Partition keyを指定した上での日…

GDScriptにおけるドルマーク"$"の意味と使い方 | Godot Engine

GDScriptにおけるドルマーク$の意味と使用方法をまとめます。 はじめに ドルマーク$はget_node()の略記である 使用例 子Nodeの取得 親Nodeの取得 同階層Nodeの取得 自Nodeの取得 絶対パスでの取得 おわりに 参考 はじめに Godot Engineを触り始めた頃、以下…

Amplifyプロジェクトのgitリポジトリを公開するときの注意点

AWS Amplifyプロジェクトのgitリポジトリをパブリックにするときのセキュリティ上の注意点についての備忘録です。 一言で言うと、team-provider-info.jsonをgit管理から外すべし、となります。 はじめに 作業環境 Amplifyプロジェクトのgitリポジトリを公開…

Unityのゲーム画面を動画出力する

Unity Recorderを用いて、Unityゲームプレイ画面を動画出力する方法を整理します。 はじめに 作業環境 Unityのゲーム画面を動画出力する Unity Recorderのインポート Unity Recorderの設定 ゲーム画面の録画 おわりに 参考 はじめに こんにちは、@bioerrorlo…