mirror of https://github.com/portainer/portainer
feat(api): bind extensions stdout and stderr to current process (#3375)
parent
b8be795505
commit
1f90a091a8
|
@ -5,6 +5,7 @@ import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"errors"
|
"errors"
|
||||||
"log"
|
"log"
|
||||||
|
"os"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
"path"
|
"path"
|
||||||
"runtime"
|
"runtime"
|
||||||
|
@ -195,7 +196,7 @@ func validateLicense(binaryPath, licenseKey string) ([]string, error) {
|
||||||
err := licenseCheckProcess.Run()
|
err := licenseCheckProcess.Run()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Printf("[DEBUG] [exec,extension] [message: unable to run extension process] [err: %s]", err)
|
log.Printf("[DEBUG] [exec,extension] [message: unable to run extension process] [err: %s]", err)
|
||||||
return nil, errors.New("Invalid extension license key")
|
return nil, errors.New("invalid extension license key")
|
||||||
}
|
}
|
||||||
|
|
||||||
output := string(cmdOutput.Bytes())
|
output := string(cmdOutput.Bytes())
|
||||||
|
@ -205,6 +206,9 @@ func validateLicense(binaryPath, licenseKey string) ([]string, error) {
|
||||||
|
|
||||||
func (manager *ExtensionManager) startExtensionProcess(extension *portainer.Extension, binaryPath string) error {
|
func (manager *ExtensionManager) startExtensionProcess(extension *portainer.Extension, binaryPath string) error {
|
||||||
extensionProcess := exec.Command(binaryPath, "-license", extension.License.LicenseKey)
|
extensionProcess := exec.Command(binaryPath, "-license", extension.License.LicenseKey)
|
||||||
|
extensionProcess.Stdout = os.Stdout
|
||||||
|
extensionProcess.Stderr = os.Stderr
|
||||||
|
|
||||||
err := extensionProcess.Start()
|
err := extensionProcess.Start()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|
Loading…
Reference in New Issue