modulepackage
0.12.3
Repository: https://github.com/ydb-platform/ydb-go-yc.git
Documentation: pkg.go.dev
# README
ydb-go-yc
Helpers to connect to YDB inside yandex-cloud.
Table of contents
Overview
Currently package provides helpers to connect to YDB inside yandex-cloud.
About semantic versioning
We follow the SemVer 2.0.0. In particular, we provide backward compatibility in the MAJOR
releases. New features without loss of backward compatibility appear on the MINOR
release. In the minor version, the patch number starts from 0
. Bug fixes and internal changes are released with the third digit (PATCH
) in the version.
There are, however, some changes with the loss of backward compatibility that we consider to be MINOR
:
- extension or modification of internal
ydb-go-yc
interfaces. We understand that this will break the compatibility of custom implementations of theydb-go-yc
internal interfaces. But we believe that the internal interfaces ofydb-go-yc
are implemented well enough that they do not require custom implementation. We are working to ensure that all internal interfaces have limited access only insideydb-go-yc
. - major changes to (including removal of) the public interfaces and types that have been previously exported by
ydb-go-yc
. We understand that these changes will break the backward compatibility of early adopters of these interfaces. However, these changes are generally coordinated with early adopters and have the concise interfacing withydb-go-yc
as a goal.
Internal interfaces outside from internal
directory are marked with comment such as
// Warning: only for internal usage inside ydb-go-yc
We publish the planned breaking MAJOR
changes:
- via the comment
Deprecated
in the code indicating what should be used instead - through the file
NEXT_MAJOR_RELEASE.md
Prerequisites
Requires Go 1.13 or later.
Installation
go get -u github.com/ydb-platform/ydb-go-yc
Usage
import (
yc "github.com/ydb-platform/ydb-go-yc"
)
...
db, err := ydb.Open(ctx, os.Getenv("YDB_CONNECTION_STRING"),
yc.WithInternalCA(),
yc.WithServiceAccountKeyFileCredentials("~/.ydb/sa.json"), // auth from service account key file
// yc.WithMetadataCredentials(), // auth inside cloud (virual machine or yandex function)
)
# Functions
No description provided by the author
No description provided by the author
No description provided by the author
WithAudience set provided audience.
No description provided by the author
WithCertPool set provided certPool.
WithCertPoolFile try set root certPool from provided cert file path.
WithDefaultEndpoint set endpoint with default value.
WithEndpoint set provided endpoint.
WithFallbackCredentials makes fallback credentials if primary credentials are failed.
WithInsecureSkipVerify set insecureSkipVerify to true which force client accepts any TLS certificate presented by the iam server and any host name in that certificate.
WithInternalCA append internal yandex-cloud certs.
WithIssuer set provided issuer.
WithKeyID set provided keyID.
No description provided by the author
No description provided by the author
WithPrivateKey set provided private key.
WithPrivateKeyFile try set key from provided private key file path.
No description provided by the author
No description provided by the author
WithServiceFile try set key, keyID, issuer from provided service account file path.
WithServiceKey try set key, keyID, issuer from provided service account key.
WithSourceInfo set sourceInfo.
WithSystemCertPool try set certPool with system root certificates.
WithTokenTTL set provided tokenTTL duration.
# Type aliases
No description provided by the author