Stub out pm package create
This commit is contained in:
parent
0cee922f12
commit
13ab26491b
@ -6,6 +6,7 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
|
|
||||||
"mcquay.me/pm/keyring"
|
"mcquay.me/pm/keyring"
|
||||||
|
"mcquay.me/pm/pkg"
|
||||||
)
|
)
|
||||||
|
|
||||||
const usage = `pm: simple, cross-platform system package manager
|
const usage = `pm: simple, cross-platform system package manager
|
||||||
@ -13,6 +14,7 @@ const usage = `pm: simple, cross-platform system package manager
|
|||||||
subcommands:
|
subcommands:
|
||||||
environ (env) -- print environment information
|
environ (env) -- print environment information
|
||||||
keyring (key) -- interact with pm's OpenPGP keyring
|
keyring (key) -- interact with pm's OpenPGP keyring
|
||||||
|
package (pkg) -- create packages
|
||||||
`
|
`
|
||||||
|
|
||||||
const keyUsage = `pm keyring: interact with pm's OpenPGP keyring
|
const keyUsage = `pm keyring: interact with pm's OpenPGP keyring
|
||||||
@ -27,6 +29,12 @@ subcommands:
|
|||||||
verify (v) -- verify a detached signature
|
verify (v) -- verify a detached signature
|
||||||
`
|
`
|
||||||
|
|
||||||
|
const pkgUsage = `pm package: generate pm-compatible packages
|
||||||
|
|
||||||
|
subcommands:
|
||||||
|
create (c) -- create a fresh keypair
|
||||||
|
`
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
if len(os.Args) < 2 {
|
if len(os.Args) < 2 {
|
||||||
fatalf("pm: missing subcommand\n\n%v", usage)
|
fatalf("pm: missing subcommand\n\n%v", usage)
|
||||||
@ -130,6 +138,27 @@ func main() {
|
|||||||
default:
|
default:
|
||||||
fatalf("unknown keyring subcommand: %q\n\nusage: %v", sub, keyUsage)
|
fatalf("unknown keyring subcommand: %q\n\nusage: %v", sub, keyUsage)
|
||||||
}
|
}
|
||||||
|
case "package", "pkg":
|
||||||
|
if len(os.Args[1:]) < 2 {
|
||||||
|
fatalf("pm package: insufficient args\n\nusage: %v", pkgUsage)
|
||||||
|
}
|
||||||
|
sub := os.Args[2]
|
||||||
|
switch sub {
|
||||||
|
case "create", "creat", "c":
|
||||||
|
if signID == "" {
|
||||||
|
fatalf("must set PM_PGP_ID\n")
|
||||||
|
}
|
||||||
|
args := os.Args[3:]
|
||||||
|
if len(args) != 1 {
|
||||||
|
fatalf("usage: pm package create <directory>\n")
|
||||||
|
}
|
||||||
|
dir := args[0]
|
||||||
|
if err := pkg.Create(dir, signID); err != nil {
|
||||||
|
fatalf("creating package: %v\n", err)
|
||||||
|
}
|
||||||
|
default:
|
||||||
|
fatalf("unknown package subcommand: %q\n\nusage: %v", sub, pkgUsage)
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
fatalf("uknown subcommand %q\n\nusage: %v", cmd, usage)
|
fatalf("uknown subcommand %q\n\nusage: %v", cmd, usage)
|
||||||
}
|
}
|
||||||
|
8
pkg/pkg.go
Normal file
8
pkg/pkg.go
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
package pkg
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
// Create traverses the contents of dir and emits a valid pkg, signed by id
|
||||||
|
func Create(dir, id string) error {
|
||||||
|
return fmt.Errorf("creating package from %q for %q: NYI", dir, id)
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user