Commit Graph
100 Commits
Author SHA1 Message Date
Ta-Ching ChenandGitHub e8916cb66b Fix goroutines change DialContext of http.DefaultTransport in router (#1063) 2019-01-26 04:48:10 +08:00
Ta-Ching ChenandGitHub 57f1101455 Fix fluentd plugin version to prevent version incompatible problem (#1076) 2019-01-23 20:18:37 +08:00
Ta-Ching ChenandGitHub 5e154c3911 Remove/Redirect out-of-date docs to fission doc site (#1061) 2019-01-17 16:29:15 +08:00
Ta-Ching ChenandGitHub c4a02890d0 Replace router svcAddrUpdateLocks with new throttler package for code readability&reusability (#1047)
Rename svcAddrUpdateLock to Throttler and move it to the top-level directory as a package for code import.
2019-01-16 12:37:46 +08:00
Ta-Ching ChenandGitHub d040165511 Fix requests are sent to unready function pod (newdeploy) (#1005)
* Refactor specialization process
* Separate readiness and liveness probe to different routes

For newdeploy, readiness probe should check whether a fetcher specializes env container successfully or not. In this commit, fetcher returns the actual state of current specialization status instead of returning 200ok directly.
2018-12-27 16:29:31 +08:00
Ta-Ching ChenandVishal 5bd2baecef Fix cli create archive with nonexistent file (#1036)
CLI should return an error if user specifies a file that does not exist
2018-12-27 11:06:39 +05:30
Ta-Ching ChenandGitHub 835f5dc499 Fix go env panic when failed at loading plugin (#1031)
Fix go env panic when failed at loading plugin to make it easier for troubleshooting.
2018-12-27 00:14:22 +08:00
Ta-Ching ChenandGitHub ef4964b543 Refactor RoundTrip function for better code reading (#991) 2018-12-25 13:31:15 +08:00
Ta-Ching ChenandGitHub 710940fb3b Update dotnet and perl environment docs for rebuilding env images (#1035) 2018-12-23 17:48:09 +08:00
Ta-Ching ChenandGitHub 701b2b26ad Use Header.Set() to override the existing header value (#1032)
Header.Add() appends string if there are same header key exists. Use Header.Set() to prevent this.
2018-12-20 17:23:26 +08:00
Ta-Ching ChenandGitHub e50fd3e30c Fix builder shows "http: multiple response.WriteHeader calls" (#1029) 2018-12-20 01:29:15 +08:00
Ta-Ching ChenandGitHub a729cc5281 Fix builder & newdeploy not using latest image during CI build (#1033) 2018-12-19 22:35:28 +08:00
Ta-Ching Chen f99b708acd Update charts version & changelog to v1.0-rc1 2018-12-13 17:45:50 +08:00
Ta-Ching Chen ed9d61fd07 Fission v1.0-rc1 2018-12-13 15:45:32 +08:00
Ta-Ching ChenandGitHub 0f730aaf75 Validate command flag input by adding cli hook (#1017) 2018-12-10 23:48:33 +08:00
Ta-Ching ChenandVishal 2c47842298 Pre-create kubernetes resources for function with minScale=0 (#976)
Pre-create Kubernetes resources if functions has MinScale=0 and then scale when first function is called.
2018-12-03 15:52:07 +05:30
Ta-Ching ChenandGitHub 479b332600 Use executor type as a delimiter to prevent deploy name conflict (#1009) 2018-11-30 13:04:44 +08:00
Ta-Ching ChenandGitHub 42d0075d17 Fix issues when specifying resources/scales during updating/creation process (#970) 2018-11-29 20:46:48 +08:00
Ta-Ching ChenandGitHub 3284e14ddb Upgrade environment dependencies for security alert (#1006) 2018-11-29 16:38:38 +08:00
Ta-Ching ChenandGitHub 6406022b5d Rename canary flag name from funcN/funcN-1 to newfunction/oldfunction (#1003) 2018-11-28 16:27:29 +08:00
Ta-Ching ChenandGitHub 2d80a5b73c Fix MQ trigger (NATS) wrongly sends error message to response topic (#1002) 2018-11-25 10:07:46 +08:00
Ta-Ching ChenandGitHub e551fa0eba Shorten executor kubernetes objects name (#975) 2018-11-24 20:41:38 +08:00
Ta-Ching Chen 188a7aab5f Fix helm command not found issue when kubeconfig is not provided. 2018-11-20 17:24:37 +08:00
Ta-Ching ChenandVishal 65bc02ecc8 Newdeploy - change only in minscale should not restart deployment 2018-11-15 15:31:28 +05:30
Ta-Ching ChenandGitHub a55ecedcb3 Fix release script failed to generate yaml for nonhelm installation (#978) 2018-11-14 15:02:43 +08:00
Ta-Ching ChenandGitHub 965031876a Show builder image when list all envs (#971) 2018-11-05 23:18:37 +08:00
Ta-Ching ChenandGitHub 02cc811efa Fix CLI not shows package name when creating a function (#966) 2018-11-05 17:19:05 +08:00
Ta-Ching ChenandGitHub 6c197ae68a Fix failed to pull influxdb image from dockerhub (#957)
* Fix failed to pull influxdb image from dockerhub
* Disable jvm test temporarily (issue 958)
2018-10-31 16:32:45 +08:00
Ta-Ching ChenandGitHub 493cd78f7d Optimize function latency when cache expired/invalid under high concurrency (#856)
* Optimize router response time by adding update lock

In 0.9.2, the router sends multiple GetServiceForFunction requests to executor
to get the service URL. However, the response time of executor will increase
under high-concurrency situation due to too many requests are waiting for
processing.

To solve the problem, an update lock was added to the router. All of goroutines belongs
to the same function need to grab the update lock before sending the request.
Only the first goroutine which gets the update lock is allowed to send request.
In this way, we reduce the burden of executor and lower the failure rate.
2018-10-27 23:35:00 +08:00
Ta-Ching ChenandGitHub 6850d6ed8e Support for full url (base on aalubin changes) (#941) 2018-10-21 04:04:07 +08:00
Ta-Ching ChenandGitHub d38e2c1ede Bump flask version (#942) 2018-10-18 22:56:04 +08:00
Ta-Ching ChenandGitHub 8e66c31870 Add X-Forwarded-Host to request header (#890) 2018-10-15 14:17:18 +08:00
Ta-Ching ChenandGitHub 756b9fd901 Fix flag not found problem when running canary demo scripts (#914) 2018-10-02 22:07:03 +08:00
Ta-Ching ChenandGitHub 9ff041aba4 Fission supportability: Add dump command to dump information for debugging (#754)
* Add v1 support tool proposal
* Fission supportability: Add dump command to dump information for debugging
2018-09-19 14:35:51 +08:00
Ta-Ching ChenandGitHub 6fb3b6f292 Check CRD creation error instead of doing return directly (#897) 2018-09-18 16:30:56 +08:00
Ta-Ching ChenandGitHub 0d5905661f Fix fetcher not close file descriptor correctly (#889)
* Fix fetcher not close file descriptor correctly
* Call Sync() before chmod
2018-09-11 14:15:56 +08:00
Ta-Ching ChenandGitHub a87ef2b133 Check pod container ready state (#861)
Ensure pod is ready by checking pod’s containers state and deletionTimestamp
2018-09-07 22:17:07 +08:00
Ta-Ching ChenandGitHub d4be3520ad Fix failed to find release-builder dockerfile & push specific tag (#870) 2018-08-26 23:02:07 +08:00
Ta-Ching ChenandGitHub 05101c002e V0.10.0 (#868) 2018-08-19 19:05:19 +08:00
Ta-Ching ChenandGitHub a4c0221e0b Add cleanup function to test scripts (#863) 2018-08-18 02:11:08 +08:00
Ta-Ching ChenandGitHub 4edd24daee Scale deployment to zero when function is in idle state (#775) 2018-08-17 23:03:34 +08:00
Ta-Ching ChenandGitHub 3e738e2798 Fix CLI failed to setup port-forward caused by #712 (#867) 2018-08-17 16:05:13 +08:00
Ta-Ching ChenandGitHub 833c04243b Fix newdeploy fail to update HPA, deployment of a function after function update (#862) 2018-08-15 19:56:30 +08:00
Ta-Ching ChenandGitHub 20468a67e2 Fix router not taps function services (#860) 2018-08-13 19:45:49 +08:00
Ta-Ching ChenandGitHub 640e1692fb Add rebuild subcommand to pkg command (#808) 2018-08-12 04:13:25 +08:00
Ta-Ching ChenandGitHub 34deadd02a Fix router panic when trying to update route (#811) 2018-08-05 01:06:47 +08:00
Ta-Ching ChenandGitHub 1a6f3f9c9d Fix spec failed to archive single directory (#837) 2018-08-03 21:26:19 +08:00
Ta-Ching ChenandGitHub c192f49f93 Do resources validation when validate spec files (#840) 2018-08-03 13:00:29 +08:00
Ta-Ching ChenandGitHub 3ff72f9ca2 Fix newdeploy not updates deployment after function's entrypoint changed (#838) 2018-08-02 21:00:27 +08:00
Ta-Ching ChenandGitHub 95a460230c Fix CLI failed to set up port-forwarding when multiple controller pods exist in the same namespace (#712)
* Fix CLI failed to set up port-forwarding when multiple controller pods exist in the same namespace
* Check pod healthy state before establishing the connection
2018-08-02 17:20:53 +08:00
Ta-Ching ChenandGitHub 697f22f10b Add more meaningful error messages to executor when getServiceForFunction (#752) 2018-07-30 09:10:48 +08:00
Ta-Ching ChenandGitHub b7ca113ee0 Add go environment vendor directory support (#781)
* Add go environment vendor directory support
* Use symbolink instead of copying files to gopath
* Add go vendor example package & test
2018-07-13 13:16:22 +08:00
Ta-Ching ChenandGitHub 92186969df Delete namespace in background to reduce build time (#791)
* Delete namespace in background
* TPR is no longer exists
2018-07-12 11:00:19 +08:00
Ta-Ching ChenandGitHub 1111e86fe3 Break & Stop the build immediately if a non-zero exit code was returned (#790) 2018-07-11 20:15:03 +08:00
Ta-Ching ChenandGitHub b28ab0c2c9 Fix spec command overrides existing archive's url of a package (#764) 2018-07-11 13:03:45 +08:00
Ta-Ching ChenandGitHub a021f5003a Fix “rm: missing operand” in release script (#779) 2018-07-06 14:15:20 +08:00
Ta-Ching ChenandGitHub 6cffe7b727 Fix go env panic “plugin: not implemented” (#784) 2018-07-06 12:24:46 +08:00
Ta-Ching ChenandGitHub 58ee3541db Change flag name to KeepArchive for backward compatibility (#787) 2018-07-06 03:13:07 +08:00
Ta-Ching Chenandsmruthi2187 bb049a7639 Move build process from host to docker container during release process (#682) 2018-07-03 21:14:06 -07:00
Ta-Ching ChenandGitHub ba44ca0d87 Add release steps to render & upload fission installation YAML (#745) 2018-06-26 13:41:43 +08:00
Ta-Ching ChenandGitHub d7ed94dfe4 Fix executor not reaps idle function pods for functions with executortype newdeploy (#744) 2018-06-21 17:54:42 +08:00
Ta-Ching ChenandGitHub 7514166595 Fix executor wrongly passes loop variable reference to function (#751) 2018-06-19 09:55:41 +08:00
Ta-Ching ChenandGitHub cb45f0a455 Add time trigger cron spec examination tool (#680) 2018-06-04 19:02:54 +08:00
Ta-Ching ChenandGitHub 60e46745ce Update k8s dependencies to 1.10 (#687) 2018-06-01 15:43:19 +08:00
Ta-Ching ChenandGitHub 9ddaffd858 Check spec directory exists before reading spec files (#709)
* Check spec directory exists before reading spec files
* Fix spec example
2018-05-31 03:01:40 +08:00
Ta-Ching ChenandGitHub d0942fb7a5 Replace Werkzeug with Bjoern as underlying WSGI server (#672) 2018-05-09 14:00:40 +08:00
Ta-Ching ChenandGitHub e58dac5c5c Version -> 0.7.2 (#670) 2018-05-05 20:01:23 +08:00
Ta-Ching ChenandGitHub 58260d3f1f Add benchmark script (#666) 2018-05-05 12:42:16 +08:00
Ta-Ching ChenandGitHub 5a5927c1be Delete deployment with proper delete propagation policy (#630) 2018-05-01 23:25:50 +08:00
Ta-Ching ChenandGitHub 67b6cb5530 Fix newdeploy backend failed to delete deployment due to incorrect resource version (#657) 2018-05-01 16:48:34 +08:00
Ta-Ching ChenandGitHub 91b6e3771f Change time precision for fluentd influxdb plugin to nano second (#646) 2018-04-26 20:57:55 +08:00
Ta-Ching ChenandGitHub 7353d4e9c8 Fix test cases occasional failure (#647) 2018-04-26 14:39:16 +08:00
Ta-Ching ChenandGitHub 9a949e8542 Fix SEGFAULT issue when buildmgr failed to update package (#635) 2018-04-21 23:17:33 +08:00
Ta-Ching ChenandGitHub 87feda395e Fix executor does not reap specialized function pod when env no longer exists (#633) 2018-04-19 07:39:37 +08:00
Ta-Ching ChenandGitHub 14ae582d3f Fix SEGFAULT issue when build manager failed to update package (#626) 2018-04-17 09:36:11 +08:00
Ta-Ching ChenandGitHub f07f28eeba Remove confusing default value description & add default value to cli flag (#619) 2018-04-16 17:27:10 +08:00
Ta-Ching ChenandGitHub 1d4368c23a Add validate function to crd resource and do validate before creation/update (#580) 2018-04-08 00:56:13 +08:00
Ta-Ching ChenandGitHub 5fc04e681d Fix components crash before crds creation (#602)
* Wait for CRDs creation for 30 sec when component start
* Fix ensureCRD return nil while the error is not empty
2018-04-04 15:40:55 +08:00
Ta-Ching ChenandGitHub b6fa43f5ac Add deprecated message to subcommand pods (#592) 2018-04-04 01:26:27 +08:00
Ta-Ching ChenandGitHub 9067431e48 Use a separate controller loop to watch functions change and create a service (#544) 2018-04-04 01:17:51 +08:00
Ta-Ching ChenandGitHub 045ffe8ffc Add steps for how to set FISSION_ROUTER env variable & update docs (#593) 2018-03-31 01:10:40 +08:00
Ta-Ching ChenandSoam Vasani 27d3b80905 Add post-upgrade-job to track fission upgrade (#564) 2018-03-26 12:28:35 -07:00
Ta-Ching ChenandGitHub 465f15a377 Show fission deployment version with cli (#538)
Add version information to binary through go ldflags
2018-03-19 14:14:55 +08:00
Ta-Ching ChenandGitHub 4fd884820e Fix executor failed to clean cache & kubeobjs after function deleted (#534) 2018-03-14 02:29:12 +08:00
Ta-Ching ChenandGitHub 896303cddf Always retry for function pod specialization when istio feature is enabled. (#536) 2018-03-11 23:17:05 +08:00
Ta-Ching ChenandGitHub b4b97af805 Show warning when trying to create a route with non-existent function (#539) 2018-03-09 02:45:30 +08:00
Ta-Ching ChenandGitHub dd4dc593d4 Fix executor tries to create a new deployment when a function is updated (#524)
Newdeploy manager now checks the existence of function service cache by function UID before trying to create a new deployment. And return the cached fsvc directly if the cache exists.
2018-03-08 02:52:36 +08:00
Ta-Ching ChenandGitHub b6430a258b Fix CLI not update function's secret/configmap correctly (#512)
This PR addressed some issues introduced in PR399. Also, now env builders and function pods can mount shared secret/configmap volumes correctly.
2018-02-28 05:28:05 +08:00
Ta-Ching ChenandGitHub 78ac09fef0 Istio integration (#421)
This the very first step for fission to integrate with Istio, which is an open platform to connect, manage, and secure microservices. With Istio, users are able to monitor functions usage and trace requests latency through dashboards. For more information, please visit http://fission.io/docs/
2018-02-28 04:09:32 +08:00
Ta-Ching ChenandGitHub d72eefa9bc Fix post-install-job container failure due to curl command not found (#514) 2018-02-27 18:08:16 +08:00
Ta-Ching ChenandSoam Vasani e90fc20f0a Improve release script (#494)
* Add step for releasing environment builder image

* Strip $GOPATH from strack trace
2018-02-12 15:42:23 -08:00
Ta-Ching ChenandGitHub e9fcefd05c Update SHA256 HASH in CHANGELOG.md due to binaries update (#493)
Update SHA256 HASH in CHANGELOG.md due to binaries update due to build flags change.
(Strip GOPATH from stack trace)
2018-02-10 00:47:44 +08:00
Ta-Ching ChenandGitHub a7fe3b203b Add simple usage doc for accessing secret/configmap in function (#484) 2018-02-08 13:05:30 +08:00
Ta-Ching ChenandGitHub e4b1f57999 Add upgrade guide from 0.4.x to 0.5.0 (#490) 2018-02-08 13:05:04 +08:00
Ta-Ching ChenandGitHub e24b6f82f0 Version -> 0.5.0 (#489) 2018-02-08 03:39:02 +08:00
Ta-Ching ChenandGitHub ed1384e9ff Fix binary environment build failure due to package not found (#487)
Subpackage k8s.io/client-go/pkg/api/v1 is no longer exist in HEAD.
(https://github.com/kubernetes-incubator/external-storage/issues/324)
For now, just duplicate the FunctionLoadRequest struct like what go environment did.
2018-02-07 21:44:12 +08:00
Ta-Ching ChenandGitHub 85cc1ab284 Migrate project.json to dotnet.csproj & do build in dotnet container (#488) 2018-02-07 21:43:51 +08:00
Ta-Ching ChenandSoam Vasani cd4215f5bc Fix potential nil pointer problem when both watchResources and waitForBuild are equal to false (#485) 2018-02-06 15:14:47 -08:00
Ta-Ching ChenandGitHub aeec590ded Fix possible context leak problem (#483) 2018-02-06 21:34:01 +08:00
Ta-Ching ChenandGitHub 650499d55b Add glide flag to strip nested vendor (#480)
Adds --strip-vendor (-v) to travis.yml when installing dependencies.
For more information about the flag, please check dependency flattening (https://glide.readthedocs.io/en/stable/getting-started/)
2018-02-06 02:31:06 +08:00