func main() { topDir := "snappy-asserts-toolbelt-db" bs, err := asserts.OpenFSBackstore(topDir) if err != nil { fmt.Println(err) os.Exit(1) } keypairMgr, err := asserts.OpenFSKeypairManager(topDir) if err != nil { fmt.Println(err) os.Exit(1) } cfg := &asserts.DatabaseConfig{ Backstore: bs, KeypairManager: keypairMgr, } db, err = asserts.OpenDatabase(cfg) if err != nil { fmt.Println(err) os.Exit(1) } parser.AddCommand("generate-key", "Generate key pair", "Generate key pair", &generateKey{}) parser.AddCommand("account-key", "Make an account-key assertion", "Make an account-key assertion", &accountKey{}) parser.AddCommand("snap-build", "Make a snap-build assertion", "Make a snap-build assertion", &snapBuild{}) if _, err := parser.Parse(); err != nil { os.Exit(1) } }
func (fsbss *fsKeypairMgrSuite) TestOpenWorldWritableFail(c *C) { topDir := filepath.Join(c.MkDir(), "asserts-db") // make it world-writable oldUmask := syscall.Umask(0) os.MkdirAll(filepath.Join(topDir, "private-keys-v0"), 0777) syscall.Umask(oldUmask) bs, err := asserts.OpenFSKeypairManager(topDir) c.Assert(err, ErrorMatches, "assert storage root unexpectedly world-writable: .*") c.Check(bs, IsNil) }
func (dbs *databaseSuite) SetUpTest(c *C) { dbs.topDir = filepath.Join(c.MkDir(), "asserts-db") fsKeypairMgr, err := asserts.OpenFSKeypairManager(dbs.topDir) c.Assert(err, IsNil) cfg := &asserts.DatabaseConfig{ KeypairManager: fsKeypairMgr, } db, err := asserts.OpenDatabase(cfg) c.Assert(err, IsNil) dbs.db = db }
func (fsbss *fsKeypairMgrSuite) TestOpenOK(c *C) { // ensure umask is clean when creating the DB dir oldUmask := syscall.Umask(0) defer syscall.Umask(oldUmask) topDir := filepath.Join(c.MkDir(), "asserts-db") err := os.MkdirAll(topDir, 0775) c.Assert(err, IsNil) bs, err := asserts.OpenFSKeypairManager(topDir) c.Check(err, IsNil) c.Check(bs, NotNil) info, err := os.Stat(filepath.Join(topDir, "private-keys-v0")) c.Assert(err, IsNil) c.Assert(info.IsDir(), Equals, true) c.Check(info.Mode().Perm(), Equals, os.FileMode(0775)) }