
Als nächstes kommt die V2 von Skygear, die folgen wollen
.
├── pkg
│ ├── server <-- original skygear-server code
│ ├── auth
│ ├── gateway
│ └── core
└── cmd
├── auth
│ └── main.go
└── gateway
└── main.go
Wenn Sie auf einen Build-Fehler stoßen, sehen Sie wie invalid flag in pkg-config --cflags: -Xpreprocessor , export CGO_CFLAGS_ALLOW=-Xpreprocessor .
Wenn Sie vorhaben, lokal zu bauen und zu laufen, müssen Sie die folgenden Abhängigkeiten installieren.
Wenn Sie auf MacOS und Benutzer von Homebrew sind, können Sie diese durch installieren
brew install pkgconfig vipsgateway für module .pkg/gateway/model/app.go mit neuen Ausrüstung in Gear , App und GetGearVersion .GetAppByDomain in pkg/gateway/db/app.go mit der Spalte neuer Ausrüstung.Plan und CanAccessGear -Funktion in pkg/gateway/model/plan.goGearURLConfig und GetGearURL -Func in pkg/gateway/config/config.go Im folgenden Teil handelt es sich um Gateway- und Zahnradmigration.
Wenn Sie von SkyGear-Server 0.x bis 1.x kommen, besteht der größte Unterschied darin, dass sich die Ausrüstung in Skygear als nächstes die Auto-DB-Migration in der Server-Bootzeit nicht unterstützen würde.
Die DB -Migration muss vor dem Serverstart ausgeführt werden. Und da wir noch kein volles DB -Management -Tool für SkyGear haben, finden Sie hier eine allgemeine Anleitung für neue Comers of Skygear Nächster Benutzer.
Der App -Name ist beispielsweise helloworld und Sie möchten auth -Ausrüstung ausführen.
# 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
Weitere Befehle zur DB -Migration finden Sie unter den folgenden Abschnitten.
Fügen Sie eine Version hinzu
# MODULE can be gateway, core, auth...
$ export MODULE= < module_name >
$ export REVISION= < revision_description >
$ make -C migrate add-version MODULE= ${MODULE} REVISION= ${REVISION}Überprüfen Sie die aktuelle DB -Version
$ make -C migrate
Trocknen Sie die Migration
Transaktion wird Rollback sein
$ make -C migrate MIGRATE_CMD=up DRY_RUN=1
Führen Sie die Migration mit Github -Quelle aus
$ 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
Ausführen der DB-Migration auf alle Apps im Cluster (Multi-Tenant-Modus)
Führen Sie Kern- und Auth -Migrationen in Apps aus, die sich in Live authieren.
$ 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
Starten Sie den Migrationsserver im HTTP -Servermodus
$ make -C migrate http
Aufrufen des Migrationsservers
POST /migrate
Beispiel anfordern
{
"migration" : " auth " ,
"schema" : " app_config " ,
"database" : " postgres://postgres:@localhost:5432/postgres?sslmode=disable " ,
"command" : " version "
}Antwortbeispiel
{
"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.