lakitu: Update google-guest-agent to 20210707.00

This upgrade broke the behavior of creating and publishing SSH hostkeys
on COS, so I needed to include a patch to fix this. I will try to
upstream the patch.

BUG=b/186855818
TEST=emerge-lakitu google-guest-agent; presubmit
RELEASE_NOTE=Updated google-guest-agent to v20210707.00

Change-Id: I9f9ce2c2f996b058078cb3601c7e420ec63d101b
Reviewed-on: https://cos-review.googlesource.com/c/cos/overlays/board-overlays/+/19803
Reviewed-by: Roy Yang <royyang@google.com>
Tested-by: Cusky Presubmit Bot <presubmit@cos-infra-prod.iam.gserviceaccount.com>
diff --git a/project-lakitu/app-admin/google-guest-agent/Manifest b/project-lakitu/app-admin/google-guest-agent/Manifest
index e286c27..a7bffe1 100644
--- a/project-lakitu/app-admin/google-guest-agent/Manifest
+++ b/project-lakitu/app-admin/google-guest-agent/Manifest
@@ -248,7 +248,7 @@
 DIST golang.org%2Fx%2Fxerrors%2F@v%2Fv0.0.0-20191011141410-1b5146add898.mod 37 BLAKE2B 7449be81e1998a6439070de1a0ddf5bfd1e4971c90c2e358590a9c1c41128bfc1daa42a9bbc3709506df2442ec8420e6354343a095c837be46335c180083f28a SHA512 659d18a7a3a1be45ff6dc9e7475276b82ee7f11c47d39b0c237d7f872836a1dbdfff0902f21d6cd8093663997865da92e3e5a4acf1ad6129f972dc5e667b4f05
 DIST golang.org%2Fx%2Fxerrors%2F@v%2Fv0.0.0-20191204190536-9bdfabe68543.mod 37 BLAKE2B 7449be81e1998a6439070de1a0ddf5bfd1e4971c90c2e358590a9c1c41128bfc1daa42a9bbc3709506df2442ec8420e6354343a095c837be46335c180083f28a SHA512 659d18a7a3a1be45ff6dc9e7475276b82ee7f11c47d39b0c237d7f872836a1dbdfff0902f21d6cd8093663997865da92e3e5a4acf1ad6129f972dc5e667b4f05
 DIST golang.org%2Fx%2Fxerrors%2F@v%2Fv0.0.0-20191204190536-9bdfabe68543.zip 22282 BLAKE2B 68df6b35d9043f23df13432b80074544f46833467294955ae5706713055d0cc9ababda892853c14e99c80a3571fd4a807a019a098fdd2ca695ba90c577ead5c4 SHA512 c72b8b73f89624889a2874c1b2445cb82f0e545fccf6a7761a278f3f659eb19f5f1c8585641b8f89f2bcfc3817ad2c0e267751cfeeab949e287e43af5df57e28
-DIST google-guest-agent-20210408.00.tar.gz 82520 BLAKE2B 1a65435485144b7d2b2d3e02be9806aefb93eb82c3acc4e98b6a02e1818cf252d402c78a605e10b5c66d6321383e634789b6838a6f950d5997c5e2936fb2be1e SHA512 d72714288c36de833308aae94e3a5c4365c02e5f30dd69f34299b757b69795350f16cdc0028d9104c93086fb49bcb0c5be70e8bd4d4068f7de3c1ab3c93265d8
+DIST google-guest-agent-20210707.00.tar.gz 82391 BLAKE2B 52e9312d2236e07ddc83a09b9baed3a0b3ecd6e202c2af81869347a0bf3a1c5ff55b0ad93c209a96f26d483f238e6bd0bb3ae7868d167f4d58af84cb500abcce SHA512 fe24bcfb065ed09ba0b9887e335f70c53db22fc0884bf2dbf35c77f62c3aaf74ccecf0fbe2db3904595acb8eaa8479ade6bac4981fbd2716edb09d779f6e0974
 DIST google.golang.org%2Fapi%2F@v%2Fv0.11.0.mod 851 BLAKE2B 16f0842a8e0082a8532a7c8f5cf5092cd196a90197b3e05c6fe0275e10390e0b97477f60c07d26b422d0da9289fe3c8f2d8fb8fe2fec63af9e005adc26921724 SHA512 bd693c28b65c1b369f89a6b1926a127c91df98feb137ab5595bf141c1a67e3adcf25f79b4cbf3e4c44755d45b9f4876dacafbf18afa1e8c09fd89a8f9d0e9330
 DIST google.golang.org%2Fapi%2F@v%2Fv0.11.0.zip 13287452 BLAKE2B 2c3d5442cc8afac2e546471479a1f795baa03f210504704404bd60da8ab6a0f09c0c67501b56ba03672405592c3316955f69fa60596d6cb2f0e8a3f46a61e261 SHA512 a42f96f0dc53fe170cfa39049400ecfa2fb7d989b6a1c29ac0b5e489a9f3a2525c776b9a27a175bc49bb1d5bfe9182fcf785583818aa4ec73253dc34b4a89340
 DIST google.golang.org%2Fapi%2F@v%2Fv0.13.0.mod 851 BLAKE2B 16f0842a8e0082a8532a7c8f5cf5092cd196a90197b3e05c6fe0275e10390e0b97477f60c07d26b422d0da9289fe3c8f2d8fb8fe2fec63af9e005adc26921724 SHA512 bd693c28b65c1b369f89a6b1926a127c91df98feb137ab5595bf141c1a67e3adcf25f79b4cbf3e4c44755d45b9f4876dacafbf18afa1e8c09fd89a8f9d0e9330
diff --git a/project-lakitu/app-admin/google-guest-agent/files/0001-Make-this-part-of-systemd-networkd-service-for-COS.patch b/project-lakitu/app-admin/google-guest-agent/files/0001-Make-this-part-of-systemd-networkd-service-for-COS.patch
deleted file mode 100644
index 5fe3711..0000000
--- a/project-lakitu/app-admin/google-guest-agent/files/0001-Make-this-part-of-systemd-networkd-service-for-COS.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 0d140a51a66b003803f46277aafa3cab629349f1 Mon Sep 17 00:00:00 2001
-From: Roy Yang <royyang@google.com>
-Date: Tue, 9 Mar 2021 12:27:50 -0800
-Subject: [PATCH] Make this part of systemd-networkd service for COS
-
-BUG=b:
-TEST=None
-RELEASE_NOTE=None
----
- google-guest-agent.service | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/google-guest-agent.service b/google-guest-agent.service
-index 05fbf12..fd027cc 100644
---- a/google-guest-agent.service
-+++ b/google-guest-agent.service
-@@ -4,7 +4,7 @@ Before=sshd.service
- After=network-online.target rsyslog.service network.service networking.service
- After=NetworkManager.service
- Wants=network-online.target
--PartOf=network.service networking.service NetworkManager.service
-+PartOf=systemd-networkd.service network.service networking.service NetworkManager.service
- 
- [Service]
- Type=simple
--- 
-2.30.1.766.gb4fecdf3b7-goog
-
diff --git a/project-lakitu/app-admin/google-guest-agent/files/20210707-create-hostkey-and-instanceID-dirs.patch b/project-lakitu/app-admin/google-guest-agent/files/20210707-create-hostkey-and-instanceID-dirs.patch
new file mode 100644
index 0000000..c846c6d
--- /dev/null
+++ b/project-lakitu/app-admin/google-guest-agent/files/20210707-create-hostkey-and-instanceID-dirs.patch
@@ -0,0 +1,30 @@
+diff --git a/google_guest_agent/instance_setup.go b/google_guest_agent/instance_setup.go
+index 6288c18..70391ac 100644
+--- a/google_guest_agent/instance_setup.go
++++ b/google_guest_agent/instance_setup.go
+@@ -156,7 +156,12 @@ func agentInit(ctx context.Context) {
+ 		// Check if instance ID has changed, and if so, consider this
+ 		// the first boot of the instance.
+ 		// TODO Also do this for windows. liamh@13-11-2019
+-		instanceIDFile := config.Section("Instance").Key("instance_id_dir").MustString("/etc") + "/google_instance_id"
++		instanceIDDir := config.Section("Instance").Key("instance_id_dir").MustString("/etc")
++		// Create the instance ID directory, if it doesn't exist.
++		if err := os.MkdirAll(instanceIDDir, 0755); err != nil {
++			logger.Warningf("Failed to create instance ID directory: %v", err)
++		}
++		instanceIDFile := instanceIDDir + "/google_instance_id"
+ 		instanceID, err := ioutil.ReadFile(instanceIDFile)
+ 		if err != nil && !os.IsNotExist(err) {
+ 			logger.Warningf("Not running first-boot actions, error reading instance ID: %v", err)
+@@ -197,6 +202,11 @@ func agentInit(ctx context.Context) {
+ 
+ func generateSSHKeys() error {
+ 	hostKeyDir := config.Section("InstanceSetup").Key("host_key_dir").MustString("/etc/ssh")
++	// Create the host key directory, if it doesn't exist.
++	if err := os.MkdirAll(hostKeyDir, 0755); err != nil {
++		logger.Warningf("Failed to create host key directory: %v", err)
++	}
++
+ 	dir, err := os.Open(hostKeyDir)
+ 	if err != nil {
+ 		return err
diff --git a/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210408.00-r1.ebuild b/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210408.00-r1.ebuild
deleted file mode 120000
index 3e3948f..0000000
--- a/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210408.00-r1.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-google-guest-agent-20210408.00.ebuild
\ No newline at end of file
diff --git a/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210707.00-r1.ebuild b/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210707.00-r1.ebuild
new file mode 120000
index 0000000..d826411
--- /dev/null
+++ b/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210707.00-r1.ebuild
@@ -0,0 +1 @@
+google-guest-agent-20210707.00.ebuild
\ No newline at end of file
diff --git a/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210408.00.ebuild b/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210707.00.ebuild
similarity index 99%
rename from project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210408.00.ebuild
rename to project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210707.00.ebuild
index 21a5578..73c43ba 100644
--- a/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210408.00.ebuild
+++ b/project-lakitu/app-admin/google-guest-agent/google-guest-agent-20210707.00.ebuild
@@ -343,6 +343,7 @@
 
 PATCHES=(
 	"${FILESDIR}/20201102-homedir-gid.patch"
+	"${FILESDIR}/20210707-create-hostkey-and-instanceID-dirs.patch"
 )
 
 src_compile() {