* Move to using Istio v1alpha3 API.
* Removing ingressInformer from controllers since we no longer need.
* Update typo and utilization target for HPA.
* Add README.md to explain how we create these types.
* Update per PR feedback
* Update per PR feedback.
* Add back the timeout settings.
The timeout headers were added when we used v1alpha2 in order to allow
more time for 0->1 scaling. I accidentally undo that change when
moving to v1alpha3. This adds it back.
* Run hack/update-codegen.sh.
* Update per PR feedback.
* Update per PR feedback.
* Update per PR feedback.
* Conditions proposal
Replace LatestRevisionReady condition with:
Configuration.Status.Ready
Service.Status.ConfigurationReady
Updated Service Status to include:
Ready
ConfigurationReady
RouteReady
The overall condition of any resource can be checked by looking at its
Ready condition. This simplifies the logic for clients that need to poll
for Readiness.
For Service, the status of its owned resources can be checked by looking
at its ConfigurationReady and RouteReady conditions. This saves clients
from having to perform an extra hop to determine why a Service is not
Ready. The Ready condition of a Service should reflect a union of the
Ready conditions of its owned Configuration and Route.
Also fix typo: s/meassage/message/
* Pluralize conditions
* Add missing condition to errors example
* Move revision condition manipulation into revision_types.go
This is the Revision equivalent of #1113
This contains two other unrelated changes:
1. Condense the object construction in `revision_test.go`
1. Reorder the `helloworld` yaml to create the configuration first.
The reason for the second "unrelated" change is that I was seeing the route controller marking the Route as "AllTrafficAssigned = False" because the configuration wasn't created yet.
* Update the conditions spec to eliminate wording about elision.
Eliding conditions can come later, it's a premature optimization,
and I'm not sure we're handling conditions well enough to do it
reliably yet.
* Fix test breakages due to setCondition becoming private.
* Add unit test coverage of the condition logic.
* Clarify isBuildDone through local variable names.
Today the "Ready" condition strictly reflects whether the ingress has become available and not whether the revisions they route two have been programmed into route rules. In #986 Jon is adding AllTrafficAssigned to cover revision readiness, but this doesn't change the fact that the ingress becoming ready will cause the Route to become "Ready", even if traffic is unassigned.
This changes the original sense of "Ready" into "IngressReady", and predicates the new "Ready" on "IngressReady" and "AllTrafficAssigned".
Progress on: https://github.com/knative/serving/issues/1056
Fixes: https://github.com/knative/serving/issues/1074
* Rename most ela-* things
Left `ela-prow` since that is an external dependency that might break.
* Fix filenames
* Revert some e2e test changes
* attempt to fight the Walk function
* Address feedback
* Rearrange yaml order
Attempt to reflect the important-looking order from bazel's build rules.
See: a15e38795b/config/BUILD.bazel (L121-L138)
Other Knative projects use the project name in the CRD group. Now that
the Serving project is no longer called "elafros", the project name
should be included in the CRD group namespace.
This is a breaking change, but aligns well with the other breakages
caused by the rename.
I intentionally did not update name for resource labels or for logging.
In docs there were a few references to CRDs from the build project.
Those CRD groups are now called build.knative.dev.
* elafros/elafros -> knative/service
* replace elafros with knative
* changed ela package to serving
* change elafros/build to knative/build and newer version
* things are running mostly
* address build / test failures
* address integration test failures
* repo has not chnaged
* Some spec docs were using `RolloutComplete` for the condition type,
however as errors.md documents and as discussed in #351, the type
should actually be `Ready`
* The conformance tests were asserting against the condition `Reason`
but as per #351 and errors.md, values in this field are for the
user to consume and should be transpart to client applications.
* errors.md didn't make the latter as clear as mattmoor@'s comment
in #351 so I copied some of his comment into the doc
Also reorganized some of errors.md to make it easier to identify,
by field, what requirements are.
Instead of setting the name of a missing Revision to "Not found" in
`status.traffic`, just omit the revision entirely, since the error is already
communicated via the conditions' reasons.
Also s/TrafficDropped/AllTrafficAssigned/ to fix outdated docs.
* Generates logURL for revision
- Uses 'logging.revision-url-template' in ela config to generate
revision URL for a specific revision.
https://github.com/elafros/elafros/issues/649
* Initial checkin of Service docs (aka "Steve")
* Partial checkpoint on updating spec
* Add service to images
Adds Service to images
* Update the rest of examples
* Reorder errors to group logically into deployment and routing errors.
Introduce Service error documentation, and structure error blocks to show how Service aggregates errors from Route and Configuration.
* Address small comments from @vaikas-google and @mattmoor. Did not refactor service.pinned behavior.
* Update error documentation to address #351
* Update Condition usage to match spec described in #351
* Change "deploying" state to Ready=Unknown rather than Ready=False. Also re-add the "IsFailed" condition, keying off of non-Ready conditions on the revision.
* Address review comments by @sixolet and @mattmoor
* Updated per @sixolet and @mattmoor discussions.
* Update semantics on Ready, which should catch my true/false screwup on BuildSucceeded=False
* Fix added test that was failing in merge.
* Rerun update-codegen.sh
* Also need to update conformance test
Initial copy/commit of Elafros API design doc, chunked into sections. Also includes initial definitions of Elafros personas.
Still TODO:
- Appendices A-E, which cover extended use cases.