
Em seguida é o V2 do Skygear que pretende seguir
.
├── pkg
│ ├── server <-- original skygear-server code
│ ├── auth
│ ├── gateway
│ └── core
└── cmd
├── auth
│ └── main.go
└── gateway
└── main.go
Se você encontrar um erro de compilação, pareça invalid flag in pkg-config --cflags: -Xpreprocessor , export CGO_CFLAGS_ALLOW=-Xpreprocessor .
Se você planeja construir e executar localmente, precisará instalar as seguintes dependências.
Se você estiver no macOS e usuário do homebrew, pode instalá -los por
brew install pkgconfig vipsgateway para module .pkg/gateway/model/app.go com New Gear in Gear , App e GetGearVersion .GetAppByDomain em pkg/gateway/db/app.go com a nova coluna da versão do equipamento.Plan Struct e CanAccessGear Func em pkg/gateway/model/plan.goGearURLConfig e GetGearURL Func em pkg/gateway/config/config.go A parte a seguir é sobre a migração de gateway e engrenagens db.
Se você vier do SkyGear-Server 0.x a 1.x, a maior diferença é que as engrenagens no SkyGear a seguir não suportariam a migração automática do banco de dados no tempo de inicialização do servidor.
A migração do banco de dados deve ser executada antes da inicialização do servidor. E como ainda não temos uma ferramenta de gerenciamento de banco de dados completa para o SkyGear, aqui está um guia geral para novos cantos do Skygear Next User.
Por exemplo, o nome do aplicativo é helloworld e você deseja executar auth O equipamento.
# 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
Veja as seções abaixo para obter mais comandos sobre migração de banco de dados.
Adicione uma versão
# MODULE can be gateway, core, auth...
$ export MODULE= < module_name >
$ export REVISION= < revision_description >
$ make -C migrate add-version MODULE= ${MODULE} REVISION= ${REVISION}Verifique a versão atual do banco de dados
$ make -C migrate
Run a seco a migração
A transação será revertida
$ make -C migrate MIGRATE_CMD=up DRY_RUN=1
Execute a migração com a fonte do 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
Executando a migração de DB para todos os aplicativos em cluster (modo multi-inquilino)
Execute migrações de núcleo e auth para aplicativos que versão auth in 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
Inicie o servidor de migração no modo de servidor HTTP
$ make -C migrate http
Chamando o servidor de migração
POST /migrate
Exemplo de solicitação
{
"migration" : " auth " ,
"schema" : " app_config " ,
"database" : " postgres://postgres:@localhost:5432/postgres?sslmode=disable " ,
"command" : " version "
}Exemplo de resposta
{
"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.