google-github-actions / setup-gcloud

A GitHub Action for installing and configuring the gcloud CLI.
https://cloud.google.com/sdk/docs
Apache License 2.0
1.71k stars 510 forks source link

Choose 1: First class support for non-containerised deploys to Compute Engine, or fix logging agent support for Container-optimised OS #543

Closed benhutchison closed 2 years ago

benhutchison commented 2 years ago

TL;DR

I want to automatically build and deploy a long-running daemon-type service to a small Compute Engine VM.

I also want to be able to take advantage of stackdriver logging and monitoring, it's a major piece of the GCP value prop.

I would prefer to use docker but I'll build a native image if that what it takes to work.

GCP seems to be in the middle of transitioning from an older, mem-leaky stack driver log agent, that basically doesn't work on small VMs, to a hopefully more resource-efficient new Ops Agent.

But the new ops agent isnt available in Container Optimised OS, and no comms on when or why, or if it matters to them.. https://github.com/GoogleCloudPlatform/ops-agent/issues/325

This problem is severe enough for me that I'd transition to a native VM to be able to ditch the old agent, because it regularly crashes my machines. But when I look for guidance for how to build native vms from github actions, there isnt any!?

I feel like different parts of google are supporting different platforms.

Detailed design

No response

Additional information

No response

sethvargo commented 2 years ago

Hi @benhutchison

Thank you for opening an issue. This GitHub Action installs and configures the gcloud CLI tool. Did you have a question about the gcloud CLI?

benhutchison commented 2 years ago

So my issue was to highlight the mismatch between different parts of the GCP offering.

As an end user, I just want at compute platform that "Just Works" and that all parts of GCP agree to support, I have a slight preference for Docker, but I'd be willing to trade that off for stability.

bharathkkb commented 2 years ago

Thanks for the feedback @benhutchison, we will be adding example workflows to cover more use cases in the future.

For deploying the a regular VM instance you can replace the following steps with a gcloud command from https://cloud.google.com/compute/docs/instances/create-start-instance#gcloud.