Skip to content

Commit

Permalink
feat(project): bash command
Browse files Browse the repository at this point in the history
  • Loading branch information
varrcan committed Nov 24, 2021
1 parent e800cf1 commit 0574d75
Showing 1 changed file with 54 additions and 0 deletions.
54 changes: 54 additions & 0 deletions command/bash.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package command

import (
"github.com/pterm/pterm"
"github.com/spf13/cobra"
"github.com/varrcan/dl/project"
"os"
"os/exec"
)

func init() {
rootCmd.AddCommand(bashCmd)
bashCmd.Flags().BoolVarP(&bashRoot, "root", "r", false, "Login as root")
}

var bashCmd = &cobra.Command{
Use: "bash",
Short: "Login to PHP container",
Long: `Login to PHP container as www-data user and start bash shell.`,
Run: func(cmd *cobra.Command, args []string) {
bash()
},
}

var bashRoot bool

func bash() {
project.LoadEnv()

bash, lookErr := exec.LookPath("bash")
docker, lookErr := exec.LookPath("docker")
if lookErr != nil {
pterm.FgRed.Println(lookErr)
return
}

site := project.Env.GetString("APP_NAME")
container := site + "_php"
var root string

if bashRoot == true {
root = "--user root "
}

cmdCompose := &exec.Cmd{
Path: bash,
Args: []string{bash, "-c", docker + " exec -it " + root + container + " /bin/bash"},
Stdout: os.Stdout,
Stderr: os.Stderr,
Stdin: os.Stdin,
}

_ = cmdCompose.Run()
}

0 comments on commit 0574d75

Please sign in to comment.