Giter Club home page Giter Club logo

turbulence's Introduction

Turbulence

Tools to help you connect to Google Cloud pods.

GitHub CI

Rationale

You can point you web browser to https://console.cloud.google.com and click your way to your cloud-deployed servers. You've probably done that before you've contrived the arguably particular commands (providing you installed Python, the Google Cloud SDK and kubectl on your own computer).

If you wanted something simpler than that, just something to get you to the command prompt you're otherwise used to, then this may help.

Usage

Prerequisites
  • Docker & Docker Compose
Invocation
make

This will:

  1. download and install the Google Cloud SDK into a Docker container, so you need not install it
  2. build the application container, so you don't need Ruby or a local installation
  3. authenticate with Google Cloud, so you can access your GCloud stuff
  4. show your GCloud projects, so you can pick the one you want
  5. show the K8S clusters in that project, so you can pick the one you want
  6. show the K8S namespaces in that cluster, so you can pick the one you want
  7. show the K8S pods in that cluster, so you can pick the one you want
  8. show the K8S containers in that pod, so you can pick the one you want
  9. connect to your container, using bash, so you can do what you wanted to do.

Information entered at each stage will be stored for the next time, up to the pods, though you can start afresh too.

Architecture

Architecture.png

Clean-Up
make clean

This will:

  1. stop any currently-running instances
  2. remove the instances
  3. remove cached data, e.g. Google auth tokens, last project used

Changes to the Google APIs may require the Google SDK image to be updated. This can be achieved by:

make vacuum

This will:

  1. all steps in make clean
  2. remove the Google SDK image.

The make command will then download the latest Google SDK image.

turbulence's People

Contributors

dependabot[bot] avatar geoffyoungs avatar seawolf avatar

Watchers

 avatar

turbulence's Issues

"Google Cloud CLI changing headless sign-in to the new security flow"

The authentication with Google Cloud may need updating, according this e-mail received from the Google Cloud CLI team:

Hello Ben,

We are writing to let you know that we’re changing an authentication flow you might be using, in order to enhance security. This change requires you to take action by March 15, 2022, to ensure your app continues to work smoothly.

What do I need to know?

You will be impacted by this update if you are using the Out of band OAuth 2.0 flow for gCloud in an environment that doesn’t have a web browser, or if you are using the --no-launch-browser flag.

You can be potentially exposed to remote phishing attacks when you use another computer’s web browser to log in to your Google account and copy the token credentials from that computer’s web browser to reuse in the gCloud CLI running on another machine.

What do I need to do?

To continue using the Out of band OAuth 2.0 flow, you must install gCloud CLI on the local computer (i.e., the one that has a web browser) to generate the credential token for use on the remote Gcloud machine that has no web browser.

Replace your flags ASAP for your own protection by applying any of the actions described in the table below before April 26, 2022 depending on your current flags’ state.

  • If you’re using the --no-launch-browser flag, replace it with the new --no-browser flag.
  • If you are not passing any flags when authenticating from a workstation that doesn’t have access to a web browser, add the --no-browser flag

Please consider the following milestones for this change:

  • Starting with version 377.00 (scheduled for release on March 15, 2022), the new flow will become the default one if your workstation doesn’t have access to a web browser. However, you will be able to keep using the old flow by explicitly passing the --no-launch-browser flag.
  • Starting with version 383.00 (scheduled for release on April 26, 2022), support for the old flow will be removed from the gCloud CLI.
  • In addition, after April 26, 2022, attempts to authenticate using the old flow, including from older versions of the gCloud CLI, will result in an error.

`rubocop-rspec` gem installed but not activated

Background

The rubocop-rspec gem is included in the project to provide RSpec-related style guidance:
https://github.com/seawolf/turbulence/blob/main/Gemfile#L13

Problem

The gem is not doing anything, as it is not included in the Rubocop configuration:
https://github.com/seawolf/turbulence/blob/main/.rubocop.yml

Actions Needed

  • include the gem in the Rubocop configuration
  • customise cops for personal preference
  • auto-correct the codebase
  • create a TODO list of all remaining violations
  • remove any remaining violations one-by-one and address them

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.