Skip to content

Commit

Permalink
Update cos library to parse new version of packages file (#300)
Browse files Browse the repository at this point in the history
  • Loading branch information
adjackura authored Mar 31, 2021
1 parent 1c34f55 commit 67d528f
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 33 deletions.
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ require (
cloud.google.com/go v0.77.0
cloud.google.com/go/logging v1.1.2 // indirect
cloud.google.com/go/storage v1.12.0
cos.googlesource.com/cos/tools.git v0.0.0-20201007223835-69bef9e73b80
cos.googlesource.com/cos/tools.git v0.0.0-20210329212435-a349a79f950d
github.com/GoogleCloudPlatform/guest-logging-go v0.0.0-20200113214433-6cbb518174d4
github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d
github.com/go-ole/go-ole v1.2.4
Expand Down
4 changes: 4 additions & 0 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -51,13 +51,16 @@ cloud.google.com/go/storage v1.12.0 h1:4y3gHptW1EHVtcPAVE0eBBlFuGqEejTTG3KdIE0lU
cloud.google.com/go/storage v1.12.0/go.mod h1:fFLk2dp2oAhDz8QFKwqrjdJvxSp/W2g7nillojlL5Ho=
cos.googlesource.com/cos/tools.git v0.0.0-20201007223835-69bef9e73b80 h1:mgjd6oHmTodFOwSQTaMhmyFEKjWwUEzhLHS0wcdKNTY=
cos.googlesource.com/cos/tools.git v0.0.0-20201007223835-69bef9e73b80/go.mod h1:Pfpj07EYThBloAdKk2PFZSwilXsARB2V4tSF1gisIh4=
cos.googlesource.com/cos/tools.git v0.0.0-20210329212435-a349a79f950d h1:qj1jlxRkQblujpwNPW4BOEWmGkrWP+Y5ADIoSKBxO5s=
cos.googlesource.com/cos/tools.git v0.0.0-20210329212435-a349a79f950d/go.mod h1:1TJafpZtNmYwNzCwoWQRHfBDl59dxO6l/YW88HezBuk=
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
github.com/GoogleCloudPlatform/guest-logging-go v0.0.0-20200113214433-6cbb518174d4 h1:n38UnKhQmPxZ9+PTKW38D0TJAmdiElHMlTM0uT2LACg=
github.com/GoogleCloudPlatform/guest-logging-go v0.0.0-20200113214433-6cbb518174d4/go.mod h1:YWYrZjvs/qwZhDmsDnTaMXcno5Y0MYPN7rhMarLiUmI=
github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d h1:G0m3OIz70MZUWq3EgK3CesDbo8upS2Vm9/P3FtgI+Jk=
github.com/StackExchange/wmi v0.0.0-20190523213315-cbe66965904d/go.mod h1:3eOhrUMpNV+6aFIbp5/iudMxNCF27Vw2OZgy4xEx0Fg=
github.com/andygrunwald/go-gerrit v0.0.0-20201231163137-46815e48bfe0/go.mod h1:soxaYLbAFToS0OelBriItCts/mtUZOuLBkCk1Xv4ZSo=
github.com/beevik/etree v1.1.0 h1:T0xke/WvNtMoCqgzPhkX2r4rjY3GDZFi+FjpRZY2Jbs=
github.com/beevik/etree v1.1.0/go.mod h1:r8Aw8JqVegEf0w2fDnATrX9VpkMcyFeM0FhwO62wh+A=
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
Expand Down Expand Up @@ -126,6 +129,7 @@ github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.4 h1:L8R9j+yAqZuZjsqh/z+F1NCffTKKLShY6zXTItVIZ8M=
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck=
github.com/google/martian v2.1.0+incompatible h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no=
github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=
github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0=
Expand Down
4 changes: 0 additions & 4 deletions packages/cos.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ package packages

import (
"fmt"
"strconv"

"cos.googlesource.com/cos/tools.git/src/pkg/cos"
"github.com/GoogleCloudPlatform/osconfig/osinfo"
Expand Down Expand Up @@ -49,9 +48,6 @@ func parseInstalledCOSPackages(cosPkgInfo cos.PackageInfo) ([]PkgInfo, error) {
for _, pkg := range cosPkgInfo.InstalledPackages {
name := pkg.Category + "/" + pkg.Name
version := pkg.Version
if pkg.Revision != 0 {
version += "-r" + strconv.Itoa(pkg.Revision)
}
pkgs = append(pkgs, PkgInfo{Name: name, Arch: arch, Version: version})
}
return pkgs, nil
Expand Down
49 changes: 21 additions & 28 deletions packages/cos_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,9 @@ func TestParseInstalledCOSPackages(t *testing.T) {
return "x86_64", nil
}

pkg0 := cos.Package{Category: "dev-util", Name: "foo-x", Version: "1.2.3", Revision: 4}
expect0 := PkgInfo{"dev-util/foo-x", "x86_64", "1.2.3-r4"}
pkg1 := cos.Package{Category: "app-admin", Name: "bar", Version: "0.1", Revision: 0}
pkg0 := cos.Package{Category: "dev-util", Name: "foo-x", Version: "1.2.3", EbuildVersion: "someversion"}
expect0 := PkgInfo{"dev-util/foo-x", "x86_64", "1.2.3"}
pkg1 := cos.Package{Category: "app-admin", Name: "bar", Version: "0.1"}
expect1 := PkgInfo{"app-admin/bar", "x86_64", "0.1"}

pkgInfo := cos.PackageInfo{InstalledPackages: []cos.Package{pkg0, pkg1}}
Expand All @@ -63,19 +63,18 @@ func TestInstalledCOSPackages(t *testing.T) {
{
"category": "app-arch",
"name": "gzip",
"version": "1.9"
"version": "1.9",
"ebuildverison": "someotherversion"
},
{
"category": "dev-libs",
"name": "popt",
"version": "1.16",
"revision": "2"
"version": "1.16"
},
{
"category": "app-emulation",
"name": "docker-credential-helpers",
"version": "0.6.3",
"revision": "1"
"version": "0.6.3"
},
{
"category": "_not.real-category1+",
Expand All @@ -85,8 +84,7 @@ func TestInstalledCOSPackages(t *testing.T) {
{
"category": "_not.real-category1+",
"name": "_not-real_package2",
"version": "12.34.56.78",
"revision": "26"
"version": "12.34.56.78"
},
{
"category": "_not.real-category1+",
Expand All @@ -96,14 +94,12 @@ func TestInstalledCOSPackages(t *testing.T) {
{
"category": "_not.real-category1+",
"name": "_not-real_package4",
"version": "12.34.56.78_rc3",
"revision": "26"
"version": "12.34.56.78_rc3"
},
{
"category": "_not.real-category1+",
"name": "_not-real_package5",
"version": "12.34.56.78_pre2_rc3",
"revision": "26"
"version": "12.34.56.78_pre2_rc3"
},
{
"category": "_not.real-category2+",
Expand All @@ -113,8 +109,7 @@ func TestInstalledCOSPackages(t *testing.T) {
{
"category": "_not.real-category2+",
"name": "_not-real_package2",
"version": "12.34.56.78q",
"revision": "26"
"version": "12.34.56.78q"
},
{
"category": "_not.real-category2+",
Expand All @@ -124,14 +119,12 @@ func TestInstalledCOSPackages(t *testing.T) {
{
"category": "_not.real-category2+",
"name": "_not-real_package4",
"version": "12.34.56.78q_rc3",
"revision": "26"
"version": "12.34.56.78q_rc3"
},
{
"category": "_not.real-category2+",
"name": "_not-real_package5",
"version": "12.34.56.78q_pre2_rc3",
"revision": "26"
"version": "12.34.56.78q_pre2_rc3"
}
]
}`
Expand All @@ -152,18 +145,18 @@ func TestInstalledCOSPackages(t *testing.T) {

expected := []PkgInfo{
{"app-arch/gzip", "x86_64", "1.9"},
{"dev-libs/popt", "x86_64", "1.16-r2"},
{"app-emulation/docker-credential-helpers", "x86_64", "0.6.3-r1"},
{"dev-libs/popt", "x86_64", "1.16"},
{"app-emulation/docker-credential-helpers", "x86_64", "0.6.3"},
{"_not.real-category1+/_not-real_package1", "x86_64", "12.34.56.78"},
{"_not.real-category1+/_not-real_package2", "x86_64", "12.34.56.78-r26"},
{"_not.real-category1+/_not-real_package2", "x86_64", "12.34.56.78"},
{"_not.real-category1+/_not-real_package3", "x86_64", "12.34.56.78_rc3"},
{"_not.real-category1+/_not-real_package4", "x86_64", "12.34.56.78_rc3-r26"},
{"_not.real-category1+/_not-real_package5", "x86_64", "12.34.56.78_pre2_rc3-r26"},
{"_not.real-category1+/_not-real_package4", "x86_64", "12.34.56.78_rc3"},
{"_not.real-category1+/_not-real_package5", "x86_64", "12.34.56.78_pre2_rc3"},
{"_not.real-category2+/_not-real_package1", "x86_64", "12.34.56.78q"},
{"_not.real-category2+/_not-real_package2", "x86_64", "12.34.56.78q-r26"},
{"_not.real-category2+/_not-real_package2", "x86_64", "12.34.56.78q"},
{"_not.real-category2+/_not-real_package3", "x86_64", "12.34.56.78q_rc3"},
{"_not.real-category2+/_not-real_package4", "x86_64", "12.34.56.78q_rc3-r26"},
{"_not.real-category2+/_not-real_package5", "x86_64", "12.34.56.78q_pre2_rc3-r26"},
{"_not.real-category2+/_not-real_package4", "x86_64", "12.34.56.78q_rc3"},
{"_not.real-category2+/_not-real_package5", "x86_64", "12.34.56.78q_pre2_rc3"},
}

readMachineArch = func() (string, error) {
Expand Down

0 comments on commit 67d528f

Please sign in to comment.