Skip to content

Tink Go Google Cloud KMS Extension v2.0.0

Compare
Choose a tag to compare
@morambro morambro released this 22 Jun 09:58
· 51 commits to main since this release

Tink is a multi-language, cross-platform library that provides simple and misuse-proof APIs for common cryptographic tasks.

This is Tink Go Google Cloud Extension 2.0.0

What's new

This is the first release from https://github.com/tink-crypto/tink-go-gcpkms.

The complete list of changes since 1.7.0 can be found here.

  • Bazel:
    • Upgraded to use Bazel 6.0.0
    • Upgraded Protobuf to X.21.9
  • Changed target Go version to 1.19
  • Deleted deprecated APIs gcpkms.NewClientWith* (commit)
  • Added/upgraded CI test scripts

Get started

To get started using Tink, see the setup guide.

Go tooling

go get github.com/tink-crypto/tink-go-gcpkms/[email protected]

Bazel

workspace(name = "example")

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "com_google_protobuf",
    strip_prefix = "protobuf-21.9",
    urls = ["https://github.com/protocolbuffers/protobuf/archive/refs/tags/v21.9.zip"],
    sha256 = "5babb8571f1cceafe0c18e13ddb3be556e87e12ceea3463d6b0d0064e6cc1ac3",
)

http_archive(
    name = "io_bazel_rules_go",
    sha256 = "6dc2da7ab4cf5d7bfc7c949776b1b7c733f05e56edc4bcd9022bb249d2e2a996",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.39.1/rules_go-v0.39.1.zip",
        "https://github.com/bazelbuild/rules_go/releases/download/v0.39.1/rules_go-v0.39.1.zip",
    ],
)

http_archive(
    name = "bazel_gazelle",
    sha256 = "ecba0f04f96b4960a5b250c8e8eeec42281035970aa8852dda73098274d14a1d",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.29.0/bazel-gazelle-v0.29.0.tar.gz",
        "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.29.0/bazel-gazelle-v0.29.0.tar.gz",
    ],
)

# [Optional]: tink-go is imported as a go_repository by tink_go_gcpkms_dependencies.
# this is needed only if the user wants to pin to a specific commit/version of tink-go.
# http_archive(
#     name = "com_github_tink_crypto_tink_go_v2",
#     urls = ["https://github.com/tink-crypto/tink-go/archive/refs/tags/v2.0.0.zip"],
#     strip_prefix = "tink-go-2.0.0",
#     sha256 = "27f7446a29956173e10a65d0f71f7cd795ba3049b96fa5fae47333e06661ac2a",
# )

http_archive(
    name = "com_github_tink_crypto_tink_go_gcpkms",
    urls = ["https://github.com/tink-crypto/tink-go-gcpkms/archive/refs/tags/v2.0.0.zip"],
    strip_prefix = "tink-go-gcpkms-2.0.0",
    sha256 = "91cc2d1aaae7b24b7cc69cfa4aa60f93bfe753a9229a0060b38e6ed5272ce6ae",
)

load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")

load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository")

# [Optional]: tink-go is imported as a go_repository by tink_go_gcpkms_dependencies.
# this is needed only if the user wants to pin to a specific commit/version of tink-go.
# load("@com_github_tink_crypto_tink_go_v2//:deps.bzl", tink_go_dependencies="go_dependencies")
#
# tink_go_dependencies()

load("@com_github_tink_crypto_tink_go_gcpkms//:deps.bzl", "tink_go_gcpkms_dependencies")

tink_go_gcpkms_dependencies()

#######################################
#
# Your project dependencies here.
#
#######################################

go_rules_dependencies()

go_register_toolchains(version = "1.19.9")

gazelle_dependencies()