push - プロジェクトのアップロード

push - プロジェクトのアップロード

sqlc pushは、データベーススキーマ、クエリ、設定をsqlc Cloudにプッシュします。これらのアーカイブはverifyによって使用され、データベーススキーマの破壊的変更をキャッチします。

設定

sqlcでプッシュするように設定するには、cloud設定のprojectキーをプロジェクトIDの値に設定します。プロジェクトIDはダッシュボードから取得できます。

version: '2'
cloud:
  project: '<PROJECT_ID>'
sql:
- schema: schema.sql
  queries: query.sql
  engine: postgresql
  gen:
    go:
      out: db

sqlcSQLC_AUTH_TOKEN環境変数の値に有効な認証トークンがあることを期待します。認証トークンもダッシュボードから作成できます。

export SQLC_AUTH_TOKEN=sqlc_xxxxxxxx

これらが設定されたら、sqlc pushを実行します:

$ sqlc push

CI/CDでの使用

sqlc pushは、アプリケーションのリリースをタグ付けするときに実行する必要があります。これらのコミットを継続的にデプロイするため、mainへのプッシュごとに実行します。

GitHub Actions

以下のGitHub Workflow設定は、mainへのプッシュごとにsqlc pushを実行します。ダッシュボードで認証トークンを作成してください。

name: sqlc
on: [push]
jobs:
  push:
    runs-on: ubuntu-latest
    if: ${{ github.ref == 'refs/heads/main' }}
    steps:
    - uses: actions/checkout@v3
    - uses: sqlc-dev/setup-sqlc@v3
      with:
        sqlc-version: '1.29.0'
    - run: sqlc push
      env:
        SQLC_AUTH_TOKEN: ${{ secrets.SQLC_AUTH_TOKEN }}

注意

プロジェクトのプッシュはsqlc Cloudによって強化されています。今すぐ無料でサインアップしてください。


原文:https://docs.sqlc.dev/en/latest/howto/ci-cd.html#push