terraform ステートを強制スキップする

遭遇したエラー Error: reading Secrets Manager Secret (arn:aws:secretsmanager:ap-northeast-1:xxxxxxxxxxxx:secret:sample-secret-xxxxxx): couldn't find resource 環境構築時、デプロイ中にいきなりTokenの有効期限切れエラーが発生した。 terraformのステート管理はS3に保存している。 99designs/aws-vault を使ってローカルでシークレット管理していたら急に.. ここの原因はわかってないけど、デプロイ中でしかもステート保存失敗のエラーが出たので、完全に状態がおかしくなった。 rdb接続情報のSecret保存部分でエラー 幸い新規構築中だったので、一度 destroy してから再度作成しようとしていた。 このタイミングで上記エラーが発生しだした。 コンソールから削除しても、refresh しても何してもだめなので、ステータスが壊れたのだと思う。 まずは、削除する上でもリソースのスキップが必要 下記内容で強制スキップし、リソースは手動削除するなどして、削除完了できた。 terraform で持っている状態の一覧 $ terraform state list : (省略) module.db.aws_secretsmanager_secret.sample : (省略) 調べたステート名を指定して削除 $ terraform state rm module.db.aws_secretsmanager_secret.sample

2023-05-08 ·  2023-05-08 · 1 分 · 41 文字

The bucket does not allow ACLs エラーに出くわしたので調べる

Bucket作成時のACLエラー Terraform で環境構築時に下記エラーが発生 ACL周りのデフォルト動作が変更となったようなので、少しメモ Error: error creating S3 bucket ACL for sample-bucket: AccessControlListNotSupported: The bucket does not allow ACLs status code: 400, request id: xxxxxxxxxxxxxxxx, host id: xxxxxxxxxxxxxxxxxxxxxxxxxxx+xxxxxxxxxxxxxxxxx/xxxxxxx/xxxxxxxxxxxxxxxxxxxxxx with module.s3.aws_s3_bucket_acl.sample, on ../../module_aws/s3/main.tf line 13, in resource "aws_s3_bucket_acl" "sample": 13: resource "aws_s3_bucket_acl" "sample" { S3作成時のデフォルトの設定の変更 2023年4月より新規S3バケットは、デフォルトでパブリック・アクセスブロック有効化、ACL無効化 ACLは利用しないことが推奨される s3オブジェクトのACL有効・無効設定は aws_s3_bucket_ownership_controls で設定する resource "aws_s3_bucket_ownership_controls" "sample" { bucket = aws_s3_bucket.sample.bucket rule { object_ownership = "BucketOwnerEnforced" } } object_ownership に設定できるのは以下 ObjectWriter: 所有者はアップローダ BucketOwnerPreferred: バケット所有アカウントを指定可能(bucket-owner-full-control) BucketOwnerEnforced: バケット所有アカウント強制 BucketOwnerEnforced ではACL併用できない S3 ポリシー適用時のエラー S3 policy: AccessDenied: Access Denied 一部ディレクトリのみ公開したい場合など、ACLを指定する場合は、ObjectWriter & ACL設定 & ポリシーにはアカウントを指定する...

2023-05-08 ·  2023-09-22 · 1 分 · 107 文字

Golangでディレクトリ内が空かどうかを判定する

最終的にはこれ func IsEmpty(name string) (bool, error) { f, err := os.Open(name) if err != nil { return false, err } defer f.Close() _, err = f.Readdirnames(1) // Or f.Readdir(1) if err == io.EOF { return true, nil } return false, err // Either not empty or error, suits both cases } つまり システムにはディレクトリが空かどうかの情報は無いからディレクトリの子があるかどうかで判断するしか無い File.Readdirnames() が最速 以下日本語要約 ディレクトリが空であるか否かは、その名前、作成時間、またはそのサイズ(ファイルの場合)のようなファイルシステムレベルのプロパティとして保存されていません。 つまり、os.FileInfoからこの情報を直接取得することはできません。最も簡単な方法は、ディレクトリの子(内容)をクエリすることです。 ioutil.ReadDir()はあまり良い選択ではありません。なぜなら、これはまず指定されたディレクトリのすべての内容を読み取り、それらを名前でソートし、その後スライスを返すからです。最も速い方法はDave Cが言及したように、File.Readdir()または(好ましくは)File.Readdirnames()を使用してディレクトリの子をクエリすることです。 File.Readdir()とFile.Readdirnames()の両方は、返される値の数を制限するために使用されるパラメータを取ります。1つの子をクエリするだけで十分です。Readdirnames()は名前のみを返すので、FileInfo構造体を取得(および構築)するためのさらなる呼び出しが必要ないため、速度が速くなります。 ディレクトリが空の場合、io.EOFがエラーとして返され(空のスライスやnilのスライスではない)ため、返された名前のスライスは必要ありません。 以下抜粋 Whether a directory is empty or not is not stored in the file-system level as properties like its name, creation time or its size (in case of files)....

2023-04-21 ·  2023-05-14 · 2 分 · 259 文字

スキャナ取込みした印影もExcelで作成した印鑑も法的効力は同じ

電子印鑑・デジタルのハンコとは?ExcelやWordで無料作成する方法もご紹介! | 電子契約サービス「マネーフォワード クラウド契約」 電子印鑑とは電子文書に捺印可能なデジタル印鑑のこと スキャナ取込みした印影もExcelで作成した印鑑も法的効力は同じ そもそも印鑑は習慣 電子印鑑と通常の印鑑はほとんどの書類において、同様に使用可能 なりすましなどのセキュリティを気にする場合は、電子署名を実施すべき 電子署名は先方との同意のもとに署名する必要あり

2023-03-20 ·  2023-04-18 · 1 分 · 10 文字

経営セーフティ共済申し込みに必要なもの

色々ネットに情報があったのに、、先日経営セーフティ共済を申し込みに行って書類不備で突き返された。 備忘録としてメモしておくけど、、、 あんな言い方無くない?某大手銀行のお姉さん!いや、おばさんだ!お前なんか! 提出に必要なもの 所得税の確定申告書(第1表) 所得税の確定申告書(第2表) eTax受信通知の印刷 納税証明書(その1)(発行に370円) 所得税の確定申告書(直近の決算書・収支内訳書等の添付書類を含む) 提示書類 所轄税務署の受付印があるものを提出してください。 経営セーフティ共済に加入したいと考えている個人事業主です。必要… - Yahoo!知恵袋 所得税を納付したことを証する「納税証明書(その1)」 提示書類 確定申告書に記載された予定、確定の税額を納付したことを証する領収書で代えることもできます。 確定申告書を作成するときに使用した帳簿等(白色申告書の場合) 提示書類 青色の場合は不要 加入手続き|経営セーフティ共済(中小機構)

2023-03-19 ·  2023-04-18 · 1 分 · 21 文字