Skip to content
Snippets Groups Projects
  1. Jan 11, 2023
    • Alex Ellis (OpenFaaS Ltd)'s avatar
      Deprecate external auth plugins · 4f9c61b5
      Alex Ellis (OpenFaaS Ltd) authored
      
      There is no need for OpenFaaS CE to have external auth plugins
      since this added extra overhead and was never used.
      
      OpenFaaS Pro retains the option so it can use the OIDC
      auth plugin.
      
      It's still possible, as it ever was to put a proxy in front
      of any HTTP server like the gateway.
      
      Tested with a local KinD cluster, auth still worked for the
      API and UI.
      
      Signed-off-by: default avatarAlex Ellis (OpenFaaS Ltd) <alex@openfaas.com>
      4f9c61b5
    • Alex Ellis (OpenFaaS Ltd)'s avatar
      Make OpenFaaS CE use the provider for load-balancing · a7d486ee
      Alex Ellis (OpenFaaS Ltd) authored
      
      This change removes the direct functions option which was
      used originally for Docker Swarm. The Community Edition will
      rely on the faas provider - faas-netes / faasd for load-balancing
      of requests.
      
      Direct Functions is required in order to delegate load-balancing
      to Istio, Linkerd or some other kind of service mesh.
      
      Tested by deploying a modified gateway image to a KinD cluster,
      deploying the env function, and scaling to two replicas. This
      balanced the load between the two pods by printing out the names
      and then I ran a test with hey which returned 200s for all the
      requests.
      
      The prober which was part of the Istio support is no longer
      required in the CE gateway so is removed for simplicity.
      
      Signed-off-by: default avatarAlex Ellis (OpenFaaS Ltd) <alex@openfaas.com>
      a7d486ee
  2. Dec 14, 2022
  3. Oct 24, 2022
    • Lucas Roesler's avatar
      fix: return provider response during fnc listing errors · c07bebbb
      Lucas Roesler authored
      
      Return the original upstream response body when the the list request
      returns an error. In general, the provider is returning useful and
      actionable error messages for the user, the previous code hid this in
      the logs and this is easy for user to overlook.
      
      Additionally, remove an early return from error case after fetching
      metrics. This looked like a bug and could result in empty api responses
      if there was a prometheus error.
      
      Signed-off-by: default avatarLucas Roesler <roesler.lucas@gmail.com>
      c07bebbb
  4. Sep 29, 2022
  5. Sep 21, 2022
  6. Sep 08, 2022
    • Alex Ellis (OpenFaaS Ltd)'s avatar
      Use Desired Replicas when scaling from zero · 8e711b3a
      Alex Ellis (OpenFaaS Ltd) authored
      
      During some exploratory testing, I ran into an issue where
      the gateway would attempt to scale a deployment from zero
      replicas to min, despite there already being min replicas.
      
      Why?
      
      The scaling logic was looking for Available replicas when
      it should have looked for Desired replicas. So when a
      deployment had zero ready replicas due to readiness checks
      failing, the gateway was attempting to scale from zero
      to min.
      
      This logic has been corrected and separated from the
      a holding pattern where the gateway waits for a ready
      replica.
      
      Tested with KinD and an edited function which had a
      readiness probe, which was failing and no ready
      replicas. As desired, the gateway did not scale to min.
      
      However, when setting desired replicas to zero, the
      gateway did scale up as expected.
      
      This change also modifies all print statements for
      "seconds" and makes them use 4 decimal places instead of
      the default which was a longer, more verbose string for
      the logs.
      
      Signed-off-by: default avatarAlex Ellis (OpenFaaS Ltd) <alexellis2@gmail.com>
      8e711b3a
  7. Aug 30, 2022
  8. Aug 24, 2022
  9. Aug 05, 2022
  10. Jul 07, 2022
    • Alex Ellis (OpenFaaS Ltd)'s avatar
      Feature for probing functions · 88eea5f6
      Alex Ellis (OpenFaaS Ltd) authored
      
      Introduces a single-flight call to a function's health
      endpoint to verify that it is registered with an Istio
      sidecar (Envoy) before letting the invocation through.
      
      Results are cached for 5 seconds, before a probe is
      required again.
      
      Tested without Istio, with probe_functions environment
      variable set to true, I saw a probe execute in the logs.
      
      Fixes: #1721 for Istio users.
      
      Signed-off-by: default avatarAlex Ellis (OpenFaaS Ltd) <alex@openfaas.com>
      88eea5f6
  11. Jun 29, 2022
  12. Jun 01, 2022
  13. May 26, 2022
  14. May 06, 2022
  15. Mar 25, 2022
  16. Feb 21, 2022
  17. Jan 24, 2022
  18. Oct 22, 2021
  19. Jul 27, 2021
  20. Jul 26, 2021
  21. Mar 11, 2021
  22. Feb 27, 2021
  23. Feb 26, 2021
Loading