auto-config perintah

Membuat atau memperbarui autoentities definisi dalam file konfigurasi penyusun API Data yang ada. Autoentities tentukan aturan berbasis pola yang secara otomatis mengekspos objek database yang cocok sebagai entitas DAB saat startup.

Lihat Konfigurasi otomatis.

Sintaksis

dab auto-config <definition-name> [options]

Sekilas

Option RINGKASAN
-c, --config Jalur file konfigurasi. Bawaan dab-config.json.

Bagian kepala

Option RINGKASAN
<definition-name> Dibutuhkan. Nama definisi yang akan dikonfigurasi autoentities .
--patterns.include Pola T-SQL LIKE untuk menyertakan objek database. Standar: %.%.
--patterns.exclude Pola T-SQL LIKE untuk mengecualikan objek database. Standar: null.
--patterns.name Sintaks interpolasi untuk penamaan entitas. Standar: {schema}_{object}.
--permissions Izin dalam role:actions format. Standar: null.

Bagian templat

Option RINGKASAN
--template.rest.enabled Aktifkan/nonaktifkan REST untuk entitas yang cocok. Standar: true.
--template.graphql.enabled Aktifkan/nonaktifkan GraphQL untuk entitas yang cocok. Standar: true.
--template.mcp.dml-tools Aktifkan/nonaktifkan alat bahasa manipulasi data (DML) Model Context Protocol (MCP) untuk entitas yang cocok. Standar: true.
--template.health.enabled Aktifkan/nonaktifkan pemeriksaan kesehatan untuk entitas yang cocok. Standar: true.
--template.cache.enabled Aktifkan/nonaktifkan penembolokan untuk entitas yang cocok. Standar: false.
--template.cache.ttl-seconds Cache time-to-live dalam hitungan detik. Standar: null.
--template.cache.level Tingkat cache. Nilai yang diizinkan: L1, L1L2. Standar: L1L2.

<definition-name>

Argumen posisi yang diperlukan. Nama autoentities logis definisi. Membedakan huruf besar/kecil. Jika definisi sudah ada, DAB memperbaruinya; jika tidak, DAB membuatnya.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "patterns": {
        "include": [ "dbo.%" ]
      },
      "permissions": [
        { 
          "role": "anonymous", 
          "actions": [ { "action": "read" } ] 
        }
      ]
    }
  }
}

-c, --config

Jalur ke file konfigurasi. Default ke dab-config.json kecuali dab-config.<DAB_ENVIRONMENT>.json ada, di mana DAB_ENVIRONMENT adalah variabel lingkungan.

Example

dab auto-config my-def \
  --config ./dab-config.json \
  --patterns.include "dbo.%"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "patterns": {
        "include": [ "dbo.%" ]
      }
    }
  }
}

--patterns.include

Pola T-SQL LIKE untuk menyertakan objek database. Array yang dipisahkan spasi. Format polanya adalah schema.object (misalnya, dbo.%). Standar: %.%.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "patterns": {
        "include": [ "dbo.%" ]
      },
      "permissions": [
        { 
          "role": "anonymous", 
          "actions": [ { "action": "read" } ] 
        }
      ]
    }
  }
}

--patterns.exclude

Pola T-SQL LIKE untuk mengecualikan objek database. Array yang dipisahkan spasi. Pola pengecualian dievaluasi setelah menyertakan pola. Standar: null.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --patterns.exclude "dbo.internal%" \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "patterns": {
        "include": [ "dbo.%" ],
        "exclude": [ "dbo.internal%" ]
      },
      "permissions": [
        { 
          "role": "anonymous", 
          "actions": [ { "action": "read" } ] 
        }
      ]
    }
  }
}

--patterns.name

Sintaks interpolasi untuk penamaan entitas. {schema} Mendukung dan {object} tempat penampung. Harus unik untuk setiap entitas yang dihasilkan. Standar: {schema}_{object}.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --patterns.name "{schema}_{object}" \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "patterns": {
        "include": [ "dbo.%" ],
        "name": "{schema}_{object}"
      },
      "permissions": [
        { 
          "role": "anonymous", 
          "actions": [ { "action": "read" } ] 
        }
      ]
    }
  }
}

--permissions

Izin untuk semua entitas yang cocok dalam role:actions format. Standar: null.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "permissions": [
        { 
          "role": "anonymous", 
          "actions": [ { "action": "read" } ] 
        }
      ]
    }
  }
}

--template.rest.enabled

Aktifkan atau nonaktifkan titik akhir REST untuk semua entitas yang cocok. Nilai yang diizinkan: true, false. Standar: true.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --template.rest.enabled true \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "template": {
        "rest": { "enabled": true }
      }
    }
  }
}

--template.graphql.enabled

Aktifkan atau nonaktifkan GraphQL untuk semua entitas yang cocok. Nilai yang diizinkan: true, false. Standar: true.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --template.graphql.enabled true \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "template": {
        "graphql": { "enabled": true }
      }
    }
  }
}

--template.mcp.dml-tools

Aktifkan atau nonaktifkan alat MCP DML untuk semua entitas yang cocok. Nilai yang diizinkan: true, false. Standar: true.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --template.mcp.dml-tools true \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "template": {
        "mcp": { "dml-tools": true }
      }
    }
  }
}

--template.health.enabled

Aktifkan atau nonaktifkan pemeriksaan kesehatan untuk semua entitas yang cocok. Nilai yang diizinkan: true, false. Standar: true.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --template.health.enabled true \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "template": {
        "health": { "enabled": true }
      }
    }
  }
}

--template.cache.enabled

Aktifkan atau nonaktifkan penembolokan respons untuk semua entitas yang cocok. Nilai yang diizinkan: true, false. Standar: false.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --template.cache.enabled true \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "template": {
        "cache": { "enabled": true }
      }
    }
  }
}

--template.cache.ttl-seconds

Cache time-to-live dalam hitungan detik untuk semua entitas yang cocok. Standar: null.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --template.cache.enabled true \
  --template.cache.ttl-seconds 30 \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "template": {
        "cache": { 
          "enabled": true, 
          "ttl-seconds": 30 
        }
      }
    }
  }
}

--template.cache.level

Tingkat cache untuk semua entitas yang cocok. Nilai yang diizinkan: L1, L1L2. Standar: L1L2.

Example

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --template.cache.enabled true \
  --template.cache.ttl-seconds 30 \
  --template.cache.level L1L2 \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "template": {
        "cache": { 
            "enabled": true, 
            "ttl-seconds": 30, 
            "level": "l1l2" 
        }
      }
    }
  }
}

Contoh lengkap

dab auto-config my-def \
  --patterns.include "dbo.%" \
  --patterns.exclude "dbo.internal%" \
  --patterns.name "{schema}_{object}" \
  --template.rest.enabled true \
  --template.graphql.enabled true \
  --template.cache.enabled true \
  --template.cache.ttl-seconds 30 \
  --template.cache.level L1L2 \
  --permissions "anonymous:read"

Konfigurasi yang dihasilkan

{
  "autoentities": {
    "my-def": {
      "patterns": {
        "include": [ "dbo.%" ],
        "exclude": [ "dbo.internal%" ],
        "name": "{schema}_{object}"
      },
      "template": {
        "rest": { "enabled": true },
        "graphql": { "enabled": true },
        "cache": { 
            "enabled": true, 
            "ttl-seconds": 30, 
            "level": "l1l2" 
        }
      },
      "permissions": [
        { 
          "role": "anonymous", 
          "actions": [ { "action": "read" } ] 
        }
      ]
    }
  }
}