
Berikutnya adalah V2 Skygear yang bertujuan untuk mengikuti
.
├── pkg
│ ├── server <-- original skygear-server code
│ ├── auth
│ ├── gateway
│ └── core
└── cmd
├── auth
│ └── main.go
└── gateway
└── main.go
Jika Anda menemukan kesalahan build terlihat seperti invalid flag in pkg-config --cflags: -Xpreprocessor , export CGO_CFLAGS_ALLOW=-Xpreprocessor .
Jika Anda berencana untuk membangun dan menjalankan secara lokal, Anda perlu menginstal dependensi berikut.
Jika Anda menggunakan macOS dan pengguna homebrew, Anda dapat menginstalnya
brew install pkgconfig vipsgateway untuk module .pkg/gateway/model/app.go dengan gigi baru di Gear , App , dan GetGearVersion .GetAppByDomain di pkg/gateway/db/app.go dengan kolom Versi Gear baru.Plan Struct dan CanAccessGear Func di pkg/gateway/model/plan.goGearURLConfig DAN GetGearURL FUNC DI pkg/gateway/config/config.go Bagian berikut adalah tentang migrasi Gateway dan Gears DB.
Jika Anda berasal dari skygear-server 0.x ke 1.x, perbedaan terbesar adalah bahwa persneling di Skygear Next tidak akan mendukung migrasi DB otomatis dalam waktu boot server.
Migrasi DB harus dijalankan sebelum server boot up. Dan karena kami belum memiliki alat manajemen DB unggulan lengkap untuk Skygear, berikut adalah panduan umum untuk pendatang baru dari skygear pengguna berikutnya.
Misalnya, nama aplikasi adalah helloworld dan Anda ingin menjalankan auth gear.
# Base app_config schema for core gateway
CREATE SCHEMA app_config;
# Create shared schema for apps
# Run the following SQL in any postgresql client, like Postico
CREATE SCHEMA app;
# If you have psql cli
$ psql ${DATABASE_URL} -c "CREATE SCHEMA app;"
# Run core and auth migration
$ make -C migrate migrate MIGRATE_CMD=up DATABASE_URL=${DATABASE_URL} SCHEMA=app
Lihat bagian di bawah ini untuk lebih banyak perintah tentang migrasi DB.
Tambahkan versi
# MODULE can be gateway, core, auth...
$ export MODULE= < module_name >
$ export REVISION= < revision_description >
$ make -C migrate add-version MODULE= ${MODULE} REVISION= ${REVISION}Periksa versi DB saat ini
$ make -C migrate
Keringkan migrasi
Transaksi akan menjadi rollback
$ make -C migrate MIGRATE_CMD=up DRY_RUN=1
Jalankan migrasi dengan sumber GitHub
$ make -C migrate migrate
CORE_SOURCE=github://:@skygeario/skygear-server/migrations/core#6918eed
AUTH_SOURCE=github://:@skygeario/skygear-server/migrations/auth#6918eed
MIGRATE_CMD=up
Menjalankan migrasi DB ke semua aplikasi dalam cluster (mode multi-tenant)
Jalankan migrasi inti dan auth ke aplikasi yang versi auth di live
$ make -C migrate migrate
APP_FILTER_KEY=auth_version
APP_FILTER_VALUE=live
CONFIG_DATABASE=postgres://postgres:@localhost/postgres?sslmode=disable
HOSTNAME_OVERRIDE=localhost
MIGRATE_CMD=up
Mulai Server Migrasi dalam Mode Server HTTP
$ make -C migrate http
Memanggil server migrasi
POST /migrate
Contoh permintaan
{
"migration" : " auth " ,
"schema" : " app_config " ,
"database" : " postgres://postgres:@localhost:5432/postgres?sslmode=disable " ,
"command" : " version "
}Contoh respons
{
"result" : " 1563434450 "
} Copyright (c) 2015-present, Oursky Ltd.
All rights reserved.
This source code is licensed under the Apache License version 2.0
found in the LICENSE file in the root directory of this source tree.
An additional grant of patent rights can be found in the PATENTS
file in the same directory.