X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/41305b5ac71cc9a306dc654c42c11ffcc4258a47..879bde382ebf26aa593869cfff22cc7e85be6bb0:/cmd/arvados-package/cmd.go diff --git a/cmd/arvados-package/cmd.go b/cmd/arvados-package/cmd.go index 6cf3ba3c0a..54f0809d64 100644 --- a/cmd/arvados-package/cmd.go +++ b/cmd/arvados-package/cmd.go @@ -64,11 +64,16 @@ type opts struct { RebuildImage bool SourceDir string TargetOS string + Maintainer string + Vendor string } func parseFlags(args []string) (opts, error) { opts := opts{ - TargetOS: "debian:10", + SourceDir: ".", + TargetOS: "debian:10", + Maintainer: "Arvados Package Maintainers ", + Vendor: "The Arvados Project", } flags := flag.NewFlagSet("", flag.ContinueOnError) flags.StringVar(&opts.PackageVersion, "package-version", opts.PackageVersion, "package version to build/test, like \"1.2.3\"") @@ -76,6 +81,8 @@ func parseFlags(args []string) (opts, error) { flags.StringVar(&opts.PackageDir, "package-dir", opts.PackageDir, "destination directory for new package (default is cwd)") flags.StringVar(&opts.PackageChown, "package-chown", opts.PackageChown, "desired uid:gid for new package (default is current user:group)") flags.StringVar(&opts.TargetOS, "target-os", opts.TargetOS, "target operating system vendor:version") + flags.StringVar(&opts.Maintainer, "package-maintainer", opts.Maintainer, "maintainer to be listed in package metadata") + flags.StringVar(&opts.Vendor, "package-vendor", opts.Vendor, "vendor to be listed in package metadata") flags.BoolVar(&opts.RebuildImage, "rebuild-image", opts.RebuildImage, "rebuild docker image(s) instead of using existing") flags.Usage = func() { fmt.Fprint(flags.Output(), `Usage: arvados-package [options] @@ -104,6 +111,11 @@ Automation/integration notes: image, and be prepared to rebuild that VM image when package-building slows down (this will happen when new dependencies are introduced). + The "build" subcommand, if successful, also runs + dpkg-scanpackages to create/replace Packages.gz in the package + dir. This enables the "testinstall" subcommand to list the + package dir as a source in /etc/apt/sources.*. + Options: `) flags.PrintDefaults() @@ -123,5 +135,9 @@ Options: opts.SourceDir = d } opts.PackageDir = filepath.Clean(opts.PackageDir) + opts.SourceDir, err = filepath.Abs(opts.SourceDir) + if err != nil { + return opts, err + } return opts, nil }