* 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.
* Remove the usage of prometheus operator and manage prometheus instances ourselves. This is needed because prometheus operator doesn't work with kubernetes 1.10 yet and we need that support. We are not making use of prometheus operator capabilities yet, so there is no functionality lost.
* Add OWNERS files to monitoring related folders.
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
This completes the process from #829 and removes the WORKSPACE dependency on elafros/build. We now rely on a copy of the release.yaml that was published from elafros/build's nightly release.
This also updates the revision of Build that we depend on to reflect the release.yaml we are pulling in.
Fixes: #270
* 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.
* Remove SecurityContextDeny from minikube instructions
Fixes#507
* Updated docs to work with minikube v0.26.0 and later
Fixes#801
- use explicit bootstrapper arg and
- also added a macOS specific startup command for easier cut-and-paste.
* Fix typo
* Switch to use `hyperkit` vm-driver instead of `xhyve` on macOS
* Implement Revision `concurrencyModel`, defaulting to `Multi`.
* When concurrency model is `Single`, enforces one request at time in each pod.
* Create separate target concurrency parameters for `Multi` and `Single` modes.
Created a README in docs/spec to list the docs in the dir and
indicate that changes to these docs should be kept in syn with
both the implementation and teh conformance tests. Folks who
are changing the API should also be responsible for updating
the docs and making sure their changes are covered by the
conformance tests.
In #780 we will look at checking this in PRs so we don't have to hope
folks will see the docs.
Fixes#592.
Fixes#578 and #493
* Added a document titled "Investigating Performance Issues" - this document will guide users through debugging application performance issues and will show how they can use the observability features offered by Elafros to identify such issues.
* Added metrics and a dashboard for autoscaler component and documented how it is used in the guide above.
* 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
* Update the API spec and overview to reflect ServingState intent.
I've reworded the description of a Revision in the overview docs to capture some of the key lifecycle stages a revision may be in. I also found the existing wording confusing, since it talked about "history", which is more a property of configuration that is enabled by retirement, and I think the new wording better captures this.
I've updated the specification to include `servingState`, clarify where fields aren't available (pointing to issues), and tweak assorted cosmetic things (e.g. trailing whitespace).
Fixes: https://github.com/elafros/elafros/issues/644
* Clarify that blocking Revision creation is NYI (link to issue).
* Various code review updated from @evankanderson and @grantr.
* Update personas to include text description of each persona, including notes from @mchmarny slides. Also fix formatting.
* Fix bullet point.
* Move build/event personas to appropriate repos.
* Exact smae file
* Added proposed list of items reqwuired to open the repo
* Addeded Steve/Service description
* Change must be lang to we would like to
* Updated checklist based on PR comments
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.
The certificate controller is required to configure the istio sidecar
injector webhook, but Minikube doesn't give it the paths to the CA certs
by default, so it can't start.
These paths are local to the VM, not the host machine, so they are the
same for all users.
Still few things to do but merging this to allow more people to contribute on smaller pieces
* Added issue and PR templates (#371)
* Moved PR and Issue templates to .github
* Convered Elafros overview proso to markdown
* Created overview index file and cleaned up list indents
* Object model image to the bottom
* Updated size
* Gave up, md image sizing sucks, went to HTML
* Updated headline to conform
* Updated title casing "O"
* Removed, not enough content to make it meaningful
* Removed Main Content link, file removed
There was no enough content to make this doc meaningful.
* Adde todo
* Update elafros-api-objects.md
Use 4 CPU nodes in setup instructions
The conformance tests have been failing and in @josephburnett 's investigation he found that it was the autoscaler changes made the tests CPU starved, and so we need beefier machines to be able to run the tests (i.e. to run elafros).
Follow up work still todo: documenting minimum system requirements.
* Remove extra _ in markdown file.
* Fix flag for running conformance tests with bazel.
* Fix conformance tests.
Commit #300 updated Route.Spec.Traffic.{Revision,Configuration} to end with Name.
* Added port-forwarding information to telemetry documentation to prevent exposing Prometheus and Grafana publicly.
* Removed public IP option for Prometheus UI (this is mainly used for debugging and can be done using port forwarding)
* Changed the order of installation of Prometheus in the build file. Previous ordering was causing an error on a brand new cluster and required retrying the step to succeed. I still need to root cause the issue but checking this in as a mitigation/workaround for the time being.
* Adds documentation for Elafros resources
* Documents how to view just Elafros resources (#49)
* Documents how to view running pods and CRDs post-install
* Updates resources-overview documentation with recommended edits (#201)