feat: use naeel/go-builder-fast:v1 with prebuilt stdlib, deploy v0.8.13
This commit is contained in:
@@ -46,7 +46,7 @@ spec:
|
|||||||
serviceAccountName: fission-console
|
serviceAccountName: fission-console
|
||||||
containers:
|
containers:
|
||||||
- name: console
|
- name: console
|
||||||
image: naeel/fission-console:v0.8.12
|
image: naeel/fission-console:v0.8.13
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 8090
|
- containerPort: 8090
|
||||||
env:
|
env:
|
||||||
|
|||||||
+1
-1
@@ -122,7 +122,7 @@ type langEnvDef struct {
|
|||||||
var langEnvMap = map[string]langEnvDef{
|
var langEnvMap = map[string]langEnvDef{
|
||||||
"python": {Image: "ghcr.io/fission/python-env"},
|
"python": {Image: "ghcr.io/fission/python-env"},
|
||||||
"nodejs": {Image: "ghcr.io/fission/node-env"},
|
"nodejs": {Image: "ghcr.io/fission/node-env"},
|
||||||
"go": {Image: "ghcr.io/fission/go-env", BuilderImage: "ghcr.io/fission/go-builder"},
|
"go": {Image: "ghcr.io/fission/go-env", BuilderImage: "naeel/go-builder-fast:v1"},
|
||||||
"php": {Image: "ghcr.io/fission/php-env"},
|
"php": {Image: "ghcr.io/fission/php-env"},
|
||||||
"ruby": {Image: "ghcr.io/fission/ruby-env"},
|
"ruby": {Image: "ghcr.io/fission/ruby-env"},
|
||||||
"perl": {Image: "ghcr.io/fission/perl-env", Version: 1},
|
"perl": {Image: "ghcr.io/fission/perl-env", Version: 1},
|
||||||
|
|||||||
+10
-3
@@ -10,9 +10,16 @@ WORKDIR ${GOPATH}
|
|||||||
|
|
||||||
COPY --from=fission-builder /builder /builder
|
COPY --from=fission-builder /builder /builder
|
||||||
|
|
||||||
# Prebuild stdlib для -buildmode=plugin → бьём кэш в образе
|
# Prebuild stdlib для -buildmode=plugin через dummy plugin.
|
||||||
# После этого go build -buildmode=plugin НЕ БУДЕТ перекомпилировать stdlib
|
# Go компилирует всю stdlib с plugin-флагами и кладёт в /root/.cache/go-build.
|
||||||
RUN go install -buildmode=plugin std
|
# Следующие сборки найдут кэш и пропустят stdlib → ~10-30 сек вместо 4 мин.
|
||||||
|
RUN mkdir -p /tmp/prebuild && \
|
||||||
|
printf 'package main\n\nimport (\n\t"fmt"\n\t"net/http"\n)\n\nfunc Handler(w http.ResponseWriter, r *http.Request) {\n\tfmt.Fprintf(w, "ok")\n}\n' \
|
||||||
|
> /tmp/prebuild/main.go && \
|
||||||
|
cd /tmp/prebuild && \
|
||||||
|
go mod init prebuild && \
|
||||||
|
go build -buildmode=plugin -o /tmp/prebuild.so . && \
|
||||||
|
rm -rf /tmp/prebuild /tmp/prebuild.so
|
||||||
|
|
||||||
ADD build.sh /usr/local/bin/build
|
ADD build.sh /usr/local/bin/build
|
||||||
RUN chmod +x /usr/local/bin/build
|
RUN chmod +x /usr/local/bin/build
|
||||||
|
|||||||
Reference in New Issue
Block a user