
Security News
Node.js Drops Bug Bounty Rewards After Funding Dries Up
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.
google-cloud-sql
Advanced tools
Connect to private Google Cloud SQL instance through Cloud SQL Auth Proxy running in GKE cluster.
:toc: macro :toc-title: :toclevels: 10
= ⛅ google-cloud-sql
image:https://img.shields.io/github/package-json/v/edosrecki/google-cloud-sql-cli/master?color=blue&label=google-cloud-sql["google-cloud-sql CLI Version"] image:https://img.shields.io/github/actions/workflow/status/edosrecki/google-cloud-sql-cli/continuous-integration.yml["Build Status", link="https://github.com/edosrecki/google-cloud-sql-cli/actions"]
A CLI app which establishes a connection to a private Google Cloud SQL instance or AlloyDB instance and port-forwards it to a local machine.
Connection is established by running a Google Cloud SQL Auth Proxy pod (for Cloud SQL) or AlloyDB Auth Proxy pod (for AlloyDB) in a Google Kubernetes Engine cluster which runs in the same VPC network as the private database instance. Connection is then port-forwarded to the local machine, where a user can connect to the instance on localhost. Corresponding workload identity has to be configured in the cluster, with service account which has Cloud SQL Client role (for Cloud SQL instances) or AlloyDB Client role (for AlloyDB instances) on the given database instance. Configurations in the app can be saved for practical future usage.
The app relies on local gcloud and kubectl commands which have to be configured and authenticated with the proper Google Cloud user and GKE Kubernetes cluster.
image::screenshot.png[]
toc::[]
brew install edosrecki/tools/google-cloud-sql
=== Releases
Download a corresponding distribution from https://github.com/edosrecki/google-cloud-sql-cli/releases[Releases] and add
the executable to your PATH.
=== Build from source Build the app from source by building and packaging it manually: see Build and Package sections.
== Use === Prerequisites
gcloud auth logingcloud container clusters get-credentialsgcloud services enable sqladmin.googleapis.com --project=$PROJECT
** AlloyDB API for AlloyDB instances: gcloud services enable alloydb.googleapis.com --project=$PROJECTgoogle-cloud-sql help
google-cloud-sql configurations create
google-cloud-sql configurations run
google-cloud-sql configurations run $NAME
alias myDbProd="google-cloud-sql configurations run $NAME"
psql -h localhost -p $LOCAL_PORT -U $USER
== Migrations
=== v1 to v2
Migration from v1 to v2 is done automatically when the app is run for the first time after upgrade to version 2.0.0.
== Package === Pre-configured Package the app for Node.JS 18 on MacOS, Linux, and Windows.
=== Manual See https://www.npmjs.com/package/pkg#targets[pkg] for details.
== Deploy
To deploy a new version of google-cloud-sql app, manually run a https://github.com/edosrecki/google-cloud-sql-cli/actions/workflows/continuous-deployment.yml["Continuous Deployment"] worklow in GitHub Actions.
== Todo
FAQs
Connect to private Google Cloud SQL instance through Cloud SQL Auth Proxy running in GKE cluster.
The npm package google-cloud-sql receives a total of 2 weekly downloads. As such, google-cloud-sql popularity was classified as not popular.
We found that google-cloud-sql demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.