Commit Graph

17 Commits

Author SHA1 Message Date
Nghia Tran a851d2b718 Fix error messages for missing traffic targets. (#1556)
* Fix error messages for missing traffic targets.

* Add tests for uncovered new functions

* Update per PR feedback

* Add missed files.

* Update per PR feedback.
2018-07-11 20:47:34 -07:00
Jason Hall a1b43fbe48 Update Build vendor (#1384)
* Update build vendor, fix tests

* Update build.dev references

* update commit

* Update build vendor, fix tests

* update commit

* update

* update build/release.yaml

* Update samples to use revision instead of branch

* update dep
2018-07-01 19:38:26 -07:00
Nghia Tran 519d3c0611 Migrate to Istio v1alpha3 Gateway / VirtualService (#1228)
* 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.
2018-06-29 11:33:36 -07:00
jonjohnsonjr 79b0e5879b Proposal: More uniform conditions (#1266)
* 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
2018-06-21 08:44:18 -07:00
Matt Moore 6d7c3b6bf6 Move revision condition manipulation to _types.go (#1118)
* 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.
2018-06-11 12:48:15 -07:00
Matt Moore 15e4430932 Add an IngressReady condition. (#1086)
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
2018-06-08 09:27:14 -07:00
jonjohnsonjr ff2a6276b9 Rename most ela-* things (#1045)
* 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)
2018-06-05 11:10:13 -07:00
Matt Moore 56f12ce50a Rename Elafros to Knative Serving in non-Community markdown files. (#1019) 2018-06-01 13:15:11 -07:00
Scott Andrews 6de1824390 Rename the CRD group to serving.knative.dev (#1013)
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.
2018-06-01 12:54:11 -07:00
Ville Aikas 86ea1a1976 Rename repo to knative (#1009)
* 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
2018-05-31 17:21:11 -07:00
Christie Wilson 07c926d956 Update condition `type` in spec and do not assert against `reason` (#903)
* 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.
2018-05-29 17:40:10 -07:00
jonjohnsonjr 29655efa09 Update spec for AllTrafficAssigned conditions (#840)
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.
2018-05-23 22:12:08 -07:00
Brenda Chan f529c4b373 Generates logURL for revision (#831)
* 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
2018-05-11 10:09:48 -07:00
jonjohnsonjr afada8dae6 Clarify "happy state" condition types (#869)
It wasn't completely clear that "this" and "object name" refer to the
condition Type.
2018-05-10 11:07:24 -07:00
Evan Anderson 1ec350998b Service docs (#685)
* 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.
2018-05-07 10:59:23 -07:00
Evan Anderson 9cf3c0879c Make all Conditions positive terminating conditions (#733)
* 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
2018-04-27 16:53:20 -07:00
Evan Anderson 4ee69f36ed Commit API spec and design doc (#444)
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.
2018-03-27 15:14:54 -07:00