diff --git a/examples/go/specs/env.yaml b/examples/go/specs/env.yaml index 0b5bd87d..c5c9b140 100644 --- a/examples/go/specs/env.yaml +++ b/examples/go/specs/env.yaml @@ -7,7 +7,6 @@ spec: version: 2 builder: command: build - image: fission/go-builder:0.6.0 + image: fission/go-builder-1.12:1.5.0 runtime: - image: fission/go-env:0.6.0 - + image: fission/go-env-1.12:1.5.0 diff --git a/examples/go/specs/function-hello.yaml b/examples/go/specs/function-hello.yaml index a6da6abb..f53e92dd 100644 --- a/examples/go/specs/function-hello.yaml +++ b/examples/go/specs/function-hello.yaml @@ -31,6 +31,7 @@ spec: environment: name: go namespace: default + functionTimeout: 60 package: functionName: Handler packageref: diff --git a/pkg/fission-cli/spec.go b/pkg/fission-cli/spec.go index 8c473253..e25f5d4a 100644 --- a/pkg/fission-cli/spec.go +++ b/pkg/fission-cli/spec.go @@ -746,7 +746,7 @@ func applyPackages(fclient *client.Client, fr *spec.FissionResources, delete boo keep = true } - if keep { + if keep && existingObj.Status.BuildStatus == fv1.BuildStatusSucceeded { // nothing to do on the server metadataMap[mapKey(&o.Metadata)] = existingObj.Metadata } else { @@ -760,6 +760,12 @@ func applyPackages(fclient *client.Client, fr *spec.FissionResources, delete boo if err != nil { // log and ignore fmt.Printf("Error waiting for package '%v' build, ignoring\n", o.Metadata.Name) + pkg = &o + } + + // update status in order to rebuild the package again + if pkg.Status.BuildStatus == fv1.BuildStatusFailed { + pkg.Status.BuildStatus = fv1.BuildStatusPending } newmeta, err := fclient.PackageUpdate(pkg)