planetscale 0.2.0 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.buildkite/pipeline.yml +21 -0
- data/.github/workflows/ci.yml +9 -1
- data/.github/workflows/gem-push.yml +9 -2
- data/.licenses/go/github.com/matoous/go-nanoid/v2.dep.yml +34 -0
- data/.licenses/go/github.com/planetscale/planetscale-go/planetscale.dep.yml +56 -3
- data/.licenses/go/github.com/planetscale/sql-proxy/proxy.dep.yml +205 -172
- data/.licenses/go/go.uber.org/zap/buffer.dep.yml +1 -1
- data/.licenses/go/go.uber.org/zap/internal/bufferpool.dep.yml +1 -1
- data/.licenses/go/go.uber.org/zap/internal/color.dep.yml +1 -1
- data/.licenses/go/go.uber.org/zap/internal/exit.dep.yml +1 -1
- data/.licenses/go/go.uber.org/zap/zapcore.dep.yml +1 -1
- data/.licenses/go/go.uber.org/zap.dep.yml +1 -1
- data/README.md +11 -8
- data/controller.go +24 -26
- data/go.mod +4 -3
- data/go.sum +42 -27
- data/lib/generators/planetscale/install_generator.rb +8 -6
- data/lib/planetscale/version.rb +1 -1
- data/lib/planetscale.rb +14 -15
- data/planetscale.gemspec +2 -2
- data/proxy/planetscale-darwin.h +1 -1
- data/proxy/planetscale-darwin.so +0 -0
- data/proxy/planetscale-linux.h +1 -1
- data/proxy/planetscale-linux.so +0 -0
- data/proxy.go +1 -5
- metadata +6 -342
- data/vendor/github.com/armon/circbuf/.gitignore +0 -22
- data/vendor/github.com/armon/circbuf/LICENSE +0 -20
- data/vendor/github.com/armon/circbuf/README.md +0 -28
- data/vendor/github.com/armon/circbuf/circbuf.go +0 -92
- data/vendor/github.com/armon/circbuf/go.mod +0 -1
- data/vendor/github.com/golang/protobuf/AUTHORS +0 -3
- data/vendor/github.com/golang/protobuf/CONTRIBUTORS +0 -3
- data/vendor/github.com/golang/protobuf/LICENSE +0 -28
- data/vendor/github.com/golang/protobuf/proto/buffer.go +0 -324
- data/vendor/github.com/golang/protobuf/proto/defaults.go +0 -63
- data/vendor/github.com/golang/protobuf/proto/deprecated.go +0 -113
- data/vendor/github.com/golang/protobuf/proto/discard.go +0 -58
- data/vendor/github.com/golang/protobuf/proto/extensions.go +0 -356
- data/vendor/github.com/golang/protobuf/proto/properties.go +0 -306
- data/vendor/github.com/golang/protobuf/proto/proto.go +0 -167
- data/vendor/github.com/golang/protobuf/proto/registry.go +0 -317
- data/vendor/github.com/golang/protobuf/proto/text_decode.go +0 -801
- data/vendor/github.com/golang/protobuf/proto/text_encode.go +0 -560
- data/vendor/github.com/golang/protobuf/proto/wire.go +0 -78
- data/vendor/github.com/golang/protobuf/proto/wrappers.go +0 -34
- data/vendor/github.com/gorilla/mux/AUTHORS +0 -8
- data/vendor/github.com/gorilla/mux/LICENSE +0 -27
- data/vendor/github.com/gorilla/mux/README.md +0 -805
- data/vendor/github.com/gorilla/mux/doc.go +0 -306
- data/vendor/github.com/gorilla/mux/go.mod +0 -3
- data/vendor/github.com/gorilla/mux/middleware.go +0 -74
- data/vendor/github.com/gorilla/mux/mux.go +0 -606
- data/vendor/github.com/gorilla/mux/regexp.go +0 -388
- data/vendor/github.com/gorilla/mux/route.go +0 -736
- data/vendor/github.com/gorilla/mux/test_helpers.go +0 -19
- data/vendor/github.com/hashicorp/go-cleanhttp/LICENSE +0 -363
- data/vendor/github.com/hashicorp/go-cleanhttp/README.md +0 -30
- data/vendor/github.com/hashicorp/go-cleanhttp/cleanhttp.go +0 -58
- data/vendor/github.com/hashicorp/go-cleanhttp/doc.go +0 -20
- data/vendor/github.com/hashicorp/go-cleanhttp/go.mod +0 -3
- data/vendor/github.com/hashicorp/go-cleanhttp/handlers.go +0 -48
- data/vendor/github.com/mitchellh/go-homedir/LICENSE +0 -21
- data/vendor/github.com/mitchellh/go-homedir/README.md +0 -14
- data/vendor/github.com/mitchellh/go-homedir/go.mod +0 -1
- data/vendor/github.com/mitchellh/go-homedir/homedir.go +0 -167
- data/vendor/github.com/pkg/errors/.gitignore +0 -24
- data/vendor/github.com/pkg/errors/.travis.yml +0 -10
- data/vendor/github.com/pkg/errors/LICENSE +0 -23
- data/vendor/github.com/pkg/errors/Makefile +0 -44
- data/vendor/github.com/pkg/errors/README.md +0 -59
- data/vendor/github.com/pkg/errors/appveyor.yml +0 -32
- data/vendor/github.com/pkg/errors/errors.go +0 -288
- data/vendor/github.com/pkg/errors/go113.go +0 -38
- data/vendor/github.com/pkg/errors/stack.go +0 -177
- data/vendor/github.com/planetscale/planetscale-go/planetscale/backups.go +0 -139
- data/vendor/github.com/planetscale/planetscale-go/planetscale/branches.go +0 -258
- data/vendor/github.com/planetscale/planetscale-go/planetscale/certs.go +0 -142
- data/vendor/github.com/planetscale/planetscale-go/planetscale/client.go +0 -305
- data/vendor/github.com/planetscale/planetscale-go/planetscale/databases.go +0 -131
- data/vendor/github.com/planetscale/planetscale-go/planetscale/deploy_requests.go +0 -368
- data/vendor/github.com/planetscale/planetscale-go/planetscale/organizations.go +0 -78
- data/vendor/github.com/planetscale/planetscale-go/planetscale/service_tokens.go +0 -163
- data/vendor/github.com/planetscale/sql-proxy/proxy/client.go +0 -467
- data/vendor/github.com/planetscale/sql-proxy/proxy/tls_cache.go +0 -73
- data/vendor/go.uber.org/atomic/.codecov.yml +0 -19
- data/vendor/go.uber.org/atomic/.gitignore +0 -12
- data/vendor/go.uber.org/atomic/.travis.yml +0 -27
- data/vendor/go.uber.org/atomic/CHANGELOG.md +0 -76
- data/vendor/go.uber.org/atomic/LICENSE.txt +0 -19
- data/vendor/go.uber.org/atomic/Makefile +0 -78
- data/vendor/go.uber.org/atomic/README.md +0 -63
- data/vendor/go.uber.org/atomic/bool.go +0 -81
- data/vendor/go.uber.org/atomic/bool_ext.go +0 -53
- data/vendor/go.uber.org/atomic/doc.go +0 -23
- data/vendor/go.uber.org/atomic/duration.go +0 -82
- data/vendor/go.uber.org/atomic/duration_ext.go +0 -40
- data/vendor/go.uber.org/atomic/error.go +0 -51
- data/vendor/go.uber.org/atomic/error_ext.go +0 -39
- data/vendor/go.uber.org/atomic/float64.go +0 -76
- data/vendor/go.uber.org/atomic/float64_ext.go +0 -47
- data/vendor/go.uber.org/atomic/gen.go +0 -26
- data/vendor/go.uber.org/atomic/go.mod +0 -8
- data/vendor/go.uber.org/atomic/go.sum +0 -9
- data/vendor/go.uber.org/atomic/int32.go +0 -102
- data/vendor/go.uber.org/atomic/int64.go +0 -102
- data/vendor/go.uber.org/atomic/nocmp.go +0 -35
- data/vendor/go.uber.org/atomic/string.go +0 -54
- data/vendor/go.uber.org/atomic/string_ext.go +0 -43
- data/vendor/go.uber.org/atomic/uint32.go +0 -102
- data/vendor/go.uber.org/atomic/uint64.go +0 -102
- data/vendor/go.uber.org/atomic/value.go +0 -31
- data/vendor/go.uber.org/multierr/.codecov.yml +0 -15
- data/vendor/go.uber.org/multierr/.gitignore +0 -4
- data/vendor/go.uber.org/multierr/.travis.yml +0 -23
- data/vendor/go.uber.org/multierr/CHANGELOG.md +0 -60
- data/vendor/go.uber.org/multierr/LICENSE.txt +0 -19
- data/vendor/go.uber.org/multierr/Makefile +0 -42
- data/vendor/go.uber.org/multierr/README.md +0 -23
- data/vendor/go.uber.org/multierr/error.go +0 -449
- data/vendor/go.uber.org/multierr/glide.yaml +0 -8
- data/vendor/go.uber.org/multierr/go.mod +0 -8
- data/vendor/go.uber.org/multierr/go.sum +0 -11
- data/vendor/go.uber.org/multierr/go113.go +0 -52
- data/vendor/go.uber.org/zap/.codecov.yml +0 -17
- data/vendor/go.uber.org/zap/.gitignore +0 -32
- data/vendor/go.uber.org/zap/.readme.tmpl +0 -109
- data/vendor/go.uber.org/zap/.travis.yml +0 -23
- data/vendor/go.uber.org/zap/CHANGELOG.md +0 -432
- data/vendor/go.uber.org/zap/CODE_OF_CONDUCT.md +0 -75
- data/vendor/go.uber.org/zap/CONTRIBUTING.md +0 -81
- data/vendor/go.uber.org/zap/FAQ.md +0 -156
- data/vendor/go.uber.org/zap/LICENSE.txt +0 -19
- data/vendor/go.uber.org/zap/Makefile +0 -63
- data/vendor/go.uber.org/zap/README.md +0 -134
- data/vendor/go.uber.org/zap/array.go +0 -320
- data/vendor/go.uber.org/zap/buffer/buffer.go +0 -123
- data/vendor/go.uber.org/zap/buffer/pool.go +0 -49
- data/vendor/go.uber.org/zap/checklicense.sh +0 -17
- data/vendor/go.uber.org/zap/config.go +0 -264
- data/vendor/go.uber.org/zap/doc.go +0 -113
- data/vendor/go.uber.org/zap/encoder.go +0 -79
- data/vendor/go.uber.org/zap/error.go +0 -80
- data/vendor/go.uber.org/zap/field.go +0 -539
- data/vendor/go.uber.org/zap/flag.go +0 -39
- data/vendor/go.uber.org/zap/glide.yaml +0 -34
- data/vendor/go.uber.org/zap/global.go +0 -168
- data/vendor/go.uber.org/zap/global_go112.go +0 -26
- data/vendor/go.uber.org/zap/global_prego112.go +0 -26
- data/vendor/go.uber.org/zap/go.mod +0 -13
- data/vendor/go.uber.org/zap/go.sum +0 -56
- data/vendor/go.uber.org/zap/http_handler.go +0 -81
- data/vendor/go.uber.org/zap/internal/bufferpool/bufferpool.go +0 -31
- data/vendor/go.uber.org/zap/internal/color/color.go +0 -44
- data/vendor/go.uber.org/zap/internal/exit/exit.go +0 -64
- data/vendor/go.uber.org/zap/level.go +0 -132
- data/vendor/go.uber.org/zap/logger.go +0 -344
- data/vendor/go.uber.org/zap/options.go +0 -140
- data/vendor/go.uber.org/zap/sink.go +0 -161
- data/vendor/go.uber.org/zap/stacktrace.go +0 -85
- data/vendor/go.uber.org/zap/sugar.go +0 -304
- data/vendor/go.uber.org/zap/time.go +0 -27
- data/vendor/go.uber.org/zap/writer.go +0 -99
- data/vendor/go.uber.org/zap/zapcore/console_encoder.go +0 -161
- data/vendor/go.uber.org/zap/zapcore/core.go +0 -113
- data/vendor/go.uber.org/zap/zapcore/doc.go +0 -24
- data/vendor/go.uber.org/zap/zapcore/encoder.go +0 -443
- data/vendor/go.uber.org/zap/zapcore/entry.go +0 -264
- data/vendor/go.uber.org/zap/zapcore/error.go +0 -115
- data/vendor/go.uber.org/zap/zapcore/field.go +0 -227
- data/vendor/go.uber.org/zap/zapcore/hook.go +0 -68
- data/vendor/go.uber.org/zap/zapcore/increase_level.go +0 -66
- data/vendor/go.uber.org/zap/zapcore/json_encoder.go +0 -534
- data/vendor/go.uber.org/zap/zapcore/level.go +0 -175
- data/vendor/go.uber.org/zap/zapcore/level_strings.go +0 -46
- data/vendor/go.uber.org/zap/zapcore/marshaler.go +0 -61
- data/vendor/go.uber.org/zap/zapcore/memory_encoder.go +0 -179
- data/vendor/go.uber.org/zap/zapcore/sampler.go +0 -208
- data/vendor/go.uber.org/zap/zapcore/tee.go +0 -81
- data/vendor/go.uber.org/zap/zapcore/write_syncer.go +0 -123
- data/vendor/golang.org/x/net/AUTHORS +0 -3
- data/vendor/golang.org/x/net/CONTRIBUTORS +0 -3
- data/vendor/golang.org/x/net/LICENSE +0 -27
- data/vendor/golang.org/x/net/PATENTS +0 -22
- data/vendor/golang.org/x/net/context/context.go +0 -56
- data/vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go +0 -71
- data/vendor/golang.org/x/net/context/go17.go +0 -73
- data/vendor/golang.org/x/net/context/go19.go +0 -21
- data/vendor/golang.org/x/net/context/pre_go17.go +0 -301
- data/vendor/golang.org/x/net/context/pre_go19.go +0 -110
- data/vendor/golang.org/x/oauth2/.travis.yml +0 -13
- data/vendor/golang.org/x/oauth2/AUTHORS +0 -3
- data/vendor/golang.org/x/oauth2/CONTRIBUTING.md +0 -26
- data/vendor/golang.org/x/oauth2/CONTRIBUTORS +0 -3
- data/vendor/golang.org/x/oauth2/LICENSE +0 -27
- data/vendor/golang.org/x/oauth2/README.md +0 -36
- data/vendor/golang.org/x/oauth2/go.mod +0 -9
- data/vendor/golang.org/x/oauth2/go.sum +0 -361
- data/vendor/golang.org/x/oauth2/internal/client_appengine.go +0 -14
- data/vendor/golang.org/x/oauth2/internal/doc.go +0 -6
- data/vendor/golang.org/x/oauth2/internal/oauth2.go +0 -37
- data/vendor/golang.org/x/oauth2/internal/token.go +0 -294
- data/vendor/golang.org/x/oauth2/internal/transport.go +0 -33
- data/vendor/golang.org/x/oauth2/oauth2.go +0 -381
- data/vendor/golang.org/x/oauth2/token.go +0 -178
- data/vendor/golang.org/x/oauth2/transport.go +0 -89
- data/vendor/google.golang.org/appengine/LICENSE +0 -202
- data/vendor/google.golang.org/appengine/internal/api.go +0 -678
- data/vendor/google.golang.org/appengine/internal/api_classic.go +0 -169
- data/vendor/google.golang.org/appengine/internal/api_common.go +0 -123
- data/vendor/google.golang.org/appengine/internal/app_id.go +0 -28
- data/vendor/google.golang.org/appengine/internal/base/api_base.pb.go +0 -308
- data/vendor/google.golang.org/appengine/internal/base/api_base.proto +0 -33
- data/vendor/google.golang.org/appengine/internal/datastore/datastore_v3.pb.go +0 -4367
- data/vendor/google.golang.org/appengine/internal/datastore/datastore_v3.proto +0 -551
- data/vendor/google.golang.org/appengine/internal/identity.go +0 -55
- data/vendor/google.golang.org/appengine/internal/identity_classic.go +0 -61
- data/vendor/google.golang.org/appengine/internal/identity_flex.go +0 -11
- data/vendor/google.golang.org/appengine/internal/identity_vm.go +0 -134
- data/vendor/google.golang.org/appengine/internal/internal.go +0 -110
- data/vendor/google.golang.org/appengine/internal/log/log_service.pb.go +0 -1313
- data/vendor/google.golang.org/appengine/internal/log/log_service.proto +0 -150
- data/vendor/google.golang.org/appengine/internal/main.go +0 -16
- data/vendor/google.golang.org/appengine/internal/main_common.go +0 -7
- data/vendor/google.golang.org/appengine/internal/main_vm.go +0 -69
- data/vendor/google.golang.org/appengine/internal/metadata.go +0 -60
- data/vendor/google.golang.org/appengine/internal/net.go +0 -56
- data/vendor/google.golang.org/appengine/internal/regen.sh +0 -40
- data/vendor/google.golang.org/appengine/internal/remote_api/remote_api.pb.go +0 -361
- data/vendor/google.golang.org/appengine/internal/remote_api/remote_api.proto +0 -44
- data/vendor/google.golang.org/appengine/internal/transaction.go +0 -115
- data/vendor/google.golang.org/appengine/internal/urlfetch/urlfetch_service.pb.go +0 -527
- data/vendor/google.golang.org/appengine/internal/urlfetch/urlfetch_service.proto +0 -64
- data/vendor/google.golang.org/appengine/urlfetch/urlfetch.go +0 -210
- data/vendor/google.golang.org/protobuf/AUTHORS +0 -3
- data/vendor/google.golang.org/protobuf/CONTRIBUTORS +0 -3
- data/vendor/google.golang.org/protobuf/LICENSE +0 -27
- data/vendor/google.golang.org/protobuf/PATENTS +0 -22
- data/vendor/google.golang.org/protobuf/encoding/prototext/decode.go +0 -773
- data/vendor/google.golang.org/protobuf/encoding/prototext/doc.go +0 -7
- data/vendor/google.golang.org/protobuf/encoding/prototext/encode.go +0 -371
- data/vendor/google.golang.org/protobuf/encoding/protowire/wire.go +0 -538
- data/vendor/google.golang.org/protobuf/internal/descfmt/stringer.go +0 -318
- data/vendor/google.golang.org/protobuf/internal/descopts/options.go +0 -29
- data/vendor/google.golang.org/protobuf/internal/detrand/rand.go +0 -69
- data/vendor/google.golang.org/protobuf/internal/encoding/defval/default.go +0 -213
- data/vendor/google.golang.org/protobuf/internal/encoding/messageset/messageset.go +0 -241
- data/vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go +0 -207
- data/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go +0 -665
- data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_number.go +0 -190
- data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_string.go +0 -161
- data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_token.go +0 -373
- data/vendor/google.golang.org/protobuf/internal/encoding/text/doc.go +0 -29
- data/vendor/google.golang.org/protobuf/internal/encoding/text/encode.go +0 -265
- data/vendor/google.golang.org/protobuf/internal/errors/errors.go +0 -89
- data/vendor/google.golang.org/protobuf/internal/errors/is_go112.go +0 -39
- data/vendor/google.golang.org/protobuf/internal/errors/is_go113.go +0 -12
- data/vendor/google.golang.org/protobuf/internal/filedesc/build.go +0 -158
- data/vendor/google.golang.org/protobuf/internal/filedesc/desc.go +0 -631
- data/vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go +0 -471
- data/vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go +0 -704
- data/vendor/google.golang.org/protobuf/internal/filedesc/desc_list.go +0 -450
- data/vendor/google.golang.org/protobuf/internal/filedesc/desc_list_gen.go +0 -356
- data/vendor/google.golang.org/protobuf/internal/filedesc/placeholder.go +0 -107
- data/vendor/google.golang.org/protobuf/internal/filetype/build.go +0 -297
- data/vendor/google.golang.org/protobuf/internal/flags/flags.go +0 -24
- data/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go +0 -9
- data/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go +0 -9
- data/vendor/google.golang.org/protobuf/internal/genid/any_gen.go +0 -34
- data/vendor/google.golang.org/protobuf/internal/genid/api_gen.go +0 -106
- data/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go +0 -829
- data/vendor/google.golang.org/protobuf/internal/genid/doc.go +0 -11
- data/vendor/google.golang.org/protobuf/internal/genid/duration_gen.go +0 -34
- data/vendor/google.golang.org/protobuf/internal/genid/empty_gen.go +0 -19
- data/vendor/google.golang.org/protobuf/internal/genid/field_mask_gen.go +0 -31
- data/vendor/google.golang.org/protobuf/internal/genid/goname.go +0 -25
- data/vendor/google.golang.org/protobuf/internal/genid/map_entry.go +0 -16
- data/vendor/google.golang.org/protobuf/internal/genid/source_context_gen.go +0 -31
- data/vendor/google.golang.org/protobuf/internal/genid/struct_gen.go +0 -116
- data/vendor/google.golang.org/protobuf/internal/genid/timestamp_gen.go +0 -34
- data/vendor/google.golang.org/protobuf/internal/genid/type_gen.go +0 -184
- data/vendor/google.golang.org/protobuf/internal/genid/wrappers.go +0 -13
- data/vendor/google.golang.org/protobuf/internal/genid/wrappers_gen.go +0 -175
- data/vendor/google.golang.org/protobuf/internal/impl/api_export.go +0 -177
- data/vendor/google.golang.org/protobuf/internal/impl/checkinit.go +0 -141
- data/vendor/google.golang.org/protobuf/internal/impl/codec_extension.go +0 -223
- data/vendor/google.golang.org/protobuf/internal/impl/codec_field.go +0 -830
- data/vendor/google.golang.org/protobuf/internal/impl/codec_gen.go +0 -5637
- data/vendor/google.golang.org/protobuf/internal/impl/codec_map.go +0 -388
- data/vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go +0 -37
- data/vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go +0 -11
- data/vendor/google.golang.org/protobuf/internal/impl/codec_message.go +0 -217
- data/vendor/google.golang.org/protobuf/internal/impl/codec_messageset.go +0 -123
- data/vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go +0 -209
- data/vendor/google.golang.org/protobuf/internal/impl/codec_tables.go +0 -557
- data/vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go +0 -17
- data/vendor/google.golang.org/protobuf/internal/impl/convert.go +0 -496
- data/vendor/google.golang.org/protobuf/internal/impl/convert_list.go +0 -141
- data/vendor/google.golang.org/protobuf/internal/impl/convert_map.go +0 -121
- data/vendor/google.golang.org/protobuf/internal/impl/decode.go +0 -276
- data/vendor/google.golang.org/protobuf/internal/impl/encode.go +0 -201
- data/vendor/google.golang.org/protobuf/internal/impl/enum.go +0 -21
- data/vendor/google.golang.org/protobuf/internal/impl/extension.go +0 -156
- data/vendor/google.golang.org/protobuf/internal/impl/legacy_enum.go +0 -219
- data/vendor/google.golang.org/protobuf/internal/impl/legacy_export.go +0 -92
- data/vendor/google.golang.org/protobuf/internal/impl/legacy_extension.go +0 -176
- data/vendor/google.golang.org/protobuf/internal/impl/legacy_file.go +0 -81
- data/vendor/google.golang.org/protobuf/internal/impl/legacy_message.go +0 -558
- data/vendor/google.golang.org/protobuf/internal/impl/merge.go +0 -176
- data/vendor/google.golang.org/protobuf/internal/impl/merge_gen.go +0 -209
- data/vendor/google.golang.org/protobuf/internal/impl/message.go +0 -276
- data/vendor/google.golang.org/protobuf/internal/impl/message_reflect.go +0 -465
- data/vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go +0 -543
- data/vendor/google.golang.org/protobuf/internal/impl/message_reflect_gen.go +0 -249
- data/vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go +0 -178
- data/vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go +0 -174
- data/vendor/google.golang.org/protobuf/internal/impl/validate.go +0 -576
- data/vendor/google.golang.org/protobuf/internal/impl/weak.go +0 -74
- data/vendor/google.golang.org/protobuf/internal/order/order.go +0 -89
- data/vendor/google.golang.org/protobuf/internal/order/range.go +0 -115
- data/vendor/google.golang.org/protobuf/internal/pragma/pragma.go +0 -29
- data/vendor/google.golang.org/protobuf/internal/set/ints.go +0 -58
- data/vendor/google.golang.org/protobuf/internal/strs/strings.go +0 -196
- data/vendor/google.golang.org/protobuf/internal/strs/strings_pure.go +0 -27
- data/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go +0 -94
- data/vendor/google.golang.org/protobuf/internal/version/version.go +0 -79
- data/vendor/google.golang.org/protobuf/proto/checkinit.go +0 -71
- data/vendor/google.golang.org/protobuf/proto/decode.go +0 -278
- data/vendor/google.golang.org/protobuf/proto/decode_gen.go +0 -603
- data/vendor/google.golang.org/protobuf/proto/doc.go +0 -94
- data/vendor/google.golang.org/protobuf/proto/encode.go +0 -319
- data/vendor/google.golang.org/protobuf/proto/encode_gen.go +0 -97
- data/vendor/google.golang.org/protobuf/proto/equal.go +0 -167
- data/vendor/google.golang.org/protobuf/proto/extension.go +0 -92
- data/vendor/google.golang.org/protobuf/proto/merge.go +0 -139
- data/vendor/google.golang.org/protobuf/proto/messageset.go +0 -93
- data/vendor/google.golang.org/protobuf/proto/proto.go +0 -43
- data/vendor/google.golang.org/protobuf/proto/proto_methods.go +0 -19
- data/vendor/google.golang.org/protobuf/proto/proto_reflect.go +0 -19
- data/vendor/google.golang.org/protobuf/proto/reset.go +0 -43
- data/vendor/google.golang.org/protobuf/proto/size.go +0 -97
- data/vendor/google.golang.org/protobuf/proto/size_gen.go +0 -55
- data/vendor/google.golang.org/protobuf/proto/wrappers.go +0 -29
- data/vendor/google.golang.org/protobuf/reflect/protodesc/desc.go +0 -276
- data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_init.go +0 -248
- data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_resolve.go +0 -286
- data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_validate.go +0 -374
- data/vendor/google.golang.org/protobuf/reflect/protodesc/proto.go +0 -252
- data/vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go +0 -77
- data/vendor/google.golang.org/protobuf/reflect/protoreflect/proto.go +0 -504
- data/vendor/google.golang.org/protobuf/reflect/protoreflect/source.go +0 -128
- data/vendor/google.golang.org/protobuf/reflect/protoreflect/source_gen.go +0 -461
- data/vendor/google.golang.org/protobuf/reflect/protoreflect/type.go +0 -665
- data/vendor/google.golang.org/protobuf/reflect/protoreflect/value.go +0 -285
- data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go +0 -59
- data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go +0 -411
- data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go +0 -98
- data/vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go +0 -869
- data/vendor/google.golang.org/protobuf/runtime/protoiface/legacy.go +0 -15
- data/vendor/google.golang.org/protobuf/runtime/protoiface/methods.go +0 -167
- data/vendor/google.golang.org/protobuf/runtime/protoimpl/impl.go +0 -44
- data/vendor/google.golang.org/protobuf/runtime/protoimpl/version.go +0 -56
- data/vendor/google.golang.org/protobuf/types/descriptorpb/descriptor.pb.go +0 -4039
- data/vendor/modules.txt +0 -79
|
@@ -1,368 +0,0 @@
|
|
|
1
|
-
package planetscale
|
|
2
|
-
|
|
3
|
-
import (
|
|
4
|
-
"context"
|
|
5
|
-
"fmt"
|
|
6
|
-
"net/http"
|
|
7
|
-
"time"
|
|
8
|
-
|
|
9
|
-
"github.com/pkg/errors"
|
|
10
|
-
)
|
|
11
|
-
|
|
12
|
-
type deployRequestsService struct {
|
|
13
|
-
client *Client
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
var _ DeployRequestsService = (*deployRequestsService)(nil)
|
|
17
|
-
|
|
18
|
-
// DeployRequestsService is an interface for communicating with the PlanetScale
|
|
19
|
-
// deploy requests API.
|
|
20
|
-
type DeployRequestsService interface {
|
|
21
|
-
CancelDeploy(context.Context, *CancelDeployRequestRequest) (*DeployRequest, error)
|
|
22
|
-
CloseDeploy(context.Context, *CloseDeployRequestRequest) (*DeployRequest, error)
|
|
23
|
-
Create(context.Context, *CreateDeployRequestRequest) (*DeployRequest, error)
|
|
24
|
-
CreateReview(context.Context, *ReviewDeployRequestRequest) (*DeployRequestReview, error)
|
|
25
|
-
Deploy(context.Context, *PerformDeployRequest) (*DeployRequest, error)
|
|
26
|
-
Diff(ctx context.Context, diffReq *DiffRequest) ([]*Diff, error)
|
|
27
|
-
Get(context.Context, *GetDeployRequestRequest) (*DeployRequest, error)
|
|
28
|
-
List(context.Context, *ListDeployRequestsRequest) ([]*DeployRequest, error)
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
// DeployRequestReview posts a review to a deploy request.
|
|
32
|
-
type DeployRequestReview struct {
|
|
33
|
-
ID string `json:"id"`
|
|
34
|
-
Body string `json:"body"`
|
|
35
|
-
State string `json:"state"`
|
|
36
|
-
CreatedAt time.Time `json:"created_at"`
|
|
37
|
-
UpdatedAt time.Time `json:"updated_at"`
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
// PerformDeployRequest is a request for approving and deploying a deploy request.
|
|
41
|
-
// NOTE: We deviate from naming convention here because we have a data model
|
|
42
|
-
// named DeployRequest already.
|
|
43
|
-
type PerformDeployRequest struct {
|
|
44
|
-
Organization string `json:"-"`
|
|
45
|
-
Database string `json:"-"`
|
|
46
|
-
Number uint64 `json:"-"`
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
// GetDeployRequest encapsulates the request for getting a single deploy
|
|
50
|
-
// request.
|
|
51
|
-
type GetDeployRequestRequest struct {
|
|
52
|
-
Organization string `json:"-"`
|
|
53
|
-
Database string `json:"-"`
|
|
54
|
-
Number uint64 `json:"-"`
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
// ListDeployRequestsRequest gets the deploy requests for a specific database
|
|
58
|
-
// branch.
|
|
59
|
-
type ListDeployRequestsRequest struct {
|
|
60
|
-
Organization string
|
|
61
|
-
Database string
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
// DeployOperation encapsulates a deploy operation within a deployment from the
|
|
65
|
-
// PlanetScale API.
|
|
66
|
-
type DeployOperation struct {
|
|
67
|
-
ID string `json:"id"`
|
|
68
|
-
State string `json:"state"`
|
|
69
|
-
Table string `json:"table_name"`
|
|
70
|
-
Keyspace string `json:"keyspace_name"`
|
|
71
|
-
Operation string `json:"operation_name"`
|
|
72
|
-
ETASeconds int64 `json:"eta_seconds"`
|
|
73
|
-
ProgressPercentage uint64 `json:"progress_percentage"`
|
|
74
|
-
CreatedAt time.Time `json:"created_at"`
|
|
75
|
-
UpdatedAt time.Time `json:"updated_at"`
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
// QueuedDeployment encapsulates a deployment that is in the queue.
|
|
79
|
-
type QueuedDeployment struct {
|
|
80
|
-
ID string `json:"id"`
|
|
81
|
-
State string `json:"state"`
|
|
82
|
-
DeployRequestNumber uint64 `json:"deploy_request_number"`
|
|
83
|
-
IntoBranch string `json:"into_branch"`
|
|
84
|
-
|
|
85
|
-
CreatedAt time.Time `json:"created_at"`
|
|
86
|
-
UpdatedAt time.Time `json:"updated_at"`
|
|
87
|
-
StartedAt *time.Time `json:"started_at"`
|
|
88
|
-
QueuedAt *time.Time `json:"queued_at"`
|
|
89
|
-
FinishedAt *time.Time `json:"finished_at"`
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
// Deployment encapsulates a deployment for a deploy request.
|
|
93
|
-
type Deployment struct {
|
|
94
|
-
ID string `json:"id"`
|
|
95
|
-
State string `json:"state"`
|
|
96
|
-
Deployable bool `json:"deployable"`
|
|
97
|
-
DeployRequestNumber uint64 `json:"deploy_request_number"`
|
|
98
|
-
IntoBranch string `json:"into_branch"`
|
|
99
|
-
PrecedingDeployments []*QueuedDeployment `json:"preceding_deployments"`
|
|
100
|
-
|
|
101
|
-
CreatedAt time.Time `json:"created_at"`
|
|
102
|
-
UpdatedAt time.Time `json:"updated_at"`
|
|
103
|
-
StartedAt *time.Time `json:"started_at"`
|
|
104
|
-
QueuedAt *time.Time `json:"queued_at"`
|
|
105
|
-
FinishedAt *time.Time `json:"finished_at"`
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
// DeployRequest encapsulates the request to deploy a database branch's schema
|
|
109
|
-
// to a production branch
|
|
110
|
-
type DeployRequest struct {
|
|
111
|
-
ID string `json:"id"`
|
|
112
|
-
|
|
113
|
-
Branch string `json:"branch"`
|
|
114
|
-
IntoBranch string `json:"into_branch"`
|
|
115
|
-
|
|
116
|
-
Number uint64 `json:"number"`
|
|
117
|
-
|
|
118
|
-
State string `json:"state"`
|
|
119
|
-
|
|
120
|
-
Approved bool `json:"approved"`
|
|
121
|
-
|
|
122
|
-
Notes string `json:"notes"`
|
|
123
|
-
|
|
124
|
-
Deployment *Deployment `json:"deployment"`
|
|
125
|
-
|
|
126
|
-
CreatedAt time.Time `json:"created_at"`
|
|
127
|
-
UpdatedAt time.Time `json:"updated_at"`
|
|
128
|
-
ClosedAt *time.Time `json:"closed_at"`
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
type CancelDeployRequestRequest struct {
|
|
132
|
-
Organization string `json:"-"`
|
|
133
|
-
Database string `json:"-"`
|
|
134
|
-
Number uint64 `json:"-"`
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
type CreateDeployRequestRequest struct {
|
|
138
|
-
Organization string `json:"-"`
|
|
139
|
-
Database string `json:"-"`
|
|
140
|
-
Branch string `json:"branch"`
|
|
141
|
-
IntoBranch string `json:"into_branch"`
|
|
142
|
-
Notes string `json:"notes"`
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
type ReviewDeployRequestRequest struct {
|
|
146
|
-
Organization string `json:"-"`
|
|
147
|
-
Database string `json:"-"`
|
|
148
|
-
Number uint64 `json:"-"`
|
|
149
|
-
|
|
150
|
-
// CommentText represents the comment body to be posted
|
|
151
|
-
CommentText string `json:"-"`
|
|
152
|
-
|
|
153
|
-
// ReviewAction defines the action for an individual review.
|
|
154
|
-
ReviewAction ReviewAction `json:"-"`
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
// ReviewAction defines the action for an individual review.
|
|
158
|
-
type ReviewAction int
|
|
159
|
-
|
|
160
|
-
const (
|
|
161
|
-
// Comment is used to comment a Review with a custom text.
|
|
162
|
-
ReviewComment ReviewAction = iota
|
|
163
|
-
|
|
164
|
-
// Approve is used to approve a Review.
|
|
165
|
-
ReviewApprove
|
|
166
|
-
)
|
|
167
|
-
|
|
168
|
-
func (r ReviewAction) String() string {
|
|
169
|
-
switch r {
|
|
170
|
-
case ReviewApprove:
|
|
171
|
-
return "approved"
|
|
172
|
-
case ReviewComment:
|
|
173
|
-
fallthrough
|
|
174
|
-
default:
|
|
175
|
-
return "commented"
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
type CloseDeployRequestRequest struct {
|
|
180
|
-
Organization string `json:"-"`
|
|
181
|
-
Database string `json:"-"`
|
|
182
|
-
Number uint64 `json:"-"`
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
func NewDeployRequestsService(client *Client) *deployRequestsService {
|
|
186
|
-
return &deployRequestsService{
|
|
187
|
-
client: client,
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
// Get fetches a single deploy request.
|
|
192
|
-
func (d *deployRequestsService) Get(ctx context.Context, getReq *GetDeployRequestRequest) (*DeployRequest, error) {
|
|
193
|
-
req, err := d.client.newRequest(http.MethodGet, deployRequestAPIPath(getReq.Organization, getReq.Database, getReq.Number), nil)
|
|
194
|
-
if err != nil {
|
|
195
|
-
return nil, errors.Wrap(err, "error creating http request")
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
dr := &DeployRequest{}
|
|
199
|
-
if err := d.client.do(ctx, req, &dr); err != nil {
|
|
200
|
-
return nil, err
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
return dr, nil
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
type CloseRequest struct {
|
|
207
|
-
State string `json:"state"`
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
// CloseDeploy closes a deploy request
|
|
211
|
-
func (d *deployRequestsService) CloseDeploy(ctx context.Context, closeReq *CloseDeployRequestRequest) (*DeployRequest, error) {
|
|
212
|
-
updateReq := &CloseRequest{
|
|
213
|
-
State: "closed",
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
req, err := d.client.newRequest(http.MethodPatch, deployRequestAPIPath(closeReq.Organization, closeReq.Database, closeReq.Number), updateReq)
|
|
217
|
-
if err != nil {
|
|
218
|
-
return nil, errors.Wrap(err, "error creating http request")
|
|
219
|
-
}
|
|
220
|
-
|
|
221
|
-
dr := &DeployRequest{}
|
|
222
|
-
if err := d.client.do(ctx, req, &dr); err != nil {
|
|
223
|
-
return nil, err
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
return dr, nil
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
// Deploy approves and executes a specific deploy request.
|
|
230
|
-
func (d *deployRequestsService) Deploy(ctx context.Context, deployReq *PerformDeployRequest) (*DeployRequest, error) {
|
|
231
|
-
path := deployRequestActionAPIPath(deployReq.Organization, deployReq.Database, deployReq.Number, "deploy")
|
|
232
|
-
req, err := d.client.newRequest(http.MethodPost, path, deployReq)
|
|
233
|
-
if err != nil {
|
|
234
|
-
return nil, errors.Wrap(err, "error creating http request")
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
dr := &DeployRequest{}
|
|
238
|
-
if err := d.client.do(ctx, req, &dr); err != nil {
|
|
239
|
-
return nil, err
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
return dr, nil
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
type deployRequestsResponse struct {
|
|
246
|
-
DeployRequests []*DeployRequest `json:"data"`
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
func (d *deployRequestsService) Create(ctx context.Context, createReq *CreateDeployRequestRequest) (*DeployRequest, error) {
|
|
250
|
-
path := deployRequestsAPIPath(createReq.Organization, createReq.Database)
|
|
251
|
-
req, err := d.client.newRequest(http.MethodPost, path, createReq)
|
|
252
|
-
if err != nil {
|
|
253
|
-
return nil, err
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
dr := &DeployRequest{}
|
|
257
|
-
if err := d.client.do(ctx, req, &dr); err != nil {
|
|
258
|
-
return nil, err
|
|
259
|
-
}
|
|
260
|
-
return dr, nil
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
// CancelDeploy cancels a queued deploy request.
|
|
264
|
-
func (d *deployRequestsService) CancelDeploy(ctx context.Context, deployReq *CancelDeployRequestRequest) (*DeployRequest, error) {
|
|
265
|
-
path := deployRequestActionAPIPath(deployReq.Organization, deployReq.Database, deployReq.Number, "cancel")
|
|
266
|
-
req, err := d.client.newRequest(http.MethodPost, path, deployReq)
|
|
267
|
-
if err != nil {
|
|
268
|
-
return nil, errors.Wrap(err, "error creating http request")
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
dr := &DeployRequest{}
|
|
272
|
-
if err := d.client.do(ctx, req, &dr); err != nil {
|
|
273
|
-
return nil, err
|
|
274
|
-
}
|
|
275
|
-
|
|
276
|
-
return dr, nil
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
// Diff returns the diff for a database deploy request
|
|
280
|
-
type Diff struct {
|
|
281
|
-
Name string `json:"name"`
|
|
282
|
-
Raw string `json:"raw"`
|
|
283
|
-
HTML string `json:"html"`
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
type diffResponse struct {
|
|
287
|
-
Diffs []*Diff `json:"data"`
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
type DiffRequest struct {
|
|
291
|
-
Organization string `json:"-"`
|
|
292
|
-
Database string `json:"-"`
|
|
293
|
-
Number uint64 `json:"-"`
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
// Diff returns a diff
|
|
297
|
-
func (d *deployRequestsService) Diff(ctx context.Context, diffReq *DiffRequest) ([]*Diff, error) {
|
|
298
|
-
req, err := d.client.newRequest(
|
|
299
|
-
http.MethodGet,
|
|
300
|
-
deployRequestActionAPIPath(diffReq.Organization, diffReq.Database, diffReq.Number, "diff"),
|
|
301
|
-
nil,
|
|
302
|
-
)
|
|
303
|
-
if err != nil {
|
|
304
|
-
return nil, errors.Wrap(err, "error creating http request")
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
diffs := &diffResponse{}
|
|
308
|
-
if err := d.client.do(ctx, req, &diffs); err != nil {
|
|
309
|
-
return nil, err
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
return diffs.Diffs, nil
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
func (d *deployRequestsService) List(ctx context.Context, listReq *ListDeployRequestsRequest) ([]*DeployRequest, error) {
|
|
316
|
-
req, err := d.client.newRequest(http.MethodGet, deployRequestsAPIPath(listReq.Organization, listReq.Database), nil)
|
|
317
|
-
if err != nil {
|
|
318
|
-
return nil, errors.Wrap(err, "error creating http request")
|
|
319
|
-
}
|
|
320
|
-
|
|
321
|
-
drReq := &deployRequestsResponse{}
|
|
322
|
-
if err := d.client.do(ctx, req, &drReq); err != nil {
|
|
323
|
-
return nil, err
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
return drReq.DeployRequests, nil
|
|
327
|
-
}
|
|
328
|
-
|
|
329
|
-
func (d *deployRequestsService) CreateReview(ctx context.Context, reviewReq *ReviewDeployRequestRequest) (*DeployRequestReview, error) {
|
|
330
|
-
var reqBody = struct {
|
|
331
|
-
State string `json:"state"`
|
|
332
|
-
Body string `json:"body"`
|
|
333
|
-
}{
|
|
334
|
-
State: reviewReq.ReviewAction.String(),
|
|
335
|
-
Body: reviewReq.CommentText,
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
req, err := d.client.newRequest(http.MethodPost,
|
|
339
|
-
deployRequestActionAPIPath(
|
|
340
|
-
reviewReq.Organization,
|
|
341
|
-
reviewReq.Database,
|
|
342
|
-
reviewReq.Number,
|
|
343
|
-
"reviews",
|
|
344
|
-
), reqBody)
|
|
345
|
-
if err != nil {
|
|
346
|
-
return nil, errors.Wrap(err, "error creating http request")
|
|
347
|
-
}
|
|
348
|
-
|
|
349
|
-
drr := &DeployRequestReview{}
|
|
350
|
-
if err := d.client.do(ctx, req, &drr); err != nil {
|
|
351
|
-
return nil, err
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
return drr, nil
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
func deployRequestsAPIPath(org, db string) string {
|
|
358
|
-
return fmt.Sprintf("%s/%s/deploy-requests", databasesAPIPath(org), db)
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
// deployRequestAPIPath gets the base path for accessing a single deploy request
|
|
362
|
-
func deployRequestAPIPath(org string, db string, number uint64) string {
|
|
363
|
-
return fmt.Sprintf("%s/%s/deploy-requests/%d", databasesAPIPath(org), db, number)
|
|
364
|
-
}
|
|
365
|
-
|
|
366
|
-
func deployRequestActionAPIPath(org string, db string, number uint64, path string) string {
|
|
367
|
-
return fmt.Sprintf("%s/%s", deployRequestAPIPath(org, db, number), path)
|
|
368
|
-
}
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
package planetscale
|
|
2
|
-
|
|
3
|
-
import (
|
|
4
|
-
"context"
|
|
5
|
-
"fmt"
|
|
6
|
-
"net/http"
|
|
7
|
-
"time"
|
|
8
|
-
|
|
9
|
-
"github.com/pkg/errors"
|
|
10
|
-
)
|
|
11
|
-
|
|
12
|
-
const organizationsAPIPath = "v1/organizations"
|
|
13
|
-
|
|
14
|
-
// GetOrganizationRequest encapsulates the request for getting a single
|
|
15
|
-
// organization.
|
|
16
|
-
type GetOrganizationRequest struct {
|
|
17
|
-
Organization string
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
// OrganizationsService is an interface for communicating with the PlanetScale
|
|
21
|
-
// Organizations API endpoints.
|
|
22
|
-
type OrganizationsService interface {
|
|
23
|
-
Get(context.Context, *GetOrganizationRequest) (*Organization, error)
|
|
24
|
-
List(context.Context) ([]*Organization, error)
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
// Organization represents a PlanetScale organization.
|
|
28
|
-
type Organization struct {
|
|
29
|
-
Name string `json:"name"`
|
|
30
|
-
CreatedAt time.Time `json:"created_at"`
|
|
31
|
-
UpdatedAt time.Time `json:"updated_at"`
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
type organizationsResponse struct {
|
|
35
|
-
Organizations []*Organization `json:"data"`
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
type organizationsService struct {
|
|
39
|
-
client *Client
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
var _ OrganizationsService = &organizationsService{}
|
|
43
|
-
|
|
44
|
-
func NewOrganizationsService(client *Client) *organizationsService {
|
|
45
|
-
return &organizationsService{
|
|
46
|
-
client: client,
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
// Get fetches a single organization by name.
|
|
51
|
-
func (o *organizationsService) Get(ctx context.Context, getReq *GetOrganizationRequest) (*Organization, error) {
|
|
52
|
-
req, err := o.client.newRequest(http.MethodGet, fmt.Sprintf("%s/%s", organizationsAPIPath, getReq.Organization), nil)
|
|
53
|
-
if err != nil {
|
|
54
|
-
return nil, errors.Wrap(err, "error creating request for get organization")
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
org := &Organization{}
|
|
58
|
-
if err := o.client.do(ctx, req, &org); err != nil {
|
|
59
|
-
return nil, err
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
return org, nil
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
// List returns all the organizations for a user.
|
|
66
|
-
func (o *organizationsService) List(ctx context.Context) ([]*Organization, error) {
|
|
67
|
-
req, err := o.client.newRequest(http.MethodGet, organizationsAPIPath, nil)
|
|
68
|
-
if err != nil {
|
|
69
|
-
return nil, errors.Wrap(err, "error creating request for list organization")
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
orgResponse := &organizationsResponse{}
|
|
73
|
-
if err := o.client.do(ctx, req, &orgResponse); err != nil {
|
|
74
|
-
return nil, err
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
return orgResponse.Organizations, nil
|
|
78
|
-
}
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
package planetscale
|
|
2
|
-
|
|
3
|
-
import (
|
|
4
|
-
"context"
|
|
5
|
-
"fmt"
|
|
6
|
-
"net/http"
|
|
7
|
-
)
|
|
8
|
-
|
|
9
|
-
var _ ServiceTokenService = &serviceTokenService{}
|
|
10
|
-
|
|
11
|
-
// ServiceTokenService is an interface for communicating with the PlanetScale
|
|
12
|
-
// Service Token API.
|
|
13
|
-
type ServiceTokenService interface {
|
|
14
|
-
Create(context.Context, *CreateServiceTokenRequest) (*ServiceToken, error)
|
|
15
|
-
List(context.Context, *ListServiceTokensRequest) ([]*ServiceToken, error)
|
|
16
|
-
Delete(context.Context, *DeleteServiceTokenRequest) error
|
|
17
|
-
GetAccess(context.Context, *GetServiceTokenAccessRequest) ([]*ServiceTokenAccess, error)
|
|
18
|
-
AddAccess(context.Context, *AddServiceTokenAccessRequest) ([]*ServiceTokenAccess, error)
|
|
19
|
-
DeleteAccess(context.Context, *DeleteServiceTokenAccessRequest) error
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
type serviceTokenService struct {
|
|
23
|
-
client *Client
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
func (s *serviceTokenService) Create(ctx context.Context, createReq *CreateServiceTokenRequest) (*ServiceToken, error) {
|
|
27
|
-
req, err := s.client.newRequest(http.MethodPost, serviceTokensAPIPath(createReq.Organization), nil)
|
|
28
|
-
if err != nil {
|
|
29
|
-
return nil, err
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
st := &ServiceToken{}
|
|
33
|
-
if err := s.client.do(ctx, req, &st); err != nil {
|
|
34
|
-
return nil, err
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return st, nil
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
func (s *serviceTokenService) List(ctx context.Context, listReq *ListServiceTokensRequest) ([]*ServiceToken, error) {
|
|
41
|
-
req, err := s.client.newRequest(http.MethodGet, serviceTokensAPIPath(listReq.Organization), nil)
|
|
42
|
-
if err != nil {
|
|
43
|
-
return nil, err
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
tokenListResponse := serviceTokensResponse{}
|
|
47
|
-
if err := s.client.do(ctx, req, &tokenListResponse); err != nil {
|
|
48
|
-
return nil, err
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
return tokenListResponse.ServiceTokens, nil
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
func (s *serviceTokenService) Delete(ctx context.Context, delReq *DeleteServiceTokenRequest) error {
|
|
55
|
-
req, err := s.client.newRequest(http.MethodDelete, serviceTokenAPIPath(delReq.Organization, delReq.ID), nil)
|
|
56
|
-
if err != nil {
|
|
57
|
-
return err
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
err = s.client.do(ctx, req, nil)
|
|
61
|
-
return err
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
func (s *serviceTokenService) GetAccess(ctx context.Context, accessReq *GetServiceTokenAccessRequest) ([]*ServiceTokenAccess, error) {
|
|
65
|
-
req, err := s.client.newRequest(http.MethodGet, serviceTokenAccessAPIPath(accessReq.Organization, accessReq.ID), nil)
|
|
66
|
-
if err != nil {
|
|
67
|
-
return nil, err
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
tokenAccess := serviceTokenAccessResponse{}
|
|
71
|
-
if err := s.client.do(ctx, req, &tokenAccess); err != nil {
|
|
72
|
-
return nil, err
|
|
73
|
-
}
|
|
74
|
-
return tokenAccess.ServiceTokenAccesses, nil
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
func (s *serviceTokenService) AddAccess(ctx context.Context, addReq *AddServiceTokenAccessRequest) ([]*ServiceTokenAccess, error) {
|
|
78
|
-
req, err := s.client.newRequest(http.MethodPost, serviceTokenAccessAPIPath(addReq.Organization, addReq.ID), addReq)
|
|
79
|
-
if err != nil {
|
|
80
|
-
return nil, err
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
tokenAccess := serviceTokenAccessResponse{}
|
|
84
|
-
if err := s.client.do(ctx, req, &tokenAccess); err != nil {
|
|
85
|
-
return nil, err
|
|
86
|
-
}
|
|
87
|
-
return tokenAccess.ServiceTokenAccesses, nil
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
func (s *serviceTokenService) DeleteAccess(ctx context.Context, delReq *DeleteServiceTokenAccessRequest) error {
|
|
91
|
-
req, err := s.client.newRequest(http.MethodDelete, serviceTokenAccessAPIPath(delReq.Organization, delReq.ID), delReq)
|
|
92
|
-
if err != nil {
|
|
93
|
-
return err
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
err = s.client.do(ctx, req, nil)
|
|
97
|
-
return err
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
type CreateServiceTokenRequest struct {
|
|
101
|
-
Organization string `json:"-"`
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
type DeleteServiceTokenRequest struct {
|
|
105
|
-
Organization string `json:"-"`
|
|
106
|
-
ID string `json:"-"`
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
type ListServiceTokensRequest struct {
|
|
110
|
-
Organization string `json:"-"`
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
type GetServiceTokenAccessRequest struct {
|
|
114
|
-
Organization string `json:"-"`
|
|
115
|
-
ID string `json:"-"`
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
type AddServiceTokenAccessRequest struct {
|
|
119
|
-
Organization string `json:"-"`
|
|
120
|
-
ID string `json:"-"`
|
|
121
|
-
Database string `json:"database"`
|
|
122
|
-
Accesses []string `json:"access"`
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
type DeleteServiceTokenAccessRequest struct {
|
|
126
|
-
Organization string `json:"-"`
|
|
127
|
-
ID string `json:"-"`
|
|
128
|
-
Database string `json:"database"`
|
|
129
|
-
Accesses []string `json:"access"`
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
type ServiceToken struct {
|
|
133
|
-
ID string `json:"id"`
|
|
134
|
-
Type string `json:"type"`
|
|
135
|
-
Token string `json:"token"`
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
type serviceTokensResponse struct {
|
|
139
|
-
ServiceTokens []*ServiceToken `json:"data"`
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
type ServiceTokenAccess struct {
|
|
143
|
-
ID int `json:"id"`
|
|
144
|
-
Access string `json:"access"`
|
|
145
|
-
Type string `json:"type"`
|
|
146
|
-
Resource Database `json:"resource"`
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
type serviceTokenAccessResponse struct {
|
|
150
|
-
ServiceTokenAccesses []*ServiceTokenAccess `json:"data"`
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
func serviceTokenAccessAPIPath(org, id string) string {
|
|
154
|
-
return fmt.Sprintf("%s/%s/access", serviceTokensAPIPath(org), id)
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
func serviceTokensAPIPath(org string) string {
|
|
158
|
-
return fmt.Sprintf("v1/organizations/%s/service-tokens", org)
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
func serviceTokenAPIPath(org, id string) string {
|
|
162
|
-
return fmt.Sprintf("%s/%s", serviceTokensAPIPath(org), id)
|
|
163
|
-
}
|