grim/convey
Clone
Summary
Browse
Changes
Graph
Add back the old --memory flag
2021-12-22, Gary Kramlich
aa8a9d2b2ae2
Add back the old --memory flag
// Convey
// Copyright 2016-2018 Gary Kramlich <grim@reaperworld.com>
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
package
main
import
(
"fmt"
"os"
"runtime/debug"
"github.com/alecthomas/kong"
"keep.imfreedom.org/grim/convey/consts"
"keep.imfreedom.org/grim/convey/globals"
"keep.imfreedom.org/grim/convey/runner"
)
type
VersionCmd
struct
{}
func
(
c
*
VersionCmd
)
Run
(
g
*
globals
.
Globals
)
error
{
fmt
.
Printf
(
"convey %s\n"
,
consts
.
Version
)
if
g
.
Verbose
{
fmt
.
Printf
(
"additional information...\n"
)
}
return
nil
}
var
cli
struct
{
globals
.
Globals
Run
runner
.
RunnerCmd
`kong:"cmd,help='Run plans'"`
Version
VersionCmd
`kong:"cmd,help='Show the version and exit'"`
}
func
gomain
()
int
{
ctx
:=
kong
.
Parse
(
&
cli
,
kong
.
Name
(
"convey"
),
kong
.
Description
(
"Convey is a container pipeline runner."
),
kong
.
UsageOnError
(),
kong
.
ConfigureHelp
(
kong
.
HelpOptions
{
Compact
:
true
,
Summary
:
true
,
}),
)
err
:=
ctx
.
Run
(
&
cli
.
Globals
)
if
err
!=
nil
{
fmt
.
Fprintf
(
os
.
Stderr
,
"error: %s\n"
,
err
)
return
1
}
return
0
}
func
main
()
{
exitCode
:=
0
defer
func
()
{
if
r
:=
recover
();
r
!=
nil
{
fmt
.
Printf
(
"panic: %s\n%s"
,
r
,
debug
.
Stack
())
}
os
.
Exit
(
exitCode
)
}()
exitCode
=
gomain
()
}