2016-10-05 04:20:25 -04:00
|
|
|
// Copyright 2016 The Hugo Authors. All rights reserved.
|
|
|
|
//
|
|
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
// you may not use this file except in compliance with the License.
|
|
|
|
// You may obtain a copy of the License at
|
|
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
//
|
|
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
// See the License for the specific language governing permissions and
|
|
|
|
// limitations under the License.
|
|
|
|
|
|
|
|
package commands
|
|
|
|
|
|
|
|
import (
|
|
|
|
"runtime"
|
|
|
|
|
2021-04-09 02:07:22 -04:00
|
|
|
"github.com/gohugoio/hugo/common/hugo"
|
|
|
|
|
2016-10-05 04:20:25 -04:00
|
|
|
"github.com/spf13/cobra"
|
2016-11-22 12:47:20 -05:00
|
|
|
jww "github.com/spf13/jwalterweatherman"
|
2016-10-05 04:20:25 -04:00
|
|
|
)
|
|
|
|
|
2018-04-09 13:36:10 -04:00
|
|
|
var _ cmder = (*envCmd)(nil)
|
|
|
|
|
|
|
|
type envCmd struct {
|
2018-04-10 03:19:26 -04:00
|
|
|
*baseCmd
|
2018-04-09 13:36:10 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
func newEnvCmd() *envCmd {
|
2020-12-02 07:23:25 -05:00
|
|
|
return &envCmd{
|
|
|
|
baseCmd: newBaseCmd(&cobra.Command{
|
|
|
|
Use: "env",
|
|
|
|
Short: "Print Hugo version and environment info",
|
2021-04-09 02:07:22 -04:00
|
|
|
Long: `Print Hugo version and environment info. This is useful in Hugo bug reports.
|
|
|
|
|
|
|
|
If you add the -v flag, you will get a full dependency list.
|
|
|
|
`,
|
2020-12-02 07:23:25 -05:00
|
|
|
RunE: func(cmd *cobra.Command, args []string) error {
|
|
|
|
printHugoVersion()
|
|
|
|
jww.FEEDBACK.Printf("GOOS=%q\n", runtime.GOOS)
|
|
|
|
jww.FEEDBACK.Printf("GOARCH=%q\n", runtime.GOARCH)
|
|
|
|
jww.FEEDBACK.Printf("GOVERSION=%q\n", runtime.Version())
|
2018-04-09 13:36:10 -04:00
|
|
|
|
2021-04-09 02:07:22 -04:00
|
|
|
isVerbose, _ := cmd.Flags().GetBool("verbose")
|
|
|
|
|
|
|
|
if isVerbose {
|
|
|
|
deps := hugo.GetDependencyList()
|
|
|
|
for _, dep := range deps {
|
|
|
|
jww.FEEDBACK.Printf("%s\n", dep)
|
|
|
|
}
|
2022-12-06 06:33:25 -05:00
|
|
|
} else {
|
|
|
|
// These are also included in the GetDependencyList above;
|
|
|
|
// always print these as these are most likely the most useful to know about.
|
|
|
|
deps := hugo.GetDependencyListNonGo()
|
|
|
|
for _, dep := range deps {
|
|
|
|
jww.FEEDBACK.Printf("%s\n", dep)
|
|
|
|
}
|
|
|
|
|
2021-04-09 02:07:22 -04:00
|
|
|
}
|
|
|
|
|
2020-12-02 07:23:25 -05:00
|
|
|
return nil
|
|
|
|
},
|
|
|
|
}),
|
2018-04-09 13:36:10 -04:00
|
|
|
}
|
2021-04-09 02:07:22 -04:00
|
|
|
|
2016-10-05 04:20:25 -04:00
|
|
|
}
|