A CLI tool which loads data from yaml files into the Google Cloud Spanner tables

splanter

A CLI tool which loads data from yaml files into the Google Cloud Spanner tables (mainly for the development).

Usage

$  splanter \
     --project 
   
     \
     --instance 
    
      \
     --database 
     
       \
     --directory 
      

      
     
    
   
  • Create .yaml into the directory specified by --directory.
    • Each field name must be the column name of the Spanner table.
Similar Resources

tinygo-used-files is a CLI tool that lists only the files to be built as specified by buildtag.

tinygo-used-files is a CLI tool that lists only the files to be built as specified by buildtag.

Feb 6, 2022

Related is a simple cli utility tool to create files or a group of files.

Related - Create files based on individual definitions or groups Related helps with common file-creation-based tasks. You can predefine single types a

Apr 16, 2022

Generate High Level Cloud Architecture diagrams using YAML syntax.

Generate High Level Cloud Architecture diagrams using YAML syntax.

A commandline tool that generate High Level microservice & serverless Architecture diagrams using a declarative syntax defined in a YAML file.

Dec 24, 2022

Rem is a CLI trash which makes it ridiculously easy to recover files.

Rem is a CLI trash which makes it ridiculously easy to recover files.

Rem is a CLI trash which makes it ridiculously easy to recover files. We've all had that moment when we've deleted something we realised we shouldn't have. It sucks. Let's fix that!

Dec 21, 2022

🔄 A command-line utility to export Protocol Buffers (proto) files to YAML, and JSON

proto2yaml 🔄 A command-line utility to export Protocol Buffers (proto) files to YAML, and JSON. Currently supported exports are for: Packages Service

Nov 10, 2022

yq lets you read YAML files easily on the terminal. You can find key/values easily

yq lets you read YAML files easily on the terminal. You can find key/values easily

yq yq lets you read YAML files easily on the terminal. You can find key/values easily. Motivation Reading yaml configurations for k8s file becomes ard

Nov 2, 2021

📝 Easily format yaml files on terminal or your editor

YAMLFMT A simple and extensible yaml formatter. Installation go install github.com/UltiRequiem/yamlfmt@latest Make sure your $PATH includes the $GOPAT

Oct 31, 2022

Go pkg and cli tool to sign Google Maps API URLs

gmapsign gmapsign is a Go pkg and cli tool to sign Google Maps API request URLs. This is required when using: A client ID with the web service APIs, M

Jul 4, 2022

Google KMS backed Solana key management CLI tool

solana-kms solana-kms is a Google KMS backed Solana token management CLI utility. The main purpose of the tool is to ensure that the private key is ne

Jan 13, 2022
Comments
  • yaml: add a test case for all data types

    yaml: add a test case for all data types

    This PR adds a test case for all Cloud Spanner data types.

    • [x] yaml.TestLoad
    • [x] spanner.TestSave

    Note: StringArray is commented because ARRAY types are not supported(#13).

  • Feature request: Parse unit yaml value

    Feature request: Parse unit yaml value

    Thank you for NICE tool.

    With the following schema and yaml:

    CREATE TABLE Users (
      UserId   INT64 NOT NULL,
      Name STRING(128),
    ) PRIMARY KEY (UserId);
    
    - UserId: 101312
      Name: hoge
    

    The following error occurred: failed to load data to spanner tables: failed to insert records: spanner: code = "InvalidArgument", desc = "client doesn't support type uint64

    It would be more useful if the above yaml could be used.

    temporary solution

    As a temporary solution, I edited the yaml as shown below and the error did not occur. Int64 columns with '' .

    - UserId: '101312'
      Name: hoge
    
  • Feature request: add `example` code to repository or README.md

    Feature request: add `example` code to repository or README.md

    Feature request to add example code to the repository, or README.md.

    This tool seems to be very useful during development! But developers can't determine it because there is currently no example yaml, or etc. (well, I did read code, so I know these tools feature :P)

  • Support ARRAY types

    Support ARRAY types

    splanter seems to support all Cloud Spanner table column types except ARRAY types. Ideally, ARRAY types should be supported.

    Schama

    CREATE TABLE AllTypes (
                         ID STRING(MAX) NOT NULL,
                         BoolValue BOOL,
                         Int64Value INT64,
                         Float64Value FLOAT64,
                         TimestampValue TIMESTAMP,
                         DateValue DATE,
                         StringValue STRING(MAX),
                         BytesValue BYTES(MAX),
                         NumericValue NUMERIC,
                         JSONValue JSON,
                         StringArray ARRAY<STRING(MAX)>,
    ) PRIMARY KEY(ID);
    

    YAML

    ---
    # Values are need to be encoded as documented.
    # https://cloud.google.com/spanner/docs/reference/rpc/google.spanner.v1#google.spanner.v1.TypeCode
    - ID: "All_Type_Values"
      BoolValue: true
      BytesValue: "aG9nZQ==" # base64("hoge")
      DateValue: "2022-04-01"
      Float64Value: 3.14159
      Int64Value: 42
      JSONValue: '{"test": 1}'
      NumericValue: "-12345678901234567890123456789.123456789"
      StringValue: "FooBar"
      TimestampValue: "2022-04-01T00:00:00Z"
      # failed to load data to spanner tables: failed to insert records: spanner: code = "InvalidArgument", desc = "client doesn't support type []interface {}"exit status 1
      # StringArray:
      #   - "Foo"
      #   - "Bar"
    

    In this case, it seems to need []interface{}-to-[]string conversion(using INFORMATION_SCHEMA or use reflection?). ARRAY<INT64>, ARRAY<TIMESTAMP>, etc are also should be supported

Fast, realtime regex-extraction, and aggregation into common formats such as histograms, numerical summaries, tables, and more!
Fast, realtime regex-extraction, and aggregation into common formats such as histograms, numerical summaries, tables, and more!

rare A file scanner/regex extractor and realtime summarizor. Supports various CLI-based graphing and metric formats (histogram, table, etc). Features

Dec 29, 2022
Utility CLI to convert Spring Boot Yaml configuration into external configuration

boot-config-export Utility CLI to convert Spring Boot Yaml configuration into external configuration (as environment variables). The variables are tra

Nov 17, 2021
CLI for SendGrid, which helps in managing SSO users, can install and update users from yaml config

Sendgrid API This script is needed to add new users to SendGrid as SSO teammates. Previously, all users were manually added and manually migrating the

Jul 20, 2022
GC2 is a Command and Control application that allows an attacker to execute commands on the target machine using Google Sheet and exfiltrate data using Google Drive.
GC2 is a Command and Control application that allows an attacker to execute commands on the target machine using Google Sheet and exfiltrate data using Google Drive.

GC2 GC2 (Google Command and Control) is a Command and Control application that allows an attacker to execute commands on the target machine using Goog

Dec 13, 2022
Nebula Diagnosis CLI Tool is an information diagnosis cli tool for the nebula service and the node to which the service belongs.

Nebula Diagnosis CLI Tool is an information diagnosis cli tool for the nebula service and the node to which the service belongs.

Jan 12, 2022
✏️ CLI tool to split a file into smaller sub-files

filesplit CLI tool to split a file into smaller sub-files Build $ go build Usage filesplit [mode] [-F, --file] [-N, --number] Examples # Split foo.txt

Apr 20, 2022
Utilities to prettify console output of tables, lists, progress-bars, text, etc.
Utilities to prettify console output of tables, lists, progress-bars, text, etc.

go-pretty Utilities to prettify console output of tables, lists, progress-bars, text, etc. Table Pretty-print tables into ASCII/Unicode strings.

Dec 29, 2022
Rclone ("rsync for cloud storage") is a command line program to sync files and directories to and from different cloud storage providers.
Rclone (

Rclone ("rsync for cloud storage") is a command line program to sync files and directories to and from different cloud storage providers.

Jan 5, 2023
Rclone ("rsync for cloud storage") is a command-line program to sync files and directories to and from different cloud storage providers.
Rclone (

Website | Documentation | Download | Contributing | Changelog | Installation | Forum Rclone Rclone ("rsync for cloud storage") is a command-line progr

Nov 5, 2021
Command line tool for Google Cloud Datastore, written in Go
Command line tool for Google Cloud Datastore, written in Go

dsio dsio is a command line tool for Google Cloud Datastore. This tool is under development. Please use in your own risk. Features Bulk upsert entitie

Feb 8, 2022