summaryrefslogtreecommitdiffstats
path: root/commands
diff options
context:
space:
mode:
authorEric Hagman <emhagman@gmail.com>2020-10-23 03:03:41 -0400
committerGitHub <noreply@github.com>2020-10-23 09:03:41 +0200
commitf465c5c3079261eb7fa513e2d2793851b9c52b83 (patch)
tree9d39a3601ad2563d939e6b0e53eb24553cfb5077 /commands
parent3400aff2588cbf9dd4629c05537d16b019d0fdf5 (diff)
build: Allow optional "nodeploy" tag to exclude deploy command from bin
Fixes #7826
Diffstat (limited to 'commands')
-rw-r--r--commands/deploy.go2
-rw-r--r--commands/nodeploy.go49
2 files changed, 51 insertions, 0 deletions
diff --git a/commands/deploy.go b/commands/deploy.go
index 7133f9a0e..2e1557609 100644
--- a/commands/deploy.go
+++ b/commands/deploy.go
@@ -11,6 +11,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.
+// +build !nodeploy
+
package commands
import (
diff --git a/commands/nodeploy.go b/commands/nodeploy.go
new file mode 100644
index 000000000..146a61f17
--- /dev/null
+++ b/commands/nodeploy.go
@@ -0,0 +1,49 @@
+// Copyright 2019 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.
+
+// +build nodeploy
+
+package commands
+
+import (
+ "errors"
+ "github.com/spf13/cobra"
+)
+
+var _ cmder = (*deployCmd)(nil)
+
+// deployCmd supports deploying sites to Cloud providers.
+type deployCmd struct {
+ *baseBuilderCmd
+}
+
+func (b *commandsBuilder) newDeployCmd() *deployCmd {
+ cc := &deployCmd{}
+
+ cmd := &cobra.Command{
+ Use: "deploy",
+ Short: "Deploy your site to a Cloud provider.",
+ Long: `Deploy your site to a Cloud provider.
+
+See https://gohugo.io/hosting-and-deployment/hugo-deploy/ for detailed
+documentation.
+`,
+ RunE: func(cmd *cobra.Command, args []string) error {
+ return errors.New("build without HUGO_BUILD_TAGS=nodeploy to use this command")
+ },
+ }
+
+ cc.baseBuilderCmd = b.newBuilderBasicCmd(cmd)
+
+ return cc
+}