The cloud portion of Nidus
| arcgis-go@b33f892f49 | ||
| dberrors | ||
| dbinfo | ||
| enums | ||
| factory | ||
| migrations | ||
| models | ||
| sql | ||
| static | ||
| templates | ||
| .air.toml | ||
| .gitattributes | ||
| .gitignore | ||
| .gitmodules | ||
| arcgis.go | ||
| auth.go | ||
| bobgen.yaml | ||
| database.go | ||
| default.nix | ||
| endpoint.go | ||
| fileserver.go | ||
| flake.lock | ||
| flake.nix | ||
| go.mod | ||
| go.sum | ||
| html.go | ||
| lefthook.yml | ||
| LICENSE | ||
| main.go | ||
| README.md | ||
| response.go | ||
Nidus Sync
This is the software that powers Nidus Cloud Sync.
Building from source
First, you'll need Nix.
Then:
nix develop
go build .
Running
> BASE_URL=https://sync.nidus.cloud ARCGIS_CLIENT_ID=foo ARCGIS_CLIENT_SECRET=bar POSTGRES_DSN='postgresql://?host=/var/run/postgresql&dbname=nidus-sync' ./nidus-sync
Hacking
air
This project uses air for fast compile-and-test loops. You can run it with:
> BASE_URL=https://sync.nidus.cloud ARCGIS_CLIENT_ID=foo ARCGIS_CLIENT_SECRET=bar POSTGRES_DSN='postgresql://?host=/var/run/postgresql&dbname=nidus-sync' air
bob
This uses the bob query framework. You can regenerate the models for bob with:
PSQL_DSN="postgresql://dbname?host=/var/run/postgresql&sslmode=disable" go run github.com/stephenafamo/bob/gen/bobgen-psql@latest"
PSQL_DSN="postgresql://?host=/var/run/postgresql&sslmode=disable&dbname=nidus-sync" go run github.com/stephenafamo/bob/gen/bobgen-psql@latest
This will generate a bunch of files. They're already committed, you only need this if you change the database schema in some way.