Merge website files into Master (#1025)

* Add front matter to Build files (#833)

* Update README.md

* Adding front matter to builds.md

* Update installing-build-component.md

* Update README.md

Revert changes so Richie can handle this with the index file

* Update builder-contract.md

* Update personas.md

* Update auth.md

* Update creating-builds.md

* Update build-templates.md

* sentence case

* sentence case

* sentence case

* Adding frontmatter to /install/ (#834)

* Adds front matter to Serving (#838)

* Update accessing-logs.md

* Update accessing-metrics.md

* Update accessing-traces.md

* Update cluster-local-route.md

* Update debugging-application-issues.md

* Update debugging-performance-issues.md

* Update gke-assigning-static-ip-address.md

* Update installing-logging-metrics-traces.md

* Update outbound-network-access.md

* Update setting-up-a-logging-plugin.md

* Update using-a-custom-domain.md

* Update using-an-ssl-cert.md

* Update using-cert-manager-on-gcp.md

* Update using-external-dns-on-gcp.md

* site index for fluentd folder (#839)

* add Hugo index files and frontmatter (#840)

* hugo build files for autogen refdocs (#841)

* move resources and readme (#843)

* site: add blog (#837)

* add blog folder

* switch to sentence case

* site: add community and contributing (#836)

* add _index.md files and front matter

* switch to sentance case caps

* fix weights

* Update community/samples/README.md

Co-Authored-By: RichieEscarez <rescarez@google.com>

* site: restructure content into a "docs" directory (#842)

* move content into a 'docs' directory

* inject additional 'docs' directory

* site: add build files and front matter to serving samples (#850)

* new _index.md files and front matter

* serving samples + fix urls

* remove file

* add PR#851 - channels (#853)

* Update README.md (#854)

* Remove README.md from all links (#855)

* Remove README.md from all links

* mend

* mend

* mend

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* fix links in community (#857)

* Update _index.md (#856)

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

Adds missing pointer to README

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* Update _index.md

* revert

* fix build links (#858)

* site: fix eventing links (#859)

* fix eventing links

* Update README.md

* fix install links (#860)

* site: fix serving links (#861)

* fix serving links

* Update using-external-dns-on-gcp.md

* remove hardcoded github link (#863)

* Update README.md (#864)

Fix links by removing md file extensions.

* Fix links (#866)

* Fix links

* Update installing-build-component.md

* Update builder-contract.md

* add missing hello-world directory (#865)

* Link fixes for Build (#867)

* Fix links

* Update installing-build-component.md

* Update builder-contract.md

* Update creating-builds.md

* Update builder-contract.md

* Update builds.md

* Update creating-builds.md

* Update installing-build-component.md

* Update installing-build-component.md

* Update creating-builds.md

* Update creating-builds.md

* Update builds.md

* Update build-templates.md

* convert to Hugo rel link

* Manually run prettier.io (#880)

* Manually run prettier.io

Trying to fix the stuff that hits prettier.io bugs.

* Fix prettier.io issues.

* Revert manual link fixes (use new build script instead) (#927)

* Revert "convert to Hugo rel link"

This reverts commit f1bbc8ebbc.

* Revert "Fix links (#866)"

This reverts commit 3a57ffed62.

* Revert "remove hardcoded github link (#863)"

This reverts commit fb7fdd9383.

* Revert "site: fix serving links (#861)"

This reverts commit f61514c1b4.

* Revert "fix install links (#860)"

This reverts commit 1fcf32b509.

* Revert "site: fix eventing links (#859)"

This reverts commit 880916567e.

* Revert "fix build links (#858)"

This reverts commit 847e08bf2e.

* Revert "fix links in community (#857)"

This reverts commit 0cd5a44baf.

* Revert "Remove README.md from all links (#855)"

This reverts commit 2029c8bccb.

* Revert "Update README.md (#864)"

This reverts commit 072c731155.

* Adding frontmatter to Gloo guide (#939)

*  adding frontmatter; cherry-picking commit into 0.3 (#943)

* Deploy using private registry (#847)

* new doc for deploying with private registry

* update last few steps

* header sizes

* capitalization

* updating with correct registry annotation and small edits

* wording

* formatting

* formatting

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* update based on feedback

* missing <

* adding tic marks for filename

* udpate with helloworld-go sample

* add testing application

* update return from helloworld app

* update readme with link to doc

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* Update serving/deploying-with-private-registry.md

Co-Authored-By: beemarie <beemarie@us.ibm.com>

* adding frontmatter; cherry-picking commit into 0.3

* Update Knative-with-Minishift.md (#988)

Update to correct title (Openshift > Minishift), as mentioned by Ashleigh in the Docs WG.

* add type:docs + enable relative links (#990)

* Deleting an unnecessary file

accidentally copied in extra file

* update ref docs api build script and files (#997)

* all links must have ./ (#1004)

* all links must have ./

* Update contributing/README.md

Co-Authored-By: RichieEscarez <rescarez@google.com>

* Update contributing/README.md

Co-Authored-By: RichieEscarez <rescarez@google.com>

* Update for clarity

* Update README.md

Fixing my poorly formatting suggestion

* ref tool steps + script (#1008)

* Incorporate edits from #1008 (#1010)

* Incorporate edits from #1008

* Add "contributor" info link

* page-by-page link check fixes (#1024)

* update readmes - source and site versions

* rename file to fix left nav

* rename file and remove folder to fix left nav
This commit is contained in:
RichieEscarez 2019-03-20 13:48:47 -07:00 committed by Knative Prow Robot
parent 2a55e5c4ef
commit 3c04f86ad7
239 changed files with 2383 additions and 1098 deletions

1
.gitignore vendored
View File

@ -1,2 +1,3 @@
.DS_Store
.idea/

14
README.md Normal file
View File

@ -0,0 +1,14 @@
# Welcome to the source file repository for Knative documentation
## View published docs
Use the [Knative Documentation website](http://www.knative.dev/docs) to view the
docs and learn about Knative.
## Source files
View the source files if you want to contribute a fix or add new content.
Each release of the Knative docs are
[branched](https://github.com/knative/docs/branches). If you are looking for an
archived doc set, see the list of available versions in
[Knative doc releases](./doc-releases.md).

129
_index.html Normal file
View File

@ -0,0 +1,129 @@
+++
title = "Knative"
+++
{{< blocks/cover title="Welcome to the Knative Project!" image_anchor="top" height="max" color="dark" >}}
<div class="mx-auto">
<a class="btn btn-lg btn-primary mr-3 mb-4" href="{{< relref "/docs" >}}">
Learn More <i class="fas fa-arrow-alt-circle-right ml-2"></i>
</a>
<a class="btn btn-lg btn-secondary mr-3 mb-4" href="https://github.com/knative">
View Repository <i class="fab fa-github ml-2 "></i>
</a>
<p class="lead mt-5"><h2>Kubernetes-based platform to build, deploy, and manage modern serverless workloads.</h2></p>
<div class="mx-auto mt-5">
{{< blocks/link-down color="info" >}}
</div>
</div>
{{< /blocks/cover >}}
{{% blocks/lead color="primary" %}}
Knative provides a set of middleware components that are essential to build modern, source-centric, and container-based applications that can run anywhere: on premises, in the cloud, or even in a third-party data center.
{{% /blocks/lead %}}
{{% blocks/section %}}
<div class="col-12">
<h1 class="text-center">Essential base primitives for all</h1>
Knative components are built on Kubernetes and codify the best practices shared by successful real-world Kubernetes-based frameworks. It enables developers to focus just on writing interesting code, without worrying about the “boring but difficult” parts of building, deploying, and managing an application.
</div>
{{% /blocks/section %}}
{{% blocks/section %}}
<div class="col-12">
<h1 class="text-center">
Developer-friendly software</h1>
Knative offers a set of reusable components that focuses on solving many mundane but difficult tasks such as orchestrating source-to-container workflows, routing and managing traffic during deployment, auto-scaling your workloads, or binding running services to eventing ecosystems. Developers can even use familiar idioms, languages, and frameworks to deploy any workload: functions, applications, or containers.
</div>
{{% /blocks/section %}}
{{% blocks/section %}}
<div class="col-12">
<h1 class="text-center">Supports popular development patterns</h1>
Knative focuses on an idiomatic developer experience. It supports common development patterns such as GitOps, DockerOps, ManualOps, as well as tools and frameworks such as Django, Ruby on Rails, Spring, and many more.
</div>
{{% /blocks/section %}}
{{% blocks/section %}}
<div class="col-12">
<h1 class="text-center">Best of both worlds: Flexibility and control</h1>
Knative is designed to plug easily into existing build and CI/CD toolchains. By focusing on open-source-first technologies that run anywhere, on any cloud, on any infrastructure supported by Kubernetes, enterprises are free to move their workloads wherever they run best. This offers the flexibility and control customers need to adapt the system to their own unique requirements.
</div>
{{% /blocks/section %}}
{{% blocks/section %}}
<div class="col-12">
<h1 class="text-center">Operator-friendly</h1>
Knative is designed to be run as a service by all major cloud providers. Google currently works with industry leaders such as Pivotal, SAP, Red Hat, IBM, and many others to create the building blocks that will best suit the needs of developers. Knative powers real-world workloads and is also compatible with other cutting-edge technologies such as Kubernetes and Istio.
</div>
{{% /blocks/section %}}
<!----------
{{% blocks/section %}}
<div class="col-12">
<h1 class="text-center">Run your serverless workloads on Kubernetes Engine</h1>
You can now run your serverless workloads on Google Kubernetes Engine (GKE) by enabling the serverless add-on. Powered by Knative, the serverless add-on helps developers orchestrate builds, serving, and events with a single click, enabling the benefits of an idiomatic developer experience with the flexibility and control of GKE.
</div>
{{% /blocks/section %}}
---------->
{{< blocks/section >}}
<h1 class="text-center">Knative Features</h1>
<table align="center">
<thead>
<tr>
<th width="30%">Feature Name</th>
<th width="70%">Feature Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>Serving</td>
<td>Scale to zero, request-driven compute model</td>
</tr>
<tr>
<td>Build</td>
<td>Cloud-native source to container orchestration</td>
</tr>
<tr>
<td>Eventing</td>
<td>Universal subscription, delivery, and management of events</td>
</tr>
<!----------
<tr>
<td>Add-on for GKE</td>
<td>GCP managed stack on Kubernetes</td>
</tr>
----->
</tbody>
</table>
{{< /blocks/section >}}
{{< blocks/section color="light" >}}
{{% blocks/feature icon="fab fa-slack" title="Talk to us on Slack!" url="https://knative.slack.com/" %}}
Interested in learning more, speaking to other contributors, or finding answers?
{{% /blocks/feature %}}
{{% blocks/feature icon="fab fa-github" title="Contributions welcome!" url="./contributing/" %}}
Want to join the fun? New users are always welcome!
{{% /blocks/feature %}}
{{% blocks/feature icon="fab fa-twitter" title="Follow us on Twitter!" url="https://twitter.com/KnativeProject" %}}
For announcement of latest features etc.
{{% /blocks/feature %}}
{{< /blocks/section >}}

BIN
background.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

12
blog/_index.md Normal file
View File

@ -0,0 +1,12 @@
---
title: "Knative blog"
linkTitle: "Blog"
menu:
main:
weight: 30
---
Welcome to the Knative **blog** section. Keep up-to-date with product and
release announcements, read articles, hear about recent social events, and
find out where the Knative team will be talking next.

File diff suppressed because one or more lines are too long

6
blog/articles/_index.md Normal file
View File

@ -0,0 +1,6 @@
---
title: "Knative articles"
linkTitle: "Articles"
weight: 30
---

File diff suppressed because one or more lines are too long

5
blog/events/_index.md Normal file
View File

@ -0,0 +1,5 @@
---
title: "Knative social events"
linkTitle: "Events"
weight: 20
---

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

5
blog/releases/_index.md Normal file
View File

@ -0,0 +1,5 @@
---
title: "Knative releases"
linkTitle: "Releases"
weight: 20
---

10
community/_index.md Normal file
View File

@ -0,0 +1,10 @@
---
title: Community
menu:
main:
weight: 40
---
<!--add blocks of content here to add more sections to the community page -->
<!--Note: This page layout is from the Docsy template. See params.toml for link configuration. -->

View File

@ -1,8 +1,5 @@
# Knative Community Samples
## Sample apps
This directory contains Knative sample applications submitted from the
community.
| Sample Name | Description | Language(s) |
| ----------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Hello World | A quick introduction that highlights how to deploy an app using Knative Serving. | [Clojure](./serving/helloworld-clojure/README.md), [Dart](./serving/helloworld-dart/README.md), [Elixir](./serving/helloworld-elixir/README.md), [Haskell](./serving/helloworld-haskell/README.md), [Rust](./serving/helloworld-rust/README.md), [Shell](./serving/helloworld-shell/README.md), [Swift](./serving/helloworld-swift/README.md), [Vertx](./serving/helloworld-vertx/README.md) |
| Sample Name | Knative Component | Description | Language(s) |
| --------------| ----------------- | -------------------------- | ----------------- |
| Hello World | Serving | A quick introduction that highlights how to deploy an app. | [Clojure](./serving/helloworld-clojure/README.md), [Dart](./serving/helloworld-dart/README.md), [Elixir](./serving/helloworld-elixir/README.md), [Haskell](./serving/helloworld-haskell/README.md), [Rust](./serving/helloworld-rust/README.md), [Shell](./serving/helloworld-shell/README.md), [Swift](./serving/helloworld-swift/README.md), [Vertx](./serving/helloworld-vertx/README.md) |

View File

@ -0,0 +1,13 @@
---
title: "Knative Community Sample Apps"
linkTitle: "Sample Apps"
weight: 100
type: "docs"
---
Get up and running in a language of your choice using one of the community
contributed and maintained sample apps.
Use the following table to view the instructions and sample code in the knative/docs repo.
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -7,7 +7,7 @@ specified, it will use "World" as the TARGET.
## Prerequisites
- A Kubernetes cluster with Knative installed. Follow the
[installation instructions](https://github.com/knative/docs/blob/master/install/README.md)
[installation instructions](../../../install/README.md)
if you need to create one.
- [Docker](https://www.docker.com) installed and running on your local machine,
and a Docker Hub account configured (we'll use it for a container registry).

View File

@ -8,7 +8,7 @@ that you can use for testing. It reads in the env variable `TARGET` and prints
## Prerequisites
- A Kubernetes cluster with Knative installed. Follow the
[installation instructions](https://github.com/knative/docs/blob/master/install/README.md)
[installation instructions](../../../install/README.md)
if you need to create one.
- [Docker](https://www.docker.com) installed and running on your local machine,
and a Docker Hub account configured (we'll use it for a container registry).

View File

@ -7,7 +7,7 @@ specified, it will use "World" as the TARGET.
## Prerequisites
- A Kubernetes cluster with Knative installed. Follow the
[installation instructions](https://github.com/knative/docs/blob/master/install/README.md)
[installation instructions](../../../install/README.md)
if you need to create one.
- [Docker](https://www.docker.com) installed and running on your local machine,
and a Docker Hub account configured (we'll use it for a container registry).

View File

@ -8,7 +8,7 @@ TARGET is not specified, it will use "World" as the TARGET.
## Prerequisites
- A Kubernetes cluster with Knative installed. Follow the
[installation instructions](https://github.com/knative/docs/blob/master/install/README.md)
[installation instructions](../../../install/README.md)
if you need to create one.
- [Docker](https://www.docker.com) installed and running on your local machine,
and a Docker Hub account configured (we'll use it for a container registry).

View File

@ -7,7 +7,7 @@ variable is not specified, the script uses `World`.
## Prerequisites
- A Kubernetes cluster with Knative installed. Follow the
[installation instructions](https://github.com/knative/docs/blob/master/install/README.md)
[installation instructions](../../../install/README.md)
if you need to create one.
- [Docker](https://www.docker.com) installed and running on your local machine,
and a Docker Hub account configured (we'll use it for a container registry).

View File

@ -8,7 +8,7 @@ specified, the app uses "World" as the TARGET.
- You must have a Kubernetes cluster with Knative installed. If you need to
create a cluster, follow the
[installation instructions](https://github.com/knative/docs/blob/master/install/README.md).
[installation instructions](../../../install/README.md).
- You must have [Docker](https://www.docker.com) installed and running on your
local machine, and a Docker Hub account configured (used for container
registry).

View File

@ -15,7 +15,7 @@ You must meet the following requirements to complete this sample:
- A version of the Knative Serving component installed and running on your
Kubernetes cluster. Follow the
[Knative installation instructions](https://github.com/knative/docs/blob/master/install/README.md)
[Knative installation instructions](../../../install/README.md)
if you need to create a Knative cluster.
- The following software downloaded and install on your loacal machine:
- [Java SE 8 or later JDK](http://www.oracle.com/technetwork/java/javase/downloads/index.html).

View File

@ -1,4 +1,9 @@
# Contributor Covenant Code of Conduct
---
title: "Contributor covenant code of conduct"
linkTitle: "Code of conduct"
weight: 10
type: "docs"
---
## Our Pledge

View File

@ -1,4 +1,9 @@
# Contributing to Knative
---
title: "Knative contributor guidelines"
linkTitle: "Contributing to Knative"
weight: 15
type: "docs"
---
So, you want to hack on Knative? Yay!
@ -20,19 +25,19 @@ given the same level of review.
## Working groups
The Knative community is organized into a set of
[working groups](WORKING-GROUPS.md). Any contribution to Knative should be
The Knative contributors community is organized into a set of
[working groups](./WORKING-GROUPS.md). Any contribution to Knative should be
started by first engaging with the appropriate working group.
## Code of conduct
All members of the Knative community must abide by the
[Code of Conduct](CODE-OF-CONDUCT.md). Only by respecting each other can we
[Code of Conduct](./CODE-OF-CONDUCT.md). Only by respecting each other can we
develop a productive, collaborative community.
## Team values
We promote and encourage a set of [shared values](VALUES.md) to improve our
We promote and encourage a set of [shared values](./VALUES.md) to improve our
productivity and inter-personal interactions.
## Contributor license agreements
@ -54,7 +59,7 @@ our
[Team Drive](https://drive.google.com/corp/drive/folders/0APnJ_hRs30R2Uk9PVA)
and sending an email to the appropriate working group's mailing list to let
people know the doc is there. To get write access to the drive, you'll need to
be a [member](ROLES.md#member) of the Knative organization.
be a [member](./ROLES.md#member) of the Knative organization.
We do not yet have a common design document template(TODO).
@ -73,7 +78,7 @@ later join knative-dev if you want immediate access).
## Contributing documentation
For more information about contributing to the Knative documentation, see
[DOCS-CONTRIBUTING.md](DOCS-CONTRIBUTING.md). A lot of the information on this
[DOCS-CONTRIBUTING.md](./DOCS-CONTRIBUTING.md). A lot of the information on this
page still applies, but you'll find the specifics about the docs process there.
## Contributing a feature
@ -81,7 +86,7 @@ page still applies, but you'll find the specifics about the docs process there.
In order to contribute a feature to Knative you'll need to go through the
following steps:
- Discuss your idea with the appropriate [working groups](WORKING-GROUPS.md) on
- Discuss your idea with the appropriate [working groups](./WORKING-GROUPS.md) on
the working group's mailing list.
- Once there is general agreement that the feature is useful,
@ -109,8 +114,8 @@ following steps:
your code changes.
- Submit PRs to knative/serving with user documentation for your feature,
including usage examples when possible. Add documentation to
[knative/docs/serving](https://github.com/knative/docs/tree/master/serving).
including usage examples when possible. Add documentation to the `serving`
folder of [knative/docs](../serving).
_Note that we prefer bite-sized PRs instead of giant monster PRs. It's therefore
preferable if you can introduce large features in small, individually-reviewable
@ -165,7 +170,7 @@ This project uses
[Prow](https://github.com/kubernetes/test-infra/tree/master/prow) to assign
reviewers to the PR, set labels, run tests automatically, and so forth.
See [Reviewing and Merging Pull Requests](REVIEWING.md) for the PR review and
See [Reviewing and Merging Pull Requests](./REVIEWING.md) for the PR review and
merge process used for Knative and for more information about
[Prow](./REVIEWING.md#prow).

View File

@ -1,4 +1,9 @@
# Contributing to the Knative Documentation
---
title: "Contributing to the Knative documentation"
linkTitle: "Contributing to docs"
weight: 20
type: "docs"
---
- [Before you begin](#before-you-begin)
- [Contributing to the documentation](#contributing-to-the-documentation)

View File

@ -1,7 +1,6 @@
# Knative Community
_Important_. Before proceeding, please review the Knative community
[Code of Conduct](CODE-OF-CONDUCT.md).
[Code of Conduct](./CODE-OF-CONDUCT.md).
If you any have questions or concerns, please contact the authors at
knative-code-of-conduct@googlegroups.com.
@ -22,25 +21,25 @@ improving docs, giving talks, etc.
Other Documents
- [Code of Conduct](CODE-OF-CONDUCT.md) - all contributors must abide by the
- [Code of Conduct](./CODE-OF-CONDUCT.md) - all contributors must abide by the
code of conduct
- [Contributing to Knative](CONTRIBUTING.md) - guidelines and advice on becoming
- [Contributing to Knative](./CONTRIBUTING.md) - guidelines and advice on becoming
a contributor
- [Working Groups](WORKING-GROUPS.md) - describes our various working groups
- [Working Group Processes](WORKING-GROUP-PROCESSES.md) - describes how working
- [Working Groups](./WORKING-GROUPS.md) - describes our various working groups
- [Working Group Processes](./WORKING-GROUP-PROCESSES.md) - describes how working
groups operate
- [Technical Oversight Committee](TECH-OVERSIGHT-COMMITTEE.md) - describes our
- [Technical Oversight Committee](./TECH-OVERSIGHT-COMMITTEE.md) - describes our
technical oversight committee
- [Steering Committee](STEERING-COMMITTEE.md) - describes our steering committee
- [Community Roles](ROLES.md) - describes the roles individuals can assume
- [Steering Committee](./STEERING-COMMITTEE.md) - describes our steering committee
- [Community Roles](./ROLES.md) - describes the roles individuals can assume
within the Knative community
- [Reviewing and Merging Pull Requests](REVIEWING.md) - how we manage pull
- [Reviewing and Merging Pull Requests](./REVIEWING.md) - how we manage pull
requests
## Introduction
Knative is a Kubernetes-based platform to build, deploy, and manage modern
serverless workloads. See [Knative docs](https://github.com/knative/docs) for
serverless workloads. See [Knative docs](../docs/README.md) for
in-depth information about using Knative.
## Knative authors
@ -56,24 +55,24 @@ Beyond the official documentation there are endless possibilities for combining
tools, platforms, languages, and products. By submitting a tutorial you can
share your experience and help others who are solving similar problems.
Community tutorials are stored in Markdown files on
[GitHub](./samples/README.md) where they can be reviewed and edited by the
community.
Community tutorials are stored in Markdown files under the `community` folder
[Community Samples](../community/samples/README.md). These documents
are contributed, reviewed, and maintained by the community.
Please submit a Pull Request to the community sample directory under the Knative
component that your tutorial highlights - [Serving](./samples/serving/),
[Eventing](./samples/eventing/), or [Build](./samples/build/). A reviewer will
be assigned to review your submission. They'll work with you to ensure your
submission meets the [style guide](DOCS-CONTRIBUTING.md), but it helps if you
follow it as you write your tutorial.
Submit a Pull Request to the community sample directory under the Knative
component folder that aligns with your document. For example, Knative Serving
samples are under the `serving` folder. A reviewer will be assigned to review your
submission. They'll work with you to ensure that your submission is clear, correct,
and meets the [style guide](./DOCS-CONTRIBUTING.md), but it helps if you follow it
as you write your tutorial.
## Meetings and work groups
Knative has public and recorded bi-weekly community meetings.
Each project has one or more [working groups](WORKING-GROUPS.md) driving the
Each project has one or more [working groups](./WORKING-GROUPS.md) driving the
project, and Knative as a single
[technical oversight community](TECH-OVERSIGHT-COMMITTEE.md) monitoring the
[technical oversight community](./TECH-OVERSIGHT-COMMITTEE.md) monitoring the
overall project.
## How can I help
@ -99,7 +98,7 @@ following resources are available for you:
- [Knative Users](https://groups.google.com/forum/#!forum/knative-users)
- [Knative Developers](https://groups.google.com/forum/#!forum/knative-dev)
For contributors to Knative, we also have [Knative Slack](SLACK-GUIDELINES.md).
For contributors to Knative, we also have [Knative Slack](./SLACK-GUIDELINES.md).
---

View File

@ -1,11 +1,16 @@
# Reviewing and Merging Pull Requests for Knative
---
title: "Reviewing and merging Knative pull requests"
linkTitle: "Pull request guidelines"
weight: 60
type: "docs"
---
As a community, we believe in the value of code reviews for all contributions.
Code reviews increase both the quality and readability of our code base, which
in turn produces high quality software.
This document provides guidelines for how the project's
[Members](ROLES.md#member) review issues and merge pull requests (PRs).
[Members](./ROLES.md#member) review issues and merge pull requests (PRs).
- [Pull requests welcome](#pull-requests-welcome)
- [Code of Conduct](#code-of-conduct)
@ -25,7 +30,7 @@ Please do not ever hesitate to ask a question or submit a PR.
Reviewers are often the first points of contact between new members of the
community and are important in shaping the community. We encourage reviewers to
read the [code of conduct](community/CODE-OF-CONDUCT.md) and to go above and
read the [code of conduct](./CODE-OF-CONDUCT.md) and to go above and
beyond the code of conduct to promote a collaborative and respectful community.
## Code reviewers
@ -64,7 +69,7 @@ require a rebase are not considered active PRs.
### Holds
Any [Approver](ROLES.md#approver) who wants to review a PR but does not have
Any [Approver](./ROLES.md#approver) who wants to review a PR but does not have
time immediately can put a hold on a PR. If you need more time, say so on the PR
discussion and offer an ETA measured in single-digit days at most. Any PR that
has a hold will not be merged until the person who requested the hold acks the
@ -72,10 +77,10 @@ review, withdraws their hold, or is overruled by a majority of approvers.
## Approvers
Merging of PRs is done by [Approvers](ROLES.md#approver).
Merging of PRs is done by [Approvers](./ROLES.md#approver).
As is the case with many open source projects, becoming an Approver is based on
contributions to the project. See our [community roles](ROLES.md) document for
contributions to the project. See our [community roles](./ROLES.md) document for
information on how this is done.
## Merging PRs

View File

@ -1,4 +1,9 @@
# Knative Community Roles
---
title: "Knative community roles"
linkTitle: "Community roles"
weight: 55
type: "docs"
---
This document describes the set of roles individuals might have within the Knative
community, the requirements of each role, and the privileges that each role
@ -211,15 +216,16 @@ approver in an OWNERS file:
- Approver status can be a precondition to accepting large code contributions.
- Demonstrate sound technical judgement.
- Demonstrate sound technical judgment.
- Responsible for project quality control via [code reviews](REVIEWING.md).
- Responsible for project quality control via [code reviews](./REVIEWING.md).
- Focus on holistic acceptance of contribution such as dependencies with other
features, backward / forward compatibility, API and flag definitions, etc.
- Expected to be responsive to review requests as per
[community expectations](REVIEWING.md).
[community expectations](./REVIEWING.md).
- Mentor members and contributors.
@ -258,7 +264,7 @@ Additional requirements for leads of a new working group:
The following apply to the area / component for which one would be an owner.
- Run their working group as explained in the
[Working Group Processes](WORKING-GROUP-PROCESSES.md).
[Working Group Processes](./WORKING-GROUP-PROCESSES.md).
- Design/proposal approval authority over the area / component, though
escalation to the technical oversight committee is possible.
@ -273,7 +279,7 @@ The following apply to the area / component for which one would be an owner.
- Capable of directly applying lgtm + approve labels for any PR.
- Expected to respect OWNERS files approvals and use
[standard procedure for merging code](REVIEWING.md#merging-prs).
[standard procedure for merging code](./REVIEWING.md#merging-prs).
- Expected to work to holistically maintain the health of the project through:

View File

@ -1,4 +1,9 @@
# Slack Usage Guidelines
---
title: "Slack usage guidelines"
linkTitle: "Slack guidelines"
weight: 45
type: "docs"
---
Slack is the main communication platform for Knative outside of our mailing
lists. Its important that conversation stays on topic in each channel, and that

View File

@ -1,4 +1,9 @@
# Knative Steering Committee
---
title: "Knative steering committee"
linkTitle: "Steering committee"
weight: 40
type: "docs"
---
The Knative Steering Committee (SC) defines, evolves, and defends the vision,
values, mission, and scope of the project. _The Steering Committee is a
@ -13,7 +18,7 @@ work-in-progress._
- Non-technical project oversight
- Define policy for the creation and administration of community groups,
including [Working Groups](WORKING-GROUPS.md) and Committees.
including [Working Groups](./WORKING-GROUPS.md) and Committees.
- Define and evolve project governance structures and policies, including
project role assignment and contributor promotion.

View File

@ -1,4 +1,9 @@
# Knative Technical Oversight Committee
---
title: "Knative technical oversight committee"
linkTitle: "Technical oversight committee"
weight: 35
type: "docs"
---
The Knative Technical Oversight Committee (TOC) is responsible for cross-cutting
product and design decisions.
@ -41,8 +46,8 @@ product and design decisions.
community focus
- Ensure the team adheres to our
[code of conduct](CONTRIBUTING.md#code-of-conduct) and respects our
[values](VALUES.md).
[code of conduct](./CONTRIBUTING.md#code-of-conduct) and respects our
[values](./VALUES.md).
- Foster an environment for a healthy and happy community of developers and
contributors.
@ -82,7 +87,7 @@ during the community feedback period at the end of each meeting.
## Committee Members
The members of the TOC are shown below. Membership in the TOC is determined by
the [Steering committee](STEERING-COMMITTEE.md).
the [Steering committee](./STEERING-COMMITTEE.md).
| &nbsp; | Member | Company | Profile |
| ------------------------------------------------------------- | ------------- | ------- | -------------------------------------------------- |

View File

@ -1,4 +1,9 @@
# Knative Team Values
---
title: "Knative team values"
linkTitle: "Team values"
weight: 50
type: "docs"
---
We want to make sure every member has a shared understanding of the goals and
values we hold as a team:
@ -24,14 +29,14 @@ values we hold as a team:
applicability of Knative). Empathize with our users. Focus on the specific
issue at hand, and remember that we all care about the project, first and
foremost.
- Emails to the [mailing lists](CONTRIBUTING.md#contributing-a-feature),
- Emails to the [mailing lists](./CONTRIBUTING.md#contributing-a-feature),
document comments, or meetings are often better and higher bandwidth ways to
communicate complex and nuanced design issues, as opposed to protracted
heated live chats.
- Be mindful of the terminology you are using, it may not be the same as
someone else and cause misunderstanding. To promote clear and precise
communication, define the terms you are using in context.
- See also the [Code of Conduct](CODE-OF-CONDUCT.md), which everyone must
- See also the [Code of Conduct](./CODE-OF-CONDUCT.md), which everyone must
abide by.
- Raising issues is great, suggesting solutions is even better

View File

@ -1,4 +1,9 @@
# Knative Working Group Processes
---
title: "Knative working group processes and guidelines"
linkTitle: "Working group guidelines"
weight: 30
type: "docs"
---
This document describes the processes we use to manage the Knative working
groups. This includes how they are formed, how leads are established, how they
@ -96,7 +101,7 @@ working group:
group to the meeting.
- **Register the Working Group**. Go to
[WORKING-GROUPS.md](https://github.com/knative/serving/blob/master/community/WORKING-GROUPS.md)
[WORKING-GROUPS.md](./WORKING-GROUPS.md)
and add your working group name, the names of the leads, the working group
charter, and a link to the meeting you created.
@ -128,7 +133,7 @@ representatives from multiple organizations as both leads and members. Working
group leads must be Members of the Knative project (that is, have made multiple
contributions to the project in the form of code, design, or documentation).
Please see the [Community Roles](ROLES.md) document for a description of a
Please see the [Community Roles](./ROLES.md) document for a description of a
leads role and requirements.
## Running a working group
@ -184,7 +189,7 @@ Leads from all affected working groups generally work together and come to an
agreeable conclusion.
In all cases, remaining blocking issues can be raised to the
[technical oversight committee](TECH-OVERSIGHT-COMMITTEE.md) to help resolve the
[technical oversight committee](./TECH-OVERSIGHT-COMMITTEE.md) to help resolve the
situation. To trigger an escalation, create an issue in the `knative/serving`
repo and assign it to the **@knative/tech-oversight-committee** team.

View File

@ -1,13 +1,18 @@
# Knative Working Groups
---
title: "Knative working group"
linkTitle: "Join working groups"
weight: 25
type: "docs"
---
Most community activity is organized into _working groups_.
Working groups follow the [contributing](CONTRIBUTING.md) guidelines although
Working groups follow the [contributing](./CONTRIBUTING.md) guidelines although
each of these groups may operate a little differently depending on their needs
and workflow.
When the need arises, a new working group can be created. See the
[working group processes](WORKING-GROUP-PROCESSES.md) for working group proposal
[working group processes](./WORKING-GROUP-PROCESSES.md) for working group proposal
and creation procedures.
The working groups generate design docs which are kept in a
@ -98,7 +103,7 @@ conventions
## Documentation
Knative documentation, especially the [Docs](https://github.com/knative/docs)
Knative documentation, especially the [Docs](../docs/README.md)
repo.
| Artifact | Link |

18
contributing/_index.md Normal file
View File

@ -0,0 +1,18 @@
---
title: "Knative contribution guidelines"
linkTitle: "Contributing"
weight: 20
type: "docs"
menu:
main:
weight: 60
aliases:
- /docs/contribution-guidelines/
---
Learn how to join the community of Knative contributors.
Also see our [Community page](../community) for links to Knative chats, discussions, or Q&A.
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -7,6 +7,7 @@ the version that matches your installed version of Knative.
### Released versions
- [Branch: **`release-0.3`**](https://github.com/knative/docs/tree/release-0.3)
- [Branch: **`release-0.2`**](https://github.com/knative/docs/tree/release-0.2)
- [Branch: **`release-0.1`**](https://github.com/knative/docs/tree/release-0.1)

View File

@ -1,9 +1,9 @@
# Welcome to Knative
Knative (pronounced kay-nay-tiv) extends Kubernetes to provide a set of
middleware components that are essential to build modern, source-centric, and
container-based applications that can run anywhere: on premises, in the cloud,
or even in a third-party data center.
Knative (pronounced kay-nay-tiv) extends
[Kubernetes](https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/)
to provide a set of middleware components that are essential to build modern,
source-centric, and container-based applications that can run anywhere: on
premises, in the cloud, or even in a third-party data center.
Each of the components under the Knative project attempt to identify common
patterns and codify the best practices that are shared by successful,
@ -13,8 +13,8 @@ focus on solving mundane but difficult tasks such as:
- [Deploying a container](./install/getting-started-knative-app.md)
- [Orchestrating source-to-URL workflows on Kubernetes](./serving/samples/source-to-url-go/)
- [Routing and managing traffic with blue/green deployment](./serving/samples/blue-green-deployment.md)
- [Scaling automatically and sizing workloads based on demand](./serving/samples/autoscale-go)
- [Binding running services to eventing ecosystems](./eventing/samples/kubernetes-event-source)
- [Scaling automatically and sizing workloads based on demand](./serving/samples/autoscale-go/)
- [Binding running services to eventing ecosystems](./eventing/samples/kubernetes-event-source/)
Developers on Knative can use familiar idioms, languages, and frameworks to
deploy functions, applications, or containers workloads.
@ -61,8 +61,8 @@ separation between pluggable components, the Knative project establishes an
efficient contributor workflow.
Knative is a diverse, open, and inclusive community. To get involved, see
[CONTRIBUTING.md](./community/CONTRIBUTING.md) and join the
[Knative community](./community/README.md).
[CONTRIBUTING.md](../contributing/CONTRIBUTING.md) and join the
[Knative community](../community/).
Your own path to becoming a Knative contributor can
[begin anywhere](https://github.com/knative/serving/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3Akind%2Fgood-first-issue).
@ -92,7 +92,7 @@ Follow the links below to learn more about Knative.
- [Autoscaling](./serving/samples/autoscale-go/README.md)
- [Source-to-URL deployment](./serving/samples/source-to-url-go/README.md)
- [Binding running services to eventing ecosystems](./eventing/samples/kubernetes-event-source)
- [Binding running services to eventing ecosystems](./eventing/samples/kubernetes-event-source/)
- [Telemetry](./serving/samples/telemetry-go/README.md)
- [REST API sample](./serving/samples/rest-api-go/README.md)
- [All samples for serving](./serving/samples/)

8
docs/_index.md Executable file
View File

@ -0,0 +1,8 @@
---
title: "Welcome to Knative"
linkTitle: "Documentation"
weight: 10
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

17
docs/build/README.md vendored
View File

@ -1,4 +1,3 @@
# Knative Build
A `Build` is a custom resource in Knative that allows you to define a process
that runs to completion and can provide status. For example, fetch, build, and
@ -13,9 +12,9 @@ action, you can define a Knative `Build` through a single configuration file.
Also consider using a Knative `Build` to build the source code of your apps into
container images, which you can then run on
[Knative `serving`](https://github.com/knative/docs/blob/master/serving/README.md).
[Knative `serving`](../serving/README.md).
More information about this use case is demonstrated in
[this sample](https://github.com/knative/docs/blob/master/serving/samples/source-to-url-go).
[this sample](../serving/samples/source-to-url-go).
## Key features of Knative Builds
@ -36,10 +35,10 @@ More information about this use case is demonstrated in
See the following reference topics for information about each of the build
components:
- [`Build`](https://github.com/knative/docs/blob/master/build/builds.md)
- [`BuildTemplate`](https://github.com/knative/docs/blob/master/build/build-templates.md)
- [`Builder`](https://github.com/knative/docs/blob/master/build/builder-contract.md)
- [`ServiceAccount`](https://github.com/knative/docs/blob/master/build/auth.md)
- [`Build`](./builds.md)
- [`BuildTemplate`](./build-templates.md)
- [`Builder`](./builder-contract.md)
- [`ServiceAccount`](./auth.md)
## Install the Knative Build component
@ -53,7 +52,7 @@ in your Kubernetes cluster:
cluster, see [Installing Knative](../install/README.md).
- If you have a component of Knative installed and running, you can
[add and install the Knative Build component](installing-build-component.md).
[add and install the Knative Build component](./installing-build-component.md).
## Configuration syntax example
@ -104,7 +103,7 @@ builds.
#### Complex samples
- [Use Knative to build apps from source code and then run those containers](https://github.com/knative/docs/blob/master/serving/samples/source-to-url-go).
- [Use Knative to build apps from source code and then run those containers](../serving/samples/source-to-url-go).
## Related info

8
docs/build/_index.md vendored Normal file
View File

@ -0,0 +1,8 @@
---
title: "Knative Build"
linkTitle: "Build Component"
weight: 20
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

6
docs/build/auth.md vendored
View File

@ -1,4 +1,8 @@
# Authentication
---
title: "Authentication"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 25
---
This document defines how authentication is provided during execution of a
build.

View File

@ -1,4 +1,8 @@
# Build Templates
---
title: "Build templates"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 35
---
This document defines "Build Templates" and their capabilities.

View File

@ -1,4 +1,8 @@
# Builders
---
title: "Builders"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 15
---
This document defines builder images and the conventions to which they are
expected to adhere.

View File

@ -1,4 +1,8 @@
# Knative `Build` resources
---
title: "Knative `Build` resources"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 5
---
Use the `Build` resource object to create and run on-cluster processes to
completion.

View File

@ -1,4 +1,8 @@
# Creating a simple Knative Build
---
title: "Creating a simple Knative build"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 30
---
Use this page to learn how to create and then run a simple build in Knative. In
this topic, you create a Knative Build configuration file for a simple app,
@ -10,7 +14,7 @@ uses [busybox](https://docs.docker.com/samples/library/busybox/) to simply print
"_hello build_".
Tip: See the
[build code samples](builds.md#get-started-with-knative-build-samples) for
[build code samples](./builds.md#get-started-with-knative-build-samples) for
examples of more complex builds, including code samples that use container
images, authentication, and include multiple steps.
@ -23,14 +27,14 @@ Kubernetes cluster, and it must include the Knative Build component:
cluster, see [Installing Knative](../install/README.md).
- If you have a component of Knative installed and running, you must
[ensure that the Knative Build component is also installed](installing-build-component.md).
[ensure that the Knative Build component is also installed](./installing-build-component.md).
## Creating and running a build
1. Create a configuration file named `build.yaml` that includes the following
code.
This `Build` resource definition includes a single "[step](builds.md#steps)"
This `Build` resource definition includes a single "[step](./builds.md#steps)"
that performs the task of simply printing "_hello build_":
```yaml
@ -48,7 +52,7 @@ Kubernetes cluster, and it must include the Knative Build component:
Notice that this definition specifies `kind` as a `Build`, and that the name
of this `Build` resource is `hello-build`. For more information about
defining build configuration files, See the
[`Build` reference topic](builds.md).
[`Build` reference topic](./builds.md).
1. Deploy the `build.yaml` configuration file and run the `hello-build` build on
Knative by running the
@ -160,7 +164,7 @@ Kubernetes cluster, and it must include the Knative Build component:
To learn more about the objects and commands used in this topic, see:
- [Knative `Build` resources](builds.md)
- [Knative `Build` resources](./builds.md)
- [Kubernetes Init containers](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/)
- [Kubernetes kubectl CLI](https://kubernetes.io/docs/reference/kubectl/kubectl/)

View File

@ -1,4 +1,8 @@
# Installing the Knative Build component
---
title: "Installing the Knative Build component"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 10
---
Before you can run a Knative Build, you must install the Knative Build component
in your Kubernetes cluster. Use this page to add the Knative Build component to
@ -38,7 +42,7 @@ To add only the Knative Build component to an existing installation:
time. Use CTRL + C to exit watch mode.
You are now ready to create and run Knative Builds, see
[Creating a simple Knative Build](../build/creating-builds.md) to get started.
[Creating a simple Knative Build](./creating-builds.md) to get started.
---

View File

@ -1,4 +1,8 @@
# Knative Personas
---
title: "Knative personas"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 20
---
When discussing user actions, it is often helpful to
[define specific user roles](<https://en.wikipedia.org/wiki/Persona_(user_experience)>)

7
docs/concepts/_index.md Executable file
View File

@ -0,0 +1,7 @@
---
title: "Knative Concepts"
linkTitle: "Concepts"
weight: 89
---
Learn about Knative.

View File

@ -1,4 +1,7 @@
# Resources
---
title: "Resources"
weight: 10
---
This page contains information about various tools and technologies that are
useful to anyone developing on Knative.
@ -58,7 +61,7 @@ Docker daemon, which would give the build complete access to your entire
cluster. So that's a very bad idea.
`kaniko` expects to run inside a container, so it's a natural fit for the Build
CRD [builder contract](...). `kaniko` is available as a builder at
CRD [builder contract](../build/builder-contract.md). `kaniko` is available as a builder at
`gcr.io/kaniko-project/executor:latest`, and there's a `BuildTemplate` that
wraps it at
https://github.com/knative/build-templates/blob/master/kaniko/kaniko.yaml. It

View File

@ -1,4 +1,3 @@
# Knative Eventing
Knative Eventing is a system that is designed to address a common need for cloud
native development and provides composable primitives to enable late-binding
@ -62,7 +61,7 @@ event sources. Sources manage registration and delivery of events from external
systems using Kubernetes
[Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/).
Learn more about Eventing development in the
[Eventing work group](https://github.com/knative/docs/blob/master/community/WORKING-GROUPS.md#events).
[Eventing work group](../../contributing/WORKING-GROUPS.md#events).
## Installation
@ -111,13 +110,13 @@ The eventing infrastructure supports two forms of event delivery at the moment:
to the requested destinations and should buffer the events if the destination
Service is unavailable.
![Control plane object model](control-plane.png)
![Control plane object model](./images/control-plane.png)
The actual message forwarding is implemented by multiple data plane components
which provide observability, persistence, and translation between different
messaging protocols.
![Data plane implementation](data-plane.png)
![Data plane implementation](./images/data-plane.png)
<!-- TODO(evankanderson): add documentation for Kafka bus once it is available. -->
@ -132,7 +131,7 @@ part of the `sources` category, so you can list all existing Sources with
`kubectl get sources`. The currently-implemented Sources are described below:
_Want to implement your own source? Check out
[the tutorial](samples/writing-a-source/README.md)._
[the tutorial](./samples/writing-a-source/README.md)._
### KubernetesEventSource
@ -258,11 +257,11 @@ See the [Cronjob Source](samples/cronjob-source) example.
- [Setup Knative Serving](../install/README.md)
- [Install Eventing components](#installation)
- [Run samples](samples/)
- [Run samples](./samples/)
## Configuration
- [Default Channels](channels/default-channels.md) provide a way to choose the
- [Default Channels](./channels/default-channels.md) provide a way to choose the
persistence strategy for Channels across the cluster.
---

8
docs/eventing/_index.md Normal file
View File

@ -0,0 +1,8 @@
---
title: "Knative Eventing"
linkTitle: "Eventing Component"
weight: 60
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -10,8 +10,6 @@ procedure:
```
-->
# Knative Channels
Channels are Kubernetes Custom Resources which define a single event forwarding
and persistence layer. Messaging implementations may provide implementations of
Channels via the

View File

@ -0,0 +1,8 @@
---
title: "Knative Eventing channels"
linkTitle: "Eventing channels"
weight: 40
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -1,4 +1,7 @@
# Default Channels
---
title: "Default channels"
weight: 2
---
The default channel configuration allows channels to be created without
specifying a provisioner. This leaves the selection of channel provisioner and

View File

@ -13,8 +13,6 @@ procedure:
```
-->
# Knative Channels
Channels are Kubernetes Custom Resources which define a single event forwarding and persistence layer.
Messaging implementations may provide implementations of Channels via the
[ClusterChannelProvisioner](https://github.com/knative/eventing/blob/master/pkg/apis/eventing/v1alpha1/cluster_channel_provisioner_types.go#L35)

View File

@ -30,7 +30,7 @@ import (
var (
yamlFile = flag.String("yaml", "eventing/channels/channels.yaml", "The YAML file to parse to generate the mark down.")
templateFile = flag.String("template", "eventing/channels/generator/ReadmeTemplate.gomd", "The template file to fill in.")
mdFile = flag.String("md", "eventing/channels/README.md", "The mark down file to write to. Any existing file will be overwritten.")
mdFile = flag.String("md", "eventing/channels/", "The mark down file to write to. Any existing file will be overwritten.")
)
func main() {

View File

@ -1,12 +1,11 @@
# Debugging Knative Eventing
This is an evolving document on how to debug a non-working Knative Eventing
setup.
## Audience
This document is intended for people that are familiar with
[Knative Eventing](../README.md)'s object model. You don't need to be an expert,
This document is intended for people that are familiar with the object model of
[Knative Eventing](../README.md). You don't need to be an expert,
but do need to know roughly how things fit together.
## Version

View File

@ -0,0 +1,8 @@
---
title: "Debugging Knative Eventing"
linkTitle: "Debugging"
weight: 80
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -0,0 +1,131 @@
# Default Channels
The default channel configuration allows channels to be created without
specifying a provisioner. This leaves the selection of channel provisioner and
properties up to the operator. The operator controls the default settings via a
ConfigMap.
## Creating a default channel
To create a default channel, leave the `spec.provisioner` property blank. The
`spec` property must be provided, but should be empty.
_The content of `spec.arguments` will be cleared for default channels._
This is a valid default channel:
```yaml
apiVersion: eventing.knative.dev/v1alpha1
kind: Channel
metadata:
name: default-channel
namespace: default
spec: {}
```
When the above Channel is created, a mutating admission webhook sets
`spec.provisioner` based on the default provisioner chosen by the operator.
For example, if the default provisioner is named `default-provisioner`:
```yaml
apiVersion: eventing.knative.dev/v1alpha1
kind: Channel
metadata:
name: default-channel
namespace: default
spec:
provisioner:
apiversion: eventing.knative.dev/v1alpha1
kind: ClusterChannelProvisioner
name: default-provisioner
```
### Caveats
#### Arguments cannot be specified by default channels
Currently (v0.3), default channels do not support specifying arguments. If
`spec.arguments` is set when creating a default channel, it will be cleared.
Arguments for default channels may be supported in future versions.
For example:
```yaml
apiVersion: eventing.knative.dev/v1alpha1
kind: Channel
metadata:
name: default-channel
namespace: default
spec:
arguments:
foo: bar
```
Creating the above channel will produce this result:
```yaml
apiVersion: eventing.knative.dev/v1alpha1
kind: Channel
metadata:
name: default-channel
namespace: default
spec:
provisioner:
apiversion: eventing.knative.dev/v1alpha1
kind: ClusterChannelProvisioner
name: default-provisioner
```
## Setting the default channel configuration
The default channel configuration is specified in the ConfigMap named
`default-channel-webhook` in the `knative-eventing` namespace. This ConfigMap
may specify a cluster-wide default channel provisioner and namespace-specific
channel provisioners.
_The namespace-specific defaults override the cluster default for channels
created in the specified namespace._
_Currently (v0.3) default channel arguments cannot be specified, so all default
channels will have empty arguments. Arguments may be supported in future
versions._
The default options are specified like this:
```yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: default-channel-webhook
namespace: knative-eventing
data:
default-channel-config: |
clusterdefault:
apiversion: eventing.knative.dev/v1alpha1
kind: ClusterChannelProvisioner
name: in-memory-channel
namespacedefaults:
some-namespace:
apiversion: eventing.knative.dev/v1alpha1
kind: ClusterChannelProvisioner
name: some-other-provisioner
```
Namespace-specific default take precedence when matched. In the above example, a
Channel created in the `some-namespace` namespace will receive the
`some-other-provisioner` provisioner, not the `in-memory-channel` provisioner.
### Caveats
#### Defaults only apply on channel creation
Defaults are applied by the webhook on Channel creation only. If the default
settings change, the new defaults will apply to newly-created channels only.
Existing channels will not change.
#### Default channel arguments cannot be specified
Because the `default-channel-webhook` ConfigMap doesn't allow for specifying
default arguments, all default channels will have empty arguments, even if they
were initially specified in the create request.

View File

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View File

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View File

@ -0,0 +1,6 @@
---
title: "Knative Eventing samples"
linkTitle: "Sample apps"
weight: 60
type: "docs"
---

View File

@ -1,4 +1,3 @@
# Cron Job Source example
Cron Job Source example shows how to configure Cron Job as event source for
functions.
@ -7,9 +6,9 @@ functions.
### Prerequisites
1. Setup [Knative Serving](https://github.com/knative/docs/tree/master/serving).
1. Setup [Knative Serving](../../../serving).
1. Setup
[Knative Eventing](https://github.com/knative/docs/tree/master/eventing).
[Knative Eventing](../../../eventing).
### Create a Knative Service

View File

@ -0,0 +1,8 @@
---
title: "Cron job source example"
linkTitle: "Cron job source"
weight: 10
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -1,4 +1,3 @@
# GCP Cloud Pub/Sub - Source
This sample shows how to configure the GCP PubSub event source. This event
source is most useful as a bridge from other GCP services, such as
@ -16,10 +15,10 @@ source is most useful as a bridge from other GCP services, such as
project id, and also set your project ID as default using
`gcloud config set project $PROJECT_ID`.
1. Setup [Knative Serving](https://github.com/knative/docs/blob/master/install)
1. Setup [Knative Serving](../../../install)
1. Setup
[Knative Eventing](https://github.com/knative/docs/tree/master/eventing). In
[Knative Eventing](../../../eventing). In
addition, install the GCP PubSub event source from `release-gcppubsub.yaml`:
```shell

View File

@ -0,0 +1,8 @@
---
title: "GCP Cloud Pub/Sub source"
linkTitle: "Pub/Sub source"
weight: 20
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -1,4 +1,3 @@
# GitHub Source example
GitHub Source example shows how to wire GitHub events for consumption
by a Knative Service.
@ -10,15 +9,14 @@ by a Knative Service.
You will need:
1. An internet-accessible Kubernetes cluster with Knative Serving
installed. Follow the [installation
instructions](https://github.com/knative/docs/blob/master/install/README.md)
installed. Follow the [installation instructions](../../../install/README.md)
if you need to create one.
1. Ensure Knative Serving is [configured with a domain
name](https://github.com/knative/docs/blob/master/serving/using-a-custom-domain.md)
name](../../../serving/using-a-custom-domain.md)
that allows GitHub to call into the cluster.
1. If you're using GKE, you'll also want to [assign a static IP address](https://github.com/knative/docs/blob/master/serving/gke-assigning-static-ip-address.md).
1. If you're using GKE, you'll also want to [assign a static IP address](../../../serving/gke-assigning-static-ip-address.md).
1. Install [Knative
Eventing](https://github.com/knative/docs/tree/master/eventing). Those
Eventing](../../../eventing). Those
instructions also install the default eventing sources, including
the `GitHubSource` we'll use.

View File

@ -0,0 +1,8 @@
---
title: "GitHub source"
linkTitle: "GitHub source"
weight: 30
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -1,4 +1,3 @@
# Sample: Binding running services to an IoT core
This sample shows how to bind a running service to an
[IoT core](https://cloud.google.com/iot-core/) using
@ -68,7 +67,7 @@ export IOTCORE_TOPIC_DEVICE="iot-demo-device-pubsub-topic"
```
1. Setup
[Knative Eventing](https://github.com/knative/docs/tree/master/eventing).
[Knative Eventing](../../../eventing).
1. Install the
[in-memory `ClusterChannelProvisioner`](https://github.com/knative/eventing/tree/master/config/provisioners/in-memory-channel).

View File

@ -0,0 +1,8 @@
---
title: "Binding running services to an IoT core"
linkTitle: "IoT core"
weight: 40
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -1,4 +1,3 @@
# Kubernetes Event Source example
Kubernetes Event Source example shows how to wire kubernetes cluster events for
consumption by a function that has been implemented as a Knative Service.
@ -7,9 +6,9 @@ consumption by a function that has been implemented as a Knative Service.
### Prerequisites
1. Setup [Knative Serving](https://github.com/knative/docs/tree/master/serving).
1. Setup [Knative Serving](../../../serving).
1. Setup
[Knative Eventing](https://github.com/knative/docs/tree/master/eventing).
[Knative Eventing](../../../eventing).
### Channel

View File

@ -0,0 +1,8 @@
---
title: "Kubernetes event source"
linkTitle: "Kubernetes event"
weight: 50
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -1,4 +1,7 @@
# Bootstrap the Project
---
title: "Bootstrap the project"
weight: 10
---
We'll use Kubebuilder to bootstrap the project and provide common controller
boilerplate and scaffolding. Check out the
@ -50,4 +53,4 @@ your project's vendor directory.
The result of this command in the reference project can be viewed at
https://github.com/grantr/sample-source/pull/1.
Next: [Define The Source Resource](02-define-source.md)
Next: [Define The Source Resource](./02-define-source.md)

View File

@ -1,4 +1,7 @@
# Define The Source Resource
---
title: "Define the source resource"
weight: 20
---
We'll use Kubebuilder to generate a new Kubernetes Custom Resource for our
source. Check out the [Kubebuilder book](https://book.kubebuilder.io/) to learn
@ -199,4 +202,4 @@ make
These edits in the reference project can be viewed at
https://github.com/grantr/sample-source/pull/4.
Next: [Reconcile Sources](03-reconcile-sources.md)
Next: [Reconcile Sources](./03-reconcile-sources.md)

View File

@ -1,4 +1,7 @@
# Reconcile Sources
---
title: "Reconcile sources"
weight: 30
---
Now that we have a Source CRD defined with Sink and SinkURI fields, we'll need
to use those fields in the Source controller to resolve Sink references and set
@ -215,4 +218,4 @@ g.Eventually(func() error {
These edits in the reference project can be viewed at
https://github.com/grantr/sample-source/pull/9.
Next: [Publish to Cluster](04-publish-to-cluster.md)
Next: [Publish to Cluster](./04-publish-to-cluster.md)

View File

@ -1,4 +1,7 @@
# Publish to a Kubernetes Cluster
---
title: "Publish to a Kubernetes cluster"
weight: 40
---
So far we've only tested the controller code locally. Now we'd like to deploy it
to a cluster and test it working.
@ -193,4 +196,4 @@ kubectl get pods -n sample-source-system
Now you can use the verification procedure outlined above in
[Create a sample source](#create-a-sample-source).
Next: Dispatching Events
(TODO) Next: Dispatching Events

View File

@ -1,4 +1,3 @@
# Writing an Event Source the Hard Way
This tutorial walks you through creating an event source for Knative Eventing
"the hard way", without using helper objects like ContainerSource.
@ -29,19 +28,19 @@ You'll need these tools installed:
## Steps
- [Bootstrap Project](01-bootstrap.md)
- [Define The Source Resource](02-define-source.md)
- [Reconcile Sources](03-reconcile-sources.md)
- [Publish to Cluster](04-publish-to-cluster.md)
- Dispatching Events
1. [Bootstrap Project](./01-bootstrap.md)
1. [Define The Source Resource](./02-define-source.md)
1. [Reconcile Sources](./03-reconcile-sources.md)
1. [Publish to Cluster](./04-publish-to-cluster.md)
1. (TODO) Dispatching Events
## Alternatives
Kubebuilder not your thing? Prefer the easy way? Check out these alternatives.
- [ContainerSource](https://github.com/knative/docs/tree/master/eventing/sources#meta-sources)
- [ContainerSource](../../../eventing/sources/README.md#meta-sources)
is an easy way to turn any dispatcher container into an Event Source.
- [Auto ContainerSource](https://github.com/knative/docs/tree/master/eventing/sources#meta-sources)
- [Auto ContainerSource](../../../eventing/sources/README.md#meta-sources)
is an even easier way to turn any dispatcher container into an Event Source
without writing any controller code. It requires Metacontroller.
- [Metacontroller](https://metacontroller.app) can be used to write controllers

View File

@ -0,0 +1,8 @@
---
title: "Writing an eventing source the hard way"
linkTitle: "Writing an eventing source"
weight: 60
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -2,7 +2,7 @@
This is a generated file and should not be changed manually. All changes should follow the
procedure:
1. Update the information in [`sources.yaml`](sources.yaml).
1. Update the information in [`sources.yaml`](./sources.yaml).
2. Run the generator tool:
```shell
@ -10,47 +10,40 @@ procedure:
```
-->
# Knative Event Sources
Event Sources are Kubernetes Custom Resources which provide a mechanism for registering interest in
a class of events from a particular software system. Since different event sources may be described
by different Custom Resources, this page provides an index of the available source resource types as
well as links to installation instructions.
Event Sources are Kubernetes Custom Resources which provide a mechanism for
registering interest in a class of events from a particular software system.
Since different event sources may be described by different Custom Resources,
this page provides an index of the available source resource types as well as
links to installation instructions.
This is a non-exhaustive list of Event sources for Knative.
### Inclusion in this list is not an endorsement, nor does it imply any level of support.
## Sources
These are sources that are installed as `CRD`s.
Name | Status | Support | Description
--- | --- | --- | ---
[AWS SQS](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/aws_sqs_types.go) | Proof of Concept | None | Brings [AWS Simple Quele Service](https://aws.amazon.com/sqs/) messages into Knative.
[Cron Job](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/cron_job_types.go) | Proof of Concept | None | Uses an in-memory timer to produce events on the specified Cron schedule.
[GCP PubSub](https://github.com/knative/eventing-sources/blob/master/contrib/gcppubsub/pkg/apis/sources/v1alpha1/gcp_pubsub_types.go) | Proof of Concept | None | Brings [GCP PubSub](https://cloud.google.com/pubsub/) messages into Knative.
[GitHub](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/githubsource_types.go) | Proof of Concept | None | Registers for events of the specified types on the specified GitHub organization/repository. Brings those events into Knative.
[GitLab](https://gitlab.com/triggermesh/gitlabsource) | Proof of Concept | None | Registers for events of the specified types on the specified GitLab repository. Brings those events into Knative.
[Google Cloud Scheduler](https://github.com/vaikas-google/csr) | Active Development | None | Create, update, and delete [Google Cloud Scheduler](https://cloud.google.com/scheduler/) Jobs. When those jobs are triggered, receive the event inside Knative.
[Google Cloud Storage](https://github.com/vaikas-google/gcs) | Active Development | None | Registers for events of the specified types on the specified Google Cloud Storage bucket and optional object prefix. Brings those events into Knative.
[Kubernetes](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/kuberneteseventsource_types.go) | Active Development | Knative | Brings Kubernetes cluster events into Knative. Uses ContainerSource for underlying infrastructure.
| Name | Status | Support | Description |
| ------------------------------------------------------------------------------------------------------------------------------------- | ------------------ | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [AWS SQS](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/aws_sqs_types.go) | Proof of Concept | None | Brings [AWS Simple Quele Service](https://aws.amazon.com/sqs/) messages into Knative. |
| [Cron Job](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/cron_job_types.go) | Proof of Concept | None | Uses an in-memory timer to produce events on the specified Cron schedule. |
| [GCP PubSub](https://github.com/knative/eventing-sources/blob/master/contrib/gcppubsub/pkg/apis/sources/v1alpha1/gcp_pubsub_types.go) | Proof of Concept | None | Brings [GCP PubSub](https://cloud.google.com/pubsub/) messages into Knative. |
| [GitHub](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/githubsource_types.go) | Proof of Concept | None | Registers for events of the specified types on the specified GitHub organization/repository. Brings those events into Knative. |
| [GitLab](https://gitlab.com/triggermesh/gitlabsource) | Proof of Concept | None | Registers for events of the specified types on the specified GitLab repository. Brings those events into Knative. |
| [Google Cloud Scheduler](https://github.com/vaikas-google/csr) | Active Development | None | Create, update, and delete [Google Cloud Scheduler](https://cloud.google.com/scheduler/) Jobs. When those jobs are triggered, receive the event inside Knative. |
| [Google Cloud Storage](https://github.com/vaikas-google/gcs) | Active Development | None | Registers for events of the specified types on the specified Google Cloud Storage bucket and optional object prefix. Brings those events into Knative. |
| [Kubernetes](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/kuberneteseventsource_types.go) | Active Development | Knative | Brings Kubernetes cluster events into Knative. Uses ContainerSource for underlying infrastructure. |
## Meta Sources
These are not directly usable, but make writing a Source much easier.
Name | Status | Support | Description
--- | --- | --- | ---
[Auto Container Source](https://github.com/Harwayne/auto-container-source) | Proof of Concept | None | AutoContainerSource is a controller that allows the Source CRDs _without_ needing a controller. It notices CRDs with a specific label and starts controlling resources of that type. It utilizes Container Source as underlying infrastructure.
[Container Source](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/containersource_types.go) | Active Development | Knative | Container Source is a generic controller. Given an Image URL, it will keep a single `Pod` running with the specified image, environment, and arguments. It is used by multiple other Sources as underlying infrastructure.
[Sample Source](https://github.com/grantr/sample-source) | Proof of Concept | None | SampleSource is a reference implementation supporting the [Writing an Event Source the Hard Way tutorial](../samples/writing-a-source).
| Name | Status | Support | Description |
| ------------------------------------------------------------------------------------------------------------------------------ | ------------------ | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Auto Container Source](https://github.com/Harwayne/auto-container-source) | Proof of Concept | None | AutoContainerSource is a controller that allows the Source CRDs _without_ needing a controller. It notices CRDs with a specific label and starts controlling resources of that type. It utilizes Container Source as underlying infrastructure. |
| [Container Source](https://github.com/knative/eventing-sources/blob/master/pkg/apis/sources/v1alpha1/containersource_types.go) | Active Development | Knative | Container Source is a generic controller. Given an Image URL, it will keep a single `Pod` running with the specified image, environment, and arguments. It is used by multiple other Sources as underlying infrastructure. |
| [Sample Source](https://github.com/grantr/sample-source) | Proof of Concept | None | SampleSource is a reference implementation supporting the [Writing an Event Source the Hard Way tutorial](../samples/writing-a-source). |
### ContainerSource Containers

View File

@ -0,0 +1,8 @@
---
title: "Knative Eventing sources"
linkTitle: "Eventing sources"
weight: 20
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -13,8 +13,6 @@ procedure:
```
-->
# Knative Event Sources
Event Sources are Kubernetes Custom Resources which provide a mechanism for registering interest in
a class of events from a particular software system. Since different event sources may be described
by different Custom Resources, this page provides an index of the available source resource types as

View File

@ -1,4 +1,8 @@
# Performing a Custom Knative Installation
---
title: "Performing a Custom Knative Installation"
linkTitle: "Custom Install"
weight: 10
---
Use this guide to perform a custom installation of Knative on an existing
Kubernetes cluster. Knative's pluggable components allow you to install only
@ -32,7 +36,7 @@ to run multiple installation commands.
> Note: [Gloo](https://gloo.solo.io/) is available as an alternative to Istio.
> Gloo is not currently compatible with the Knative Eventing component.
> [Click here](Knative-with-Gloo.md) to install Knative with Gloo.
> [Click here](./Knative-with-Gloo.md) to install Knative with Gloo.
Knative depends on [Istio](https://istio.io/docs/concepts/what-is-istio/) for
traffic routing and ingress. You have the option of injecting Istio sidecars and
@ -204,8 +208,8 @@ files from the Knative repositories:
| [`in-memory-channel.yaml`][4.3] | Installs only the in-memory channel provisioner. | Serving component, Eventing component |
| [`kafka.yaml`][4.4] | Installs only the Kafka channel provisioner. | Serving component, Eventing component |
| **knative/eventing-sources** | | |
| [`release.yaml`][5.1]† | Installs the following sources: [Kubernetes][6], [GitHub][6.1], [Container image][6.2], [CronJob][6.3] | Serving component, Eventing component |
| [`gcppubsub.yaml`][5.2] | Installs the following sources: [PubSub][6.4] | Serving component, Eventing component |
| [`release.yaml`][5.1]† | Installs the following sources: [Kubernetes][6], [GitHub][6.1], [Container image][../eventing#containersource], [CronJob][6.2] | Serving component, Eventing component |
| [`release-gcppubsub.yaml`][5.2] | Installs the following sources: [PubSub][6.3] | Serving component, Eventing component |
| [`message-dumper.yaml`][5.3] | Installs an Event logging service for debugging. | Serving component, Eventing component |
| **Cluster roles** | | |
| [`clusterrole.yaml`][7]† | Enables the Build and Serving components to interact. | Serving component, Build component |
@ -216,6 +220,7 @@ for details about installing the various supported observability plug-ins.
† These are the recommended standard install files suitable for most use cases.
<!-- USE ONLY FULLY QUALIFIED URLS -->
[1]: https://github.com/knative/serving/releases/tag/v0.4.0
[1.1]: https://github.com/knative/serving/releases/download/v0.4.0/serving.yaml
[1.2]:
@ -253,10 +258,9 @@ for details about installing the various supported observability plug-ins.
[6]:
https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.12/#event-v1-core
[6.1]: https://developer.github.com/v3/activity/events/types/
[6.2]: https://github.com/knative/docs/tree/master/eventing#containersource
[6.3]:
[6.2]:
https://github.com/knative/eventing-sources/blob/master/samples/cronjob-source/README.md
[6.4]: https://cloud.google.com/pubsub/
[6.3]: https://cloud.google.com/pubsub/
[7]: https://raw.githubusercontent.com/knative/serving/v0.4.0/third_party/config/build/clusterrole.yaml
### Installing Knative
@ -365,4 +369,12 @@ guides to help you get started with Knative:
- [Knative Eventing overview](../eventing/README.md)
- [Knative Eventing code samples](../eventing/samples)
- [Knative Eventing code samples](../eventing/samples/)
---
Except as otherwise noted, the content of this page is licensed under the
[Creative Commons Attribution 4.0 License](https://creativecommons.org/licenses/by/4.0/),
and code samples are licensed under the
[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0).

View File

@ -1,9 +1,13 @@
# Knative Install on Azure Kubernetes Service (AKS)
---
title: "Install on Azure Kubernetes Service (AKS)"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 15
---
This guide walks you through the installation of the latest version of Knative
using pre-built images.
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Before you begin
@ -130,7 +134,7 @@ recommended configuration for a cluster is:
> Note: [Gloo](https://gloo.solo.io/) is available as an alternative to Istio.
> Gloo is not currently compatible with the Knative Eventing component.
> [Click here](Knative-with-Gloo.md) to install Knative with Gloo.
> [Click here](./Knative-with-Gloo.md) to install Knative with Gloo.
Knative depends on Istio.
@ -166,7 +170,7 @@ rerun the command to see the current status.
The following commands install all available Knative components. To customize
your Knative installation, see
[Performing a Custom Knative Installation](Knative-custom-install.md).
[Performing a Custom Knative Installation](./Knative-custom-install.md).
1. If you are upgrading from Knative 0.3.x: Update your domain and static IP
address to be associated with the LoadBalancer `istio-ingressgateway` instead
@ -204,7 +208,7 @@ Now that your cluster has Knative installed, you can see what Knative has to
offer.
To deploy your first app with Knative, follow the step-by-step
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
To get started with Knative Eventing, pick one of the

View File

@ -1,11 +1,15 @@
# Knative Install on Docker for Mac
---
title: "Install on Docker for Mac"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 15
---
This guide walks you through the installation of the latest version of
[Knative Serving](https://github.com/knative/serving) using pre-built images and
demonstrates creating and deploying an image of a sample "hello world" app onto
the newly created Knative cluster.
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Before you begin
@ -95,7 +99,7 @@ Now that your cluster has Knative installed, you're ready to deploy an app.
If you'd like to follow a step-by-step guide for deploying your first app on
Knative, check out the
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
If you'd like to view the available sample apps and deploy one of your choosing,

View File

@ -1,9 +1,13 @@
# Knative Install on Google Kubernetes Engine
---
title: "Install on Google Kubernetes Engine"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 15
---
This guide walks you through the installation of the latest version of all
Knative components using pre-built images.
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Before you begin
@ -130,7 +134,7 @@ Admin permissions are required to create the necessary
> Note: [Gloo](https://gloo.solo.io/) is available as an alternative to Istio.
> Gloo is not currently compatible with the Knative Eventing component.
> [Click here](Knative-with-Gloo.md) to install Knative with Gloo.
> [Click here](./Knative-with-Gloo.md) to install Knative with Gloo.
Knative depends on Istio.
@ -167,7 +171,7 @@ rerun the command to see the current status.
The following commands install all available Knative components as well as the
standard set of observability plugins. To customize your Knative installation,
see [Performing a Custom Knative Installation](Knative-custom-install.md).
see [Performing a Custom Knative Installation](./Knative-custom-install.md).
1. If you are upgrading from Knative 0.3.x: Update your domain and static IP
address to be associated with the LoadBalancer `istio-ingressgateway` instead
@ -206,7 +210,7 @@ Now that your cluster has Knative installed, you can see what Knative has to
offer.
To deploy your first app with Knative, follow the step-by-step
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
To get started with Knative Eventing, pick one of the

View File

@ -1,4 +1,8 @@
# Knative Install on [Gardener](https://github.com/gardener)
---
title: "Install on Gardener"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 10
---
This guide walks you through the installation of the latest version of Knative
using pre-built images on a [Gardener](https://gardener.cloud) created cluster
@ -9,7 +13,7 @@ or have a look at the
project. To learn more about this open source project, read the
[blog on kubernetes.io](https://kubernetes.io/blog/2018/05/17/gardener/).
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Before you begin
@ -35,7 +39,7 @@ Knative requires a Kubernetes cluster v1.11 or newer.
your project. You can skip this step if you create your cluster using the
user interface; it is only needed for programmatic access, make sure you set
`export KUBECONFIG=garden-my-project.yaml` in your shell.
![Download kubeconfig for Gardener](images/gardener_service_account.png "downloading the kubeconfig using a service account")
![Download kubeconfig for Gardener](../images/gardener_service_account.png "downloading the kubeconfig using a service account")
### Creating a Kubernetes cluster
@ -51,7 +55,7 @@ kubectl apply --filename my-cluster.yaml
The easier alternative is to create the cluster following the cluster creation
wizard in the Gardener dashboard:
![shoot creation](images/gardener_shoot_creation.png "shoot creation via the dashboard")
![shoot creation](../images/gardener_shoot_creation.png "shoot creation via the dashboard")
### Configure kubectl for your cluster
@ -102,7 +106,7 @@ rerun the command to see the current status.
The following commands install all available Knative components as well as the
standard set of observability plugins. To customize your Knative installation,
see [Performing a Custom Knative Installation](Knative-custom-install.md).
see [Performing a Custom Knative Installation](./Knative-custom-install.md).
1. If you are upgrading from Knative 0.3.x: Update your domain and static IP
address to be associated with the LoadBalancer `istio-ingressgateway` instead
@ -171,7 +175,7 @@ Now that your cluster has Knative installed, you can see what Knative has to
offer.
To deploy your first app with Knative, follow the step-by-step
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
To get started with Knative Eventing, pick one of the

View File

@ -1,4 +1,8 @@
# Knative Install using Gloo on a Kubernetes Cluster
---
title: "Knative Install using Gloo on a Kubernetes Cluster"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 10
---
This guide walks you through the installation of the latest version of Knative
using pre-built images.
@ -70,7 +74,7 @@ Now that your cluster has Knative installed, you can see what Knative has to
offer.
To deploy your first app with Knative, follow the step-by-step
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
Note that when you've finished deploying the app, you'll need to connect to the
@ -94,7 +98,7 @@ curl -H "Host: helloworld-go.myproject.example.com" $GATEWAY_URL
```
The full instructions for the
[Go Hello-World Sample](../serving/samples/helloworld-go) with this substitution
[Go Hello-World Sample](../serving/samples/hello-world/helloworld-go) with this substitution
are published bellow:
### Deploy the Hello-World Go App:
@ -261,4 +265,4 @@ kubectl delete --filename service.yaml
```
Great! our Knative ingress is up and running. See
https://github.com/knative/docs for more information on using Knative.
[Knative documentation](../README.md) for more information on using Knative.

View File

@ -1,4 +1,8 @@
# Knative Install on IBM Cloud Private
---
title: "Install on IBM Cloud Private"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 15
---
This guide walks you through the installation of the latest version of
[Knative Serving](https://github.com/knative/serving) and
@ -7,7 +11,7 @@ demonstrates creating and deploying an image of a sample `hello world` app onto
the newly created Knative cluster on
[IBM Cloud Private](https://www.ibm.com/cloud/private).
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Before you begin
@ -124,7 +128,7 @@ the`knative-build` and `knative-monitoring` namespaces.
The following commands install all available Knative components as well as the
standard set of observability plugins. To customize your Knative installation,
see [Performing a Custom Knative Installation](Knative-custom-install.md).
see [Performing a Custom Knative Installation](./Knative-custom-install.md).
1. If you are upgrading from Knative 0.3.x: Update your domain and static IP
address to be associated with the LoadBalancer `istio-ingressgateway` instead
@ -202,7 +206,7 @@ Now that your cluster has Knative installed, you can see what Knative has to
offer.
To deploy your first app with Knative, follow the step-by-step
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
> **Note**: When looking up the IP address to use for accessing your app, you

View File

@ -1,4 +1,8 @@
# Knative Install on IBM Cloud Kubernetes Service (IKS)
---
title: "Install on IBM Cloud Kubernetes Service (IKS)"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 10
---
This guide walks you through the installation of the latest version of Knative
using pre-built images.
@ -9,7 +13,7 @@ You may also have it all installed for you by clicking the button below:
More
[instructions on the deploy button here](https://git.ng.bluemix.net/start-with-knative/toolchain/blob/master/README.md).
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Before you begin
@ -163,7 +167,7 @@ rerun the command to see the current status.
The following commands install all available Knative components as well as the
standard set of observability plugins. To customize your Knative installation,
see [Performing a Custom Knative Installation](Knative-custom-install.md).
see [Performing a Custom Knative Installation](./Knative-custom-install.md).
1. If you are upgrading from Knative 0.3.x: Update your domain and static IP
address to be associated with the LoadBalancer `istio-ingressgateway` instead
@ -201,7 +205,7 @@ Now that your cluster has Knative installed, you can see what Knative has to
offer.
To deploy your first app with Knative, follow the step-by-step
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
To get started with Knative Eventing, pick one of the

View File

@ -1,11 +1,15 @@
# Knative Install on Minikube
---
title: "Install on Minikube"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 10
---
This guide walks you through the installation of the latest version of
[Knative Serving](https://github.com/knative/serving) using pre-built images and
demonstrates creating and deploying an image of a sample "hello world" app onto
the newly created Knative cluster.
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Before you begin
@ -55,7 +59,7 @@ minikube start --memory=8192 --cpus=4 \
> Note: [Gloo](https://gloo.solo.io/) is available as an alternative to Istio.
> Gloo is not currently compatible with the Knative Eventing component.
> [Click here](Knative-with-Gloo.md) to install Knative with Gloo.
> [Click here](./Knative-with-Gloo.md) to install Knative with Gloo.
Knative depends on Istio. Run the following to install Istio. (We are changing
`LoadBalancer` to `NodePort` for the `istio-ingress` service).
@ -133,7 +137,7 @@ Now that your cluster has Knative installed, you're ready to deploy an app.
If you'd like to follow a step-by-step guide for deploying your first app on
Knative, check out the
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
If you'd like to view the available sample apps and deploy one of your choosing,

View File

@ -1,4 +1,8 @@
# Knative Install on Minishift
---
title: "Install on Minishift"
linkTitle: "Minishift"
weight: 10
---
This guide walks you through the installation of the latest version of
[Knative Serving](https://github.com/knative/serving) on an
@ -6,11 +10,11 @@ This guide walks you through the installation of the latest version of
demonstrates creating and deploying an image of a sample "hello world" app onto
the newly created Knative cluster.
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Minishift setup
- Setup minishift based instructions from
- Set up minishift based instructions from
https://docs.okd.io/latest/minishift/getting-started/index.html
- Ensure `minishift` is setup correctly by running the command:
@ -149,13 +153,13 @@ until oc login -u admin -p admin; do sleep 5; done;
### Installing Istio
Knative depends on Istio. The
[istio-openshift-policies.sh](scripts/istio-openshift-policies.sh) does run the
[istio-openshift-policies.sh](./scripts/istio-openshift-policies.sh) does run the
required commands to configure necessary
[privileges](https://istio.io/docs/setup/kubernetes/platform-setup/openshift/)
to the service accounts used by Istio.
```shell
curl -s https://raw.githubusercontent.com/knative/docs/master/install/scripts/istio-openshift-policies.sh | bash
curl -s https://raw.githubusercontent.com/knative/docs/master/docs/install/scripts/istio-openshift-policies.sh | bash
```
1. Run the following to install Istio:
@ -185,12 +189,12 @@ curl -s https://raw.githubusercontent.com/knative/docs/master/install/scripts/is
The following section details on deploying
[Knative Serving](https://github.com/knative/serving) to OpenShift.
The [knative-openshift-policies.sh](scripts/knative-openshift-policies.sh) runs
The [knative-openshift-policies.sh](./scripts/knative-openshift-policies.sh) runs
the required commands to configure necessary privileges to the service accounts
used by Knative.
```shell
curl -s https://raw.githubusercontent.com/knative/docs/master/install/scripts/knative-openshift-policies.sh | bash
curl -s https://raw.githubusercontent.com/knative/docs/master/docs/install/scripts/knative-openshift-policies.sh | bash
```
> You can safely ignore the warnings:

View File

@ -1,4 +1,8 @@
# Knative Install on OpenShift (via `oc cluster up`)
---
title: "Install on OpenShift"
linkTitle: "OpenShift"
weight: 15
---
This guide walks you through the installation of the latest version of
[Knative Serving](https://github.com/knative/serving) on an
@ -6,7 +10,7 @@ This guide walks you through the installation of the latest version of
demonstrates creating and deploying an image of a sample "hello world" app onto
the newly created Knative cluster.
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Before you begin
@ -33,9 +37,12 @@ You will now have the `oc` (and `kubectl`) binaries in your local directory.
## Scripted cluster setup and installation
For Linux and Mac, once you have `oc` present on your machine and in your `PATH`, you can run a
[script](scripts/knative-with-openshift.sh) that automates the steps on this
page. It will:
For Linux and Mac, you can optionally run a
[script](./scripts/knative-with-openshift.sh) that automates the steps on this
page.
Once you have `oc` present on your machine and in your `PATH`, you can simply
run [this script](./scripts/knative-with-openshift.sh); it will:
- Create a new OpenShift cluster on your local machine with `oc cluster up`
- Install Istio and Knative serving
@ -98,7 +105,7 @@ oc label namespace default istio-injection=enabled
> Note: [Gloo](https://gloo.solo.io/) is available as an alternative to Istio.
> Gloo is not currently compatible with the Knative Eventing component.
> [Click here](Knative-with-Gloo.md) to install Knative with Gloo.
> [Click here](./Knative-with-Gloo.md) to install Knative with Gloo.
Knative depends on Istio. First, run the following to grant the necessary
privileges to the service accounts istio will use:
@ -210,7 +217,7 @@ Now that your cluster has Knative installed, you're ready to deploy an app.
If you'd like to follow a step-by-step guide for deploying your first app on
Knative, check out the
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
If you'd like to view the available sample apps and deploy one of your choosing,

View File

@ -1,9 +1,13 @@
# Knative Install on Pivotal Container Service
---
title: "Install on Pivotal Container Service"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 10
---
This guide walks you through the installation of the latest version of Knative
using pre-built images.
You can find [guides for other platforms here](README.md).
You can find [guides for other platforms here](./README.md).
## Before you begin
@ -76,7 +80,7 @@ rerun the command to see the current status.
The following commands install all available Knative components as well as the
standard set of observability plugins. To customize your Knative installation,
see [Performing a Custom Knative Installation](Knative-custom-install.md).
see [Performing a Custom Knative Installation](./Knative-custom-install.md).
1. If you are upgrading from Knative 0.3.x: Update your domain and static IP
address to be associated with the LoadBalancer `istio-ingressgateway` instead
@ -114,7 +118,7 @@ Now that your cluster has Knative installed, you can see what Knative has to
offer.
To deploy your first app with Knative, follow the step-by-step
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
To get started with Knative Eventing, pick one of the

View File

@ -1,4 +1,8 @@
# Knative Install on a Kubernetes Cluster
---
title: "Install on a Kubernetes cluster"
linkTitle: "On existing cluster"
weight: 15
---
This guide walks you through the installation of the latest version of Knative
using pre-built images.
@ -32,11 +36,13 @@ Containers.
about an unknown type, run the second `kubectl apply` command again.
1. Label the default namespace with `istio-injection=enabled`:
```bash
kubectl label namespace default istio-injection=enabled
```
1. Monitor the Istio components until all of the components show a `STATUS` of
`Running` or `Completed`:
```bash
kubectl get pods --namespace istio-system
```
@ -52,18 +58,20 @@ rerun the command to see the current status.
The following commands install all available Knative components. To customize
your Knative installation, see
[Performing a Custom Knative Installation](Knative-custom-install.md).
[Performing a Custom Knative Installation](./Knative-custom-install.md).
1. If you are upgrading from Knative 0.3.x: Update your domain and static IP
address to be associated with the LoadBalancer `istio-ingressgateway` instead
of `knative-ingressgateway`. Then run the following to clean up leftover
resources:
```
```bash
kubectl delete svc knative-ingressgateway -n istio-system
kubectl delete deploy knative-ingressgateway -n istio-system
```
1. Run the `kubectl apply` command to install Knative and its dependencies:
```bash
kubectl apply --filename https://github.com/knative/serving/releases/download/v0.4.0/serving.yaml \
--filename https://github.com/knative/build/releases/download/v0.4.0/build.yaml \
@ -72,11 +80,13 @@ your Knative installation, see
--filename https://github.com/knative/serving/releases/download/v0.4.0/monitoring.yaml \
--filename https://raw.githubusercontent.com/knative/serving/v0.4.0/third_party/config/build/clusterrole.yaml
```
> **Note**: For the v0.4.0 release and newer, the `clusterrole.yaml` file is
> required to enable the Build and Serving components to interact with each other.
1. Monitor the Knative components until all of the components show a `STATUS` of
`Running`:
```bash
kubectl get pods --namespace knative-serving
kubectl get pods --namespace knative-build
@ -91,7 +101,7 @@ Now that your cluster has Knative installed, you can see what Knative has to
offer.
To deploy your first app with Knative, follow the step-by-step
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
To get started with Knative Eventing, pick one of the
@ -99,3 +109,10 @@ To get started with Knative Eventing, pick one of the
To get started with Knative Build, read the [Build README](../build/README.md),
then choose a sample to walk through.
---
Except as otherwise noted, the content of this page is licensed under the
[Creative Commons Attribution 4.0 License](https://creativecommons.org/licenses/by/4.0/),
and code samples are licensed under the
[Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0).

View File

@ -1,4 +1,3 @@
# Installing Knative
Follow this guide to install Knative components on a platform of your choice.
@ -29,7 +28,7 @@ Currently, two options exist which provide this functionality:
## Installing Knative with Gloo
[Install with Gloo](Knative-with-Gloo.md): Gloo functions as a lightweight
[Install with Gloo](./Knative-with-Gloo.md): Gloo functions as a lightweight
gateway for Knative. Choose this option if you don't require service mesh in
your cluster and want a lighter-weight alternative to Istio. Note that _the
Knative Eventing component_ is not supported by Gloo at this time.
@ -66,39 +65,39 @@ The guides below show you how to create a Kubernetes cluster with the right
specs for Knative on your platform of choice, then walk through installing all
available Knative components and a set of observability plugins.
- [Knative Install on Azure Kubernetes Service](Knative-with-AKS.md)
- [Knative Install on Gardener](Knative-with-Gardener.md)
- [Knative Install on Google Kubernetes Engine](Knative-with-GKE.md)
- [Knative Install on IBM Cloud Kubernetes Service](Knative-with-IKS.md)
- [Knative Install on IBM Cloud Private](Knative-with-ICP.md)
- [Knative Install on Pivotal Container Service](Knative-with-PKS.md)
- [Knative Install on Azure Kubernetes Service](./Knative-with-AKS.md)
- [Knative Install on Gardener](./Knative-with-Gardener.md)
- [Knative Install on Google Kubernetes Engine](./Knative-with-GKE.md)
- [Knative Install on IBM Cloud Kubernetes Service](./Knative-with-IKS.md)
- [Knative Install on IBM Cloud Private](./Knative-with-ICP.md)
- [Knative Install on Pivotal Container Service](./Knative-with-PKS.md)
If you already have a Kubernetes cluster you're comfortable installing _alpha_
software on, use the following guide to install all Knative components:
- [Knative Install on any Kubernetes](Knative-with-any-k8s.md)
- [Knative Install on any Kubernetes](./Knative-with-any-k8s.md)
**Limited install guides**
The guides below install some of the available Knative components, without all
available observability plugins, to minimize the disk space used for install.
- [Knative Install on Docker for Mac](Knative-with-Docker-for-Mac.md)
- [Knative Install on Minikube](Knative-with-Minikube.md)
- [Knative Install on OpenShift (minishift)](Knative-with-Minishift.md)
- [Knative Install on OpenShift (oc cluster up)](Knative-with-OpenShift.md)
- [Knative Install on Docker for Mac](./Knative-with-Docker-for-Mac.md)
- [Knative Install on Minikube](./Knative-with-Minikube.md)
- [Knative Install on Minishift](./Knative-with-Minishift.md)
- [Knative Install on OpenShift](./Knative-with-OpenShift.md)
**Custom install guide**
To choose which components and observability plugins to install, follow the
custom install guide:
- [Perfoming a Custom Knative Installation](Knative-custom-install.md)
- [Performing a Custom Knative Installation](./Knative-custom-install.md)
> **Note**: If need to set up a Kubernetes cluster with the correct
> specifications to run Knative, you can follow any of the install instructions
> through the creation of the cluster, then follow the
> [Perfoming a Custom Knative Installation](knative-custom-install.md) guide.
> [Performing a Custom Knative Installation](./knative-custom-install.md) guide.
**Observability install guide**
@ -112,7 +111,7 @@ Knative cluster.
Now you're ready to deploy an app:
- Follow the step-by-step
[Getting Started with Knative App Deployment](getting-started-knative-app.md)
[Getting Started with Knative App Deployment](./getting-started-knative-app.md)
guide.
- View the available [sample apps](../serving/samples) and deploy one of your
@ -134,7 +133,7 @@ and set up an Istio IP range for outbound network access:
## Checking the version of your Knative Serving installation
- [Checking the version of your Knative Serving installation](check-install-version.md)
- [Checking the version of your Knative Serving installation](./check-install-version.md)
---

8
docs/install/_index.md Normal file
View File

@ -0,0 +1,8 @@
---
title: "Installing Knative"
#linkTitle: "Installing"
weight: 20
type: "docs"
---
{{% readfile file="README.md" relative="true" markdown="true" %}}

View File

@ -1,4 +1,8 @@
# Checking the Version of Your Knative Serving Installation
---
title: "Checking the Version of Your Knative Serving Installation"
#linkTitle: "Checking your install version"
weight: 20
---
If you want to check what version of Knative serving you have installed, enter
the following command:
@ -33,4 +37,4 @@ classification," and in that section is a list of tags. The versions of Knative
you have installed will appear in the list as `v0.1.1`, or whatever verion you
have installed:
![Shows list of tags on container details page; v0.1.1 is the Knative version and is the first tag.](../images/knative-version.png)
![Shows list of tags on container details page; v0.1.1 is the Knative version and is the first tag.](../../images/knative-version.png)

View File

@ -1,4 +1,8 @@
# Getting Started with Knative App Deployment
---
title: "Getting Started with App Deployment"
#linkTitle: "OPTIONAL_ALTERNATE_NAV_TITLE"
weight: 05
---
This guide shows you how to deploy an app using Knative, then interact with it
using cURL requests.
@ -15,7 +19,7 @@ You need:
## Sample application
This guide uses the
[Hello World sample app in Go](../serving/samples/helloworld-go) to demonstrate
[Hello World sample app in Go](../serving/samples/hello-world/helloworld-go) to demonstrate
the basic workflow for deploying an app, but these steps can be adapted for your
own application if you have an image of it available on
[Docker Hub](https://docs.docker.com/docker-hub/repos/),

View File

@ -1,6 +1,114 @@
# Knative API Reference documentation
- [Serving API](serving.md)
- [Build API](build.md)
- [Eventing API](eventing/eventing.md)
- [Event Sources API](eventing/eventing-sources.md)
## View the latest release
The reference documentation for the latest release of the Knative is available
at [**www.knative.dev**](https://www.knative.dev/docs/reference/).
### Source files
The API source files are located at:
- [Serving API](./serving.md)
- [Build API](./build.md)
- [Eventing API](./eventing/eventing.md)
- [Event Sources API](./eventing/eventing-sources.md)
## Updating API Reference docs (for Knative maintainers)
The Knative API reference documentation is manually generated using the
[`gen-api-reference-docs.sh`](../../hack/) tool. If you need to generate a new
version of the API docs for a recent update or for a new release, you can use
the following steps.
To learn more about the tool, see the
[gen-crd-api-reference-docs](https://github.com/ahmetb/gen-crd-api-reference-docs)
reference page.
### Before you begin
You must meet the following requirements to run the `gen-api-reference-docs.sh`
tool:
* You need the following software installed:
* [`git`](https://git-scm.com/download/)
* [`go` version 1.11+](https://golang.org/dl/)
* Clone [knative/docs](https://github.com/knative/docs)
locally. For example: `git clone git@github.com:knative/docs.git`
### Generating the API
To generate a version of the API:
1. Ensure that your `GOPATH` is empty. The `gen-api-reference-docs.sh`
script will result in the `GOPATH should not be set` error if your `GOPATH`
is configured. You view the value by running the following command:
```
echo $GOPATH
```
If your `GOPATH` is already configured, temporarily clear the `GOPATH` value
by running the following command:
```
export GOPATH=""
```
1. Locate the commits or tags that correspond to the version of the API
that you want to generate:
* [Build](https://github.com/knative/build/releases/)
* [Eventing](https://github.com/knative/eventing/releases/)
* [Eventing Sources](https://github.com/knative/eventing-sources/releases/)
* [Serving](https://github.com/knative/serving/releases/)
1. To run the `gen-api-reference-docs.sh` command from the `hack` directory,
you specify the commits or tags for each of the corresponding Knative
component variables (`KNATIVE_[component_name]_COMMIT`):
```
KNATIVE_BUILD_COMMIT=[commit_or_tag] \
KNATIVE_EVENTING_COMMIT=[commit_or_tag] \
KNATIVE_EVENTING_SOURCES_COMMIT=[commit_or_tag] \
KNATIVE_SERVING_COMMIT=[commit_or_tag] \
./gen-api-reference-docs.sh
```
where `[commit_or_tag]` is the commit or tag in the specific repo that
represents the version of the API that you want to generate. Also see
the [example](#example) below.
**Result**
The `gen-api-reference-docs.sh` tool generates the API in a `tmp` folder.
After a successful build, the tool automatically opens that folder
in the `tmp` directory.
1. Copy the generated API files into the `docs/reference` directory of your
knative/docs clone.
You can now perform the necessary steps to open a PR, complete a review, and
merge the new API files into the appropriate branch of the `knative/docs` repo.
See the [contributor flow](../../contributing/DOCS-CONTRIBUTING.md) for
details about requesting changes in the `knative/docs` repo.
### Example
To build a set of Knative API docs for v0.3, you can use the `v0.3.0` the tags
from each of the Knative component repositories, like
[Serving v0.3.0](https://github.com/knative/serving/tree/v0.3.0). If you want to
use a commit for Serving v0.3.0, you would use
[4d198d](https://github.com/knative/serving/commit/4d198db8756db2f8a3c228302a97fb3a216a9475).
Using tags from each repo, you would run the following command to generate the
v0.3.0 API source files:
```
KNATIVE_BUILD_COMMIT=v0.3.0 \
KNATIVE_EVENTING_COMMIT=v0.3.0 \
KNATIVE_EVENTING_SOURCES_COMMIT=v0.3.0 \
KNATIVE_SERVING_COMMIT=v0.3.0 \
./gen-api-reference-docs.sh
```

8
docs/reference/_index.md Normal file
View File

@ -0,0 +1,8 @@
---
title: "Knative Reference Documentation"
linkTitle: "Reference and API"
weight: 100
type: "docs"
---
Knative API and reference documentation.

Some files were not shown because too many files have changed in this diff Show More