🌟

exit codeを強制的に0にする

2022/04/18に公開

すごいニッチな需要かも。

こちらを参考
https://www.cloudnotes.tech/entry/codebuild-diff-command

prisma-cli使ってcodebuild上でマイグレーション処理を走らせていた。そのとき、resolve --appliedで初期のSQLを指定していた。

ただ、こうすると、2回目以降はnpx prisma migrate resolve --applied 20220415012806_initial_migrationがすでに適応されているとexit code 1で失敗してしまうため、CodeBuild自体が失敗する。

そこで、exit code を強制的に0にする

migrationspec.yml
version: 0.2

env:
  variables:
    DATABASE_URL: hogehoge
    
phases:
  install:
    runtime-versions:
      nodejs: 14
  build:
    commands:
      - apt update && apt install -y postgresql-client
      - npm i prisma
      # resolve --appliedはすでに適応されていればエラーを返すので無視。
      # | catはexit codeを強制的に0にする。
      - npx prisma migrate resolve --applied 20220415012806_initial_migration | cat
      - npx prisma migrate deploy

Discussion