From 6af53bc5eb20d394a74cb077d4e4e39bbbc39be9 Mon Sep 17 00:00:00 2001 From: "my-renovate[bot]" Date: Sun, 7 Apr 2024 03:15:08 +0000 Subject: [PATCH] deploy: 17a8ce4572246bcd77bd04f318c2c3bc473a6ab5 --- .nojekyll | 0 404.html | 20 + LICENSE | 201 +++++ README.md | 33 + assets/css/0.styles.985b6b59.css | 1 + .../img/GitHub_Webhooks-Details.da577fc5.png | Bin 0 -> 627223 bytes assets/img/GitHub_Webhooks.3cdaed97.png | Bin 0 -> 95478 bytes assets/img/GitLab.dd7e0dbb.png | Bin 0 -> 112543 bytes assets/img/Tekton_Dashboard.258cb264.png | Bin 0 -> 89501 bytes assets/img/harbor_login_page.703b5e90.png | Bin 0 -> 25103 bytes assets/img/harbor_projects.338db00b.png | Bin 0 -> 40828 bytes assets/img/kubed.e88b1fb6.svg | 173 ++++ assets/img/podinfo.d8c508a4.png | Bin 0 -> 1520736 bytes assets/img/podinfo_http_https.799760ac.png | Bin 0 -> 65848 bytes assets/img/search.83621669.svg | 1 + assets/js/1.416be298.js | 1 + assets/js/10.f496eaac.js | 1 + assets/js/11.6724c971.js | 1 + assets/js/12.7aed55d0.js | 1 + assets/js/13.050c5350.js | 1 + assets/js/14.30343ebc.js | 1 + assets/js/15.d3972987.js | 1 + assets/js/16.cd753f26.js | 1 + assets/js/17.6cd3a12a.js | 1 + assets/js/18.8d7e6487.js | 1 + assets/js/19.78b16bd4.js | 1 + assets/js/2.99da59a7.js | 1 + assets/js/20.a3f134b4.js | 1 + assets/js/21.66c4eb78.js | 1 + assets/js/22.8f730d8b.js | 1 + assets/js/23.1d6373ca.js | 1 + assets/js/24.c43ab997.js | 1 + assets/js/25.d82aeefa.js | 1 + assets/js/26.bb65b742.js | 1 + assets/js/27.2df1edf6.js | 1 + assets/js/28.8647f919.js | 1 + assets/js/29.36e9fab6.js | 1 + assets/js/3.6b4152e0.js | 1 + assets/js/30.f81551c9.js | 1 + assets/js/31.aa5de726.js | 1 + assets/js/32.22ccabcf.js | 1 + assets/js/4.1a6ad45d.js | 1 + assets/js/5.4b4e299e.js | 1 + assets/js/6.88072c68.js | 1 + assets/js/7.f09a9532.js | 1 + assets/js/app.a36226c4.js | 16 + assets/js/vendors~docsearch.857e8e87.js | 3 + index.html | 42 + part-01/index.html | 181 ++++ part-02/index.html | 77 ++ part-03/index.html | 383 +++++++++ part-04/index.html | 196 +++++ part-05/index.html | 324 +++++++ part-06/index.html | 212 +++++ part-07/index.html | 282 ++++++ part-08/index.html | 810 ++++++++++++++++++ part-09/index.html | 96 +++ part-10/index.html | 78 ++ 58 files changed, 3159 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 LICENSE create mode 100644 README.md create mode 100644 assets/css/0.styles.985b6b59.css create mode 100644 assets/img/GitHub_Webhooks-Details.da577fc5.png create mode 100644 assets/img/GitHub_Webhooks.3cdaed97.png create mode 100644 assets/img/GitLab.dd7e0dbb.png create mode 100644 assets/img/Tekton_Dashboard.258cb264.png create mode 100644 assets/img/harbor_login_page.703b5e90.png create mode 100644 assets/img/harbor_projects.338db00b.png create mode 100644 assets/img/kubed.e88b1fb6.svg create mode 100644 assets/img/podinfo.d8c508a4.png create mode 100644 assets/img/podinfo_http_https.799760ac.png create mode 100644 assets/img/search.83621669.svg create mode 100644 assets/js/1.416be298.js create mode 100644 assets/js/10.f496eaac.js create mode 100644 assets/js/11.6724c971.js create mode 100644 assets/js/12.7aed55d0.js create mode 100644 assets/js/13.050c5350.js create mode 100644 assets/js/14.30343ebc.js create mode 100644 assets/js/15.d3972987.js create mode 100644 assets/js/16.cd753f26.js create mode 100644 assets/js/17.6cd3a12a.js create mode 100644 assets/js/18.8d7e6487.js create mode 100644 assets/js/19.78b16bd4.js create mode 100644 assets/js/2.99da59a7.js create mode 100644 assets/js/20.a3f134b4.js create mode 100644 assets/js/21.66c4eb78.js create mode 100644 assets/js/22.8f730d8b.js create mode 100644 assets/js/23.1d6373ca.js create mode 100644 assets/js/24.c43ab997.js create mode 100644 assets/js/25.d82aeefa.js create mode 100644 assets/js/26.bb65b742.js create mode 100644 assets/js/27.2df1edf6.js create mode 100644 assets/js/28.8647f919.js create mode 100644 assets/js/29.36e9fab6.js create mode 100644 assets/js/3.6b4152e0.js create mode 100644 assets/js/30.f81551c9.js create mode 100644 assets/js/31.aa5de726.js create mode 100644 assets/js/32.22ccabcf.js create mode 100644 assets/js/4.1a6ad45d.js create mode 100644 assets/js/5.4b4e299e.js create mode 100644 assets/js/6.88072c68.js create mode 100644 assets/js/7.f09a9532.js create mode 100644 assets/js/app.a36226c4.js create mode 100644 assets/js/vendors~docsearch.857e8e87.js create mode 100644 index.html create mode 100644 part-01/index.html create mode 100644 part-02/index.html create mode 100644 part-03/index.html create mode 100644 part-04/index.html create mode 100644 part-05/index.html create mode 100644 part-06/index.html create mode 100644 part-07/index.html create mode 100644 part-08/index.html create mode 100644 part-09/index.html create mode 100644 part-10/index.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..9b45a2b --- /dev/null +++ b/404.html @@ -0,0 +1,20 @@ + + + + + + Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

404

How did we get here?
+ Take me home. +
+ + + diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..261eeb9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md new file mode 100644 index 0000000..8c5df15 --- /dev/null +++ b/README.md @@ -0,0 +1,33 @@ +# Kubernetes + Knative + GitLab + Harbor + +[![Build Status](https://github.com/ruzickap/k8s-knative-gitlab-harbor/workflows/vuepress-build/badge.svg)](https://github.com/ruzickap/k8s-knative-gitlab-harbor) + +* Demo GitHub repository: [https://github.com/ruzickap/k8s-knative-gitlab-harbor](https://github.com/ruzickap/k8s-knative-gitlab-harbor) +* Demo Web Pages: [https://ruzickap.github.io/k8s-knative-gitlab-harbor](https://ruzickap.github.io/k8s-knative-gitlab-harbor) +* Asciinema: [https://asciinema.org/a/290547](https://asciinema.org/a/290547) + +## Requirements + +* [awscli](https://aws.amazon.com/cli/) +* [AWS IAM Authenticator for Kubernetes](https://github.com/kubernetes-sigs/aws-iam-authenticator) +* [AWS account](https://aws.amazon.com/account/) +* [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +* [kops](https://github.com/kubernetes/kops) +* Kubernetes, Docker, Linux, AWS knowledge required + +## Content + +* [Part 01 - Create "kops" cluster](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-01/README.md) +* [Part 02 - Install Helm](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-02/README.md) +* [Part 03 - Istio + cert-manager + kubed installation](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-03/README.md) +* [Part 04 - Harbor installation](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-04/README.md) +* [Part 05 - GitLab installation](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-05/README.md) +* [Part 06 - Knative installation](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-06/README.md) +* [Part 07 - Build and run container image using Knative + Tekton](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-07/README.md) +* [Part 08 - Automated deployment with Tekton](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-08/README.md) +* [Part 09 - Knative operations](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-09/README.md) +* [Part 10 - Clean-up](https://github.com/ruzickap/k8s-knative-gitlab-harbor/tree/main/docs/part-10/README.md) + +## Asciinema + +[![asciicast](https://asciinema.org/a/290547.svg)](https://asciinema.org/a/290547) diff --git a/assets/css/0.styles.985b6b59.css b/assets/css/0.styles.985b6b59.css new file mode 100644 index 0000000..e72093d --- /dev/null +++ b/assets/css/0.styles.985b6b59.css @@ -0,0 +1 @@ +.medium-zoom-overlay{z-index:100}.medium-zoom-overlay~img{z-index:101}html{scroll-behavior:smooth}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.theme-default-content code{color:#476582;padding:.25rem .5rem;margin:0;font-size:.85em;background-color:rgba(27,31,35,.05);border-radius:3px}.theme-default-content code .token.deleted{color:#ec5975}.theme-default-content code .token.inserted{color:#3eaf7c}.theme-default-content pre,.theme-default-content pre[class*=language-]{line-height:1.4;padding:1.25rem 1.5rem;margin:.85rem 0;background-color:#282c34;border-radius:6px;overflow:auto}.theme-default-content pre[class*=language-] code,.theme-default-content pre code{color:#fff;padding:0;background-color:transparent;border-radius:0}div[class*=language-]{position:relative;background-color:#282c34;border-radius:6px}div[class*=language-] .highlight-lines{-webkit-user-select:none;user-select:none;padding-top:1.3rem;position:absolute;top:0;left:0;width:100%;line-height:1.4}div[class*=language-] .highlight-lines .highlighted{background-color:rgba(0,0,0,.66)}div[class*=language-] pre,div[class*=language-] pre[class*=language-]{background:transparent;position:relative;z-index:1}div[class*=language-]:before{position:absolute;z-index:3;top:.8em;right:1em;font-size:.75rem;color:hsla(0,0%,100%,.4)}div[class*=language-]:not(.line-numbers-mode) .line-numbers-wrapper{display:none}div[class*=language-].line-numbers-mode .highlight-lines .highlighted{position:relative}div[class*=language-].line-numbers-mode .highlight-lines .highlighted:before{content:" ";position:absolute;z-index:3;left:0;top:0;display:block;width:3.5rem;height:100%;background-color:rgba(0,0,0,.66)}div[class*=language-].line-numbers-mode pre{padding-left:4.5rem;vertical-align:middle}div[class*=language-].line-numbers-mode .line-numbers-wrapper{position:absolute;top:0;width:3.5rem;text-align:center;color:hsla(0,0%,100%,.3);padding:1.25rem 0;line-height:1.4}div[class*=language-].line-numbers-mode .line-numbers-wrapper br{-webkit-user-select:none;user-select:none}div[class*=language-].line-numbers-mode .line-numbers-wrapper .line-number{position:relative;z-index:4;-webkit-user-select:none;user-select:none;font-size:.85em}div[class*=language-].line-numbers-mode:after{content:"";position:absolute;z-index:2;top:0;left:0;width:3.5rem;height:100%;border-radius:6px 0 0 6px;border-right:1px solid rgba(0,0,0,.66);background-color:#282c34}div[class~=language-js]:before{content:"js"}div[class~=language-ts]:before{content:"ts"}div[class~=language-html]:before{content:"html"}div[class~=language-md]:before{content:"md"}div[class~=language-vue]:before{content:"vue"}div[class~=language-css]:before{content:"css"}div[class~=language-sass]:before{content:"sass"}div[class~=language-scss]:before{content:"scss"}div[class~=language-less]:before{content:"less"}div[class~=language-stylus]:before{content:"stylus"}div[class~=language-go]:before{content:"go"}div[class~=language-java]:before{content:"java"}div[class~=language-c]:before{content:"c"}div[class~=language-sh]:before{content:"sh"}div[class~=language-yaml]:before{content:"yaml"}div[class~=language-py]:before{content:"py"}div[class~=language-docker]:before{content:"docker"}div[class~=language-dockerfile]:before{content:"dockerfile"}div[class~=language-makefile]:before{content:"makefile"}div[class~=language-javascript]:before{content:"js"}div[class~=language-typescript]:before{content:"ts"}div[class~=language-markup]:before{content:"html"}div[class~=language-markdown]:before{content:"md"}div[class~=language-json]:before{content:"json"}div[class~=language-ruby]:before{content:"rb"}div[class~=language-python]:before{content:"py"}div[class~=language-bash]:before{content:"sh"}div[class~=language-php]:before{content:"php"}.custom-block .custom-block-title{font-weight:600;margin-bottom:-.4rem}.custom-block.danger,.custom-block.tip,.custom-block.warning{padding:.1rem 1.5rem;border-left-width:.5rem;border-left-style:solid;margin:1rem 0}.custom-block.tip{background-color:#f3f5f7;border-color:#42b983}.custom-block.warning{background-color:rgba(255,229,100,.3);border-color:#e7c000;color:#6b5900}.custom-block.warning .custom-block-title{color:#b29400}.custom-block.warning a{color:#2c3e50}.custom-block.danger{background-color:#ffe6e6;border-color:#c00;color:#4d0000}.custom-block.danger .custom-block-title{color:#900}.custom-block.danger a{color:#2c3e50}.custom-block.details{display:block;position:relative;border-radius:2px;margin:1.6em 0;padding:1.6em;background-color:#eee}.custom-block.details h4{margin-top:0}.custom-block.details figure:last-child,.custom-block.details p:last-child{margin-bottom:0;padding-bottom:0}.custom-block.details summary{outline:none;cursor:pointer}.arrow{display:inline-block;width:0;height:0}.arrow.up{border-bottom:6px solid #ccc}.arrow.down,.arrow.up{border-left:4px solid transparent;border-right:4px solid transparent}.arrow.down{border-top:6px solid #ccc}.arrow.right{border-left:6px solid #ccc}.arrow.left,.arrow.right{border-top:4px solid transparent;border-bottom:4px solid transparent}.arrow.left{border-right:6px solid #ccc}.theme-default-content:not(.custom){max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.theme-default-content:not(.custom){padding:2rem}}@media (max-width:419px){.theme-default-content:not(.custom){padding:1.5rem}}.table-of-contents .badge{vertical-align:middle}body,html{padding:0;margin:0;background-color:#fff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;color:#2c3e50}.page{padding-left:20rem}.navbar{z-index:20;right:0;height:3.6rem;background-color:#fff;box-sizing:border-box;border-bottom:1px solid #eaecef}.navbar,.sidebar-mask{position:fixed;top:0;left:0}.sidebar-mask{z-index:9;width:100vw;height:100vh;display:none}.sidebar{font-size:16px;background-color:#fff;width:20rem;position:fixed;z-index:10;margin:0;top:3.6rem;left:0;bottom:0;box-sizing:border-box;border-right:1px solid #eaecef;overflow-y:auto}.theme-default-content:not(.custom)>:first-child{margin-top:3.6rem}.theme-default-content:not(.custom) a:hover{text-decoration:underline}.theme-default-content:not(.custom) p.demo{padding:1rem 1.5rem;border:1px solid #ddd;border-radius:4px}.theme-default-content:not(.custom) img{max-width:100%}.theme-default-content.custom{padding:0;margin:0}.theme-default-content.custom img{max-width:100%}a{font-weight:500;text-decoration:none}a,p a code{color:#3eaf7c}p a code{font-weight:400}kbd{background:#eee;border:.15rem solid #ddd;border-bottom:.25rem solid #ddd;border-radius:.15rem;padding:0 .15em}blockquote{font-size:1rem;color:#999;border-left:.2rem solid #dfe2e5;margin:1rem 0;padding:.25rem 0 .25rem 1rem}blockquote>p{margin:0}ol,ul{padding-left:1.2em}strong{font-weight:600}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25}.theme-default-content:not(.custom)>h1,.theme-default-content:not(.custom)>h2,.theme-default-content:not(.custom)>h3,.theme-default-content:not(.custom)>h4,.theme-default-content:not(.custom)>h5,.theme-default-content:not(.custom)>h6{margin-top:-3.1rem;padding-top:4.6rem;margin-bottom:0}.theme-default-content:not(.custom)>h1:first-child,.theme-default-content:not(.custom)>h2:first-child,.theme-default-content:not(.custom)>h3:first-child,.theme-default-content:not(.custom)>h4:first-child,.theme-default-content:not(.custom)>h5:first-child,.theme-default-content:not(.custom)>h6:first-child{margin-top:-1.5rem;margin-bottom:1rem}.theme-default-content:not(.custom)>h1:first-child+.custom-block,.theme-default-content:not(.custom)>h1:first-child+p,.theme-default-content:not(.custom)>h1:first-child+pre,.theme-default-content:not(.custom)>h2:first-child+.custom-block,.theme-default-content:not(.custom)>h2:first-child+p,.theme-default-content:not(.custom)>h2:first-child+pre,.theme-default-content:not(.custom)>h3:first-child+.custom-block,.theme-default-content:not(.custom)>h3:first-child+p,.theme-default-content:not(.custom)>h3:first-child+pre,.theme-default-content:not(.custom)>h4:first-child+.custom-block,.theme-default-content:not(.custom)>h4:first-child+p,.theme-default-content:not(.custom)>h4:first-child+pre,.theme-default-content:not(.custom)>h5:first-child+.custom-block,.theme-default-content:not(.custom)>h5:first-child+p,.theme-default-content:not(.custom)>h5:first-child+pre,.theme-default-content:not(.custom)>h6:first-child+.custom-block,.theme-default-content:not(.custom)>h6:first-child+p,.theme-default-content:not(.custom)>h6:first-child+pre{margin-top:2rem}h1:focus .header-anchor,h1:hover .header-anchor,h2:focus .header-anchor,h2:hover .header-anchor,h3:focus .header-anchor,h3:hover .header-anchor,h4:focus .header-anchor,h4:hover .header-anchor,h5:focus .header-anchor,h5:hover .header-anchor,h6:focus .header-anchor,h6:hover .header-anchor{opacity:1}h1{font-size:2.2rem}h2{font-size:1.65rem;padding-bottom:.3rem;border-bottom:1px solid #eaecef}h3{font-size:1.35rem}a.header-anchor{font-size:.85em;float:left;margin-left:-.87em;padding-right:.23em;margin-top:.125em;-webkit-user-select:none;user-select:none;opacity:0}a.header-anchor:focus,a.header-anchor:hover{text-decoration:none}.line-number,code,kbd{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}ol,p,ul{line-height:1.7}hr{border:0;border-top:1px solid #eaecef}table{border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto}tr{border-top:1px solid #dfe2e5}tr:nth-child(2n){background-color:#f6f8fa}td,th{border:1px solid #dfe2e5;padding:.6em 1em}.theme-container.sidebar-open .sidebar-mask{display:block}.theme-container.no-navbar .theme-default-content:not(.custom)>h1,.theme-container.no-navbar h2,.theme-container.no-navbar h3,.theme-container.no-navbar h4,.theme-container.no-navbar h5,.theme-container.no-navbar h6{margin-top:1.5rem;padding-top:0}.theme-container.no-navbar .sidebar{top:0}@media (min-width:720px){.theme-container.no-sidebar .sidebar{display:none}.theme-container.no-sidebar .page{padding-left:0}}@media (max-width:959px){.sidebar{font-size:15px;width:16.4rem}.page{padding-left:16.4rem}}@media (max-width:719px){.sidebar{top:0;padding-top:3.6rem;transform:translateX(-100%);transition:transform .2s ease}.page{padding-left:0}.theme-container.sidebar-open .sidebar{transform:translateX(0)}.theme-container.no-navbar .sidebar{padding-top:0}}@media (max-width:419px){h1{font-size:1.9rem}.theme-default-content div[class*=language-]{margin:.85rem -1.5rem;border-radius:0}}#nprogress{pointer-events:none}#nprogress .bar{background:#3eaf7c;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #3eaf7c,0 0 5px #3eaf7c;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border-color:#3eaf7c transparent transparent #3eaf7c;border-style:solid;border-width:2px;border-radius:50%;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.go-to-top[data-v-5fd4ef0c]{cursor:pointer;position:fixed;bottom:2rem;right:2.5rem;width:2rem;color:#3eaf7c;z-index:1}.go-to-top[data-v-5fd4ef0c]:hover{color:#72cda4}@media (max-width:959px){.go-to-top[data-v-5fd4ef0c]{display:none}}.fade-enter-active[data-v-5fd4ef0c],.fade-leave-active[data-v-5fd4ef0c]{transition:opacity .3s}.fade-enter[data-v-5fd4ef0c],.fade-leave-to[data-v-5fd4ef0c]{opacity:0}.reading-progress[data-v-3640397f]{position:fixed;z-index:1000;background:transparent;overflow:hidden}.reading-progress .progress[data-v-3640397f]{width:100%;height:100%;background:#3eaf7c;background-image:none;transform-origin:0 0;transition:transform .2s ease-out}.top[data-v-3640397f]{top:0;left:0;right:0;width:100%;height:3px}.bottom[data-v-3640397f]{bottom:0;left:0;right:0;width:100%;height:3px}.left[data-v-3640397f]{left:0;top:0;bottom:0;width:3px;height:100%}.right[data-v-3640397f]{right:0;top:0;bottom:0;width:3px;height:100%}.icon.outbound{color:#aaa;display:inline-block;vertical-align:middle;position:relative;top:-1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.algolia-search-wrapper>span{vertical-align:middle}.algolia-search-wrapper .algolia-autocomplete{line-height:normal}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu{background-color:#fff;border:1px solid #999;border-radius:4px;font-size:16px;margin:6px 0 0;padding:4px;text-align:left}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu:before{border-color:#999}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu [class*=ds-dataset-]{border:none;padding:0}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu .ds-suggestions{margin-top:0}.algolia-search-wrapper .algolia-autocomplete .ds-dropdown-menu .ds-suggestion{border-bottom:1px solid #eaecef}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#2c815b}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion{border-color:#eaecef;padding:0}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--category-header{padding:5px 10px;margin-top:0;background:#3eaf7c;color:#fff;font-weight:600}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--highlight{background:hsla(0,0%,100%,.6)}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--wrapper{padding:0}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--title{font-weight:600;margin-bottom:0;color:#2c3e50}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{vertical-align:top;padding:5px 7px 5px 5px;border-color:#eaecef;background:#f1f3f5}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:after{display:none}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column-text{color:#555}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-footer{border-color:#eaecef}.algolia-search-wrapper .algolia-autocomplete .ds-cursor .algolia-docsearch-suggestion--content{background-color:#e7edf3!important;color:#2c3e50}@media (min-width:719px){.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{float:none;width:150px;min-width:150px;display:table-cell}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content{float:none;display:table-cell;width:100%;vertical-align:top}.algolia-search-wrapper .algolia-autocomplete .algolia-docsearch-suggestion .ds-dropdown-menu{min-width:515px!important}}@media (max-width:719px){.algolia-search-wrapper .ds-dropdown-menu{min-width:calc(100vw - 4rem)!important;max-width:calc(100vw - 4rem)!important}.algolia-search-wrapper .algolia-docsearch-suggestion--wrapper{padding:5px 7px 5px 5px!important}.algolia-search-wrapper .algolia-docsearch-suggestion--subcategory-column{padding:0!important;background:#fff!important}.algolia-search-wrapper .algolia-docsearch-suggestion--subcategory-column-text:after{content:" > ";font-size:10px;line-height:14.4px;display:inline-block;width:5px;margin:-3px 3px 0;vertical-align:middle}}.home{padding:3.6rem 2rem 0;max-width:960px;margin:0 auto;display:block}.home .hero{text-align:center}.home .hero img{max-width:100%;max-height:280px;display:block;margin:3rem auto 1.5rem}.home .hero h1{font-size:3rem}.home .hero .action,.home .hero .description,.home .hero h1{margin:1.8rem auto}.home .hero .description{max-width:35rem;font-size:1.6rem;line-height:1.3;color:#6a8bad}.home .hero .action-button{display:inline-block;font-size:1.2rem;color:#fff;background-color:#3eaf7c;padding:.8rem 1.6rem;border-radius:4px;transition:background-color .1s ease;box-sizing:border-box;border-bottom:1px solid #389d70}.home .hero .action-button:hover{background-color:#4abf8a}.home .features{border-top:1px solid #eaecef;padding:1.2rem 0;margin-top:2.5rem;display:flex;flex-wrap:wrap;align-items:flex-start;align-content:stretch;justify-content:space-between}.home .feature{flex-grow:1;flex-basis:30%;max-width:30%}.home .feature h2{font-size:1.4rem;font-weight:500;border-bottom:none;padding-bottom:0;color:#3a5169}.home .feature p{color:#4e6e8e}.home .footer{padding:2.5rem;border-top:1px solid #eaecef;text-align:center;color:#4e6e8e}@media (max-width:719px){.home .features{flex-direction:column}.home .feature{max-width:100%;padding:0 2.5rem}}@media (max-width:419px){.home{padding-left:1.5rem;padding-right:1.5rem}.home .hero img{max-height:210px;margin:2rem auto 1.2rem}.home .hero h1{font-size:2rem}.home .hero .action,.home .hero .description,.home .hero h1{margin:1.2rem auto}.home .hero .description{font-size:1.2rem}.home .hero .action-button{font-size:1rem;padding:.6rem 1.2rem}.home .feature h2{font-size:1.25rem}}.search-box{display:inline-block;position:relative;margin-right:1rem}.search-box input{cursor:text;width:10rem;height:2rem;color:#4e6e8e;display:inline-block;border:1px solid #cfd4db;border-radius:2rem;font-size:.9rem;line-height:2rem;padding:0 .5rem 0 2rem;outline:none;transition:all .2s ease;background:#fff url(/k8s-knative-gitlab-harbor/assets/img/search.83621669.svg) .6rem .5rem no-repeat;background-size:1rem}.search-box input:focus{cursor:auto;border-color:#3eaf7c}.search-box .suggestions{background:#fff;width:20rem;position:absolute;top:2rem;border:1px solid #cfd4db;border-radius:6px;padding:.4rem;list-style-type:none}.search-box .suggestions.align-right{right:0}.search-box .suggestion{line-height:1.4;padding:.4rem .6rem;border-radius:4px;cursor:pointer}.search-box .suggestion a{white-space:normal;color:#5d82a6}.search-box .suggestion a .page-title{font-weight:600}.search-box .suggestion a .header{font-size:.9em;margin-left:.25em}.search-box .suggestion.focused{background-color:#f3f4f5}.search-box .suggestion.focused a{color:#3eaf7c}@media (max-width:959px){.search-box input{cursor:pointer;width:0;border-color:transparent;position:relative}.search-box input:focus{cursor:text;left:0;width:10rem}}@media (-ms-high-contrast:none){.search-box input{height:2rem}}@media (max-width:959px) and (min-width:719px){.search-box .suggestions{left:0}}@media (max-width:719px){.search-box{margin-right:0}.search-box input{left:1rem}.search-box .suggestions{right:0}}@media (max-width:419px){.search-box .suggestions{width:calc(100vw - 4rem)}.search-box input:focus{width:8rem}}.sidebar-button{cursor:pointer;display:none;width:1.25rem;height:1.25rem;position:absolute;padding:.6rem;top:.6rem;left:1rem}.sidebar-button .icon{display:block;width:1.25rem;height:1.25rem}@media (max-width:719px){.sidebar-button{display:block}}.dropdown-enter,.dropdown-leave-to{height:0!important}.badge[data-v-15b7b770]{display:inline-block;font-size:14px;height:18px;line-height:18px;border-radius:3px;padding:0 6px;color:#fff}.badge.green[data-v-15b7b770],.badge.tip[data-v-15b7b770],.badge[data-v-15b7b770]{background-color:#42b983}.badge.error[data-v-15b7b770]{background-color:#da5961}.badge.warn[data-v-15b7b770],.badge.warning[data-v-15b7b770],.badge.yellow[data-v-15b7b770]{background-color:#e7c000}.badge+.badge[data-v-15b7b770]{margin-left:5px}.theme-code-block[data-v-759a7d02]{display:none}.theme-code-block__active[data-v-759a7d02]{display:block}.theme-code-block>pre[data-v-759a7d02]{background-color:orange}.theme-code-group__nav[data-v-deefee04]{margin-bottom:-35px;background-color:#282c34;padding-bottom:22px;border-top-left-radius:6px;border-top-right-radius:6px;padding-left:10px;padding-top:10px}.theme-code-group__ul[data-v-deefee04]{margin:auto 0;padding-left:0;display:inline-flex;list-style:none}.theme-code-group__nav-tab[data-v-deefee04]{border:0;padding:5px;cursor:pointer;background-color:transparent;font-size:.85em;line-height:1.4;color:hsla(0,0%,100%,.9);font-weight:600}.theme-code-group__nav-tab-active[data-v-deefee04]{border-bottom:1px solid #42b983}.pre-blank[data-v-deefee04]{color:#42b983}.searchbox{display:inline-block;position:relative;width:200px;height:32px!important;white-space:nowrap;box-sizing:border-box;visibility:visible!important}.searchbox .algolia-autocomplete{display:block;width:100%;height:100%}.searchbox__wrapper{width:100%;height:100%;z-index:999;position:relative}.searchbox__input{display:inline-block;box-sizing:border-box;transition:box-shadow .4s ease,background .4s ease;border:0;border-radius:16px;box-shadow:inset 0 0 0 1px #ccc;background:#fff!important;padding:0 26px 0 32px;width:100%;height:100%;vertical-align:middle;white-space:normal;font-size:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.searchbox__input::-webkit-search-cancel-button,.searchbox__input::-webkit-search-decoration,.searchbox__input::-webkit-search-results-button,.searchbox__input::-webkit-search-results-decoration{display:none}.searchbox__input:hover{box-shadow:inset 0 0 0 1px #b3b3b3}.searchbox__input:active,.searchbox__input:focus{outline:0;box-shadow:inset 0 0 0 1px #aaa;background:#fff}.searchbox__input::-moz-placeholder{color:#aaa}.searchbox__input::placeholder{color:#aaa}.searchbox__submit{position:absolute;top:0;margin:0;border:0;border-radius:16px 0 0 16px;background-color:rgba(69,142,225,0);padding:0;width:32px;height:100%;vertical-align:middle;text-align:center;font-size:inherit;-webkit-user-select:none;-moz-user-select:none;user-select:none;right:inherit;left:0}.searchbox__submit:before{display:inline-block;margin-right:-4px;height:100%;vertical-align:middle;content:""}.searchbox__submit:active,.searchbox__submit:hover{cursor:pointer}.searchbox__submit:focus{outline:0}.searchbox__submit svg{width:14px;height:14px;vertical-align:middle;fill:#6d7e96}.searchbox__reset{display:block;position:absolute;top:8px;right:8px;margin:0;border:0;background:none;cursor:pointer;padding:0;font-size:inherit;-webkit-user-select:none;-moz-user-select:none;user-select:none;fill:rgba(0,0,0,.5)}.searchbox__reset.hide{display:none}.searchbox__reset:focus{outline:0}.searchbox__reset svg{display:block;margin:4px;width:8px;height:8px}.searchbox__input:valid~.searchbox__reset{display:block;animation-name:sbx-reset-in;animation-duration:.15s}@keyframes sbx-reset-in{0%{transform:translate3d(-20%,0,0);opacity:0}to{transform:none;opacity:1}}.algolia-autocomplete.algolia-autocomplete-right .ds-dropdown-menu{right:0!important;left:inherit!important}.algolia-autocomplete.algolia-autocomplete-right .ds-dropdown-menu:before{right:48px}.algolia-autocomplete.algolia-autocomplete-left .ds-dropdown-menu{left:0!important;right:inherit!important}.algolia-autocomplete.algolia-autocomplete-left .ds-dropdown-menu:before{left:48px}.algolia-autocomplete .ds-dropdown-menu{top:-6px;border-radius:4px;margin:6px 0 0;padding:0;text-align:left;height:auto;position:relative;background:transparent;border:none;z-index:999;max-width:600px;min-width:500px;box-shadow:0 1px 0 0 rgba(0,0,0,.2),0 2px 3px 0 rgba(0,0,0,.1)}.algolia-autocomplete .ds-dropdown-menu:before{display:block;position:absolute;content:"";width:14px;height:14px;background:#fff;z-index:1000;top:-7px;border-top:1px solid #d9d9d9;border-right:1px solid #d9d9d9;transform:rotate(-45deg);border-radius:2px}.algolia-autocomplete .ds-dropdown-menu .ds-suggestions{position:relative;z-index:1000;margin-top:8px}.algolia-autocomplete .ds-dropdown-menu .ds-suggestions a:hover{text-decoration:none}.algolia-autocomplete .ds-dropdown-menu .ds-suggestion{cursor:pointer}.algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion.suggestion-layout-simple,.algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:rgba(69,142,225,.05)}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{position:relative;border:1px solid #d9d9d9;background:#fff;border-radius:4px;overflow:auto;padding:0 8px 8px}.algolia-autocomplete .ds-dropdown-menu *{box-sizing:border-box}.algolia-autocomplete .algolia-docsearch-suggestion{display:block;position:relative;padding:0 8px;background:#fff;color:#02060c;overflow:hidden}.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#174d8c;background:rgba(143,187,237,.1);padding:.1em .05em}.algolia-autocomplete .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--category-header-lvl0 .algolia-docsearch-suggestion--highlight,.algolia-autocomplete .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--category-header-lvl1 .algolia-docsearch-suggestion--highlight,.algolia-autocomplete .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight{padding:0 0 1px;background:inherit;box-shadow:inset 0 -2px 0 0 rgba(69,142,225,.8);color:inherit}.algolia-autocomplete .algolia-docsearch-suggestion--content{display:block;float:right;width:70%;position:relative;padding:5.33333px 0 5.33333px 10.66667px;cursor:pointer}.algolia-autocomplete .algolia-docsearch-suggestion--content:before{content:"";position:absolute;display:block;top:0;height:100%;width:1px;background:#ddd;left:-1px}.algolia-autocomplete .algolia-docsearch-suggestion--category-header{position:relative;border-bottom:1px solid #ddd;display:none;margin-top:8px;padding:4px 0;font-size:1em;color:#33363d}.algolia-autocomplete .algolia-docsearch-suggestion--wrapper{width:100%;float:left;padding:8px 0 0}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column{float:left;width:30%;text-align:right;position:relative;padding:5.33333px 10.66667px;color:#a4a7ae;font-size:.9em;word-wrap:break-word}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column:before{content:"";position:absolute;display:block;top:0;height:100%;width:1px;background:#ddd;right:0}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-inline{display:none}.algolia-autocomplete .algolia-docsearch-suggestion--title{margin-bottom:4px;color:#02060c;font-size:.9em;font-weight:700}.algolia-autocomplete .algolia-docsearch-suggestion--text{display:block;line-height:1.2em;font-size:.85em;color:#63676d}.algolia-autocomplete .algolia-docsearch-suggestion--no-results{width:100%;padding:8px 0;text-align:center;font-size:1.2em}.algolia-autocomplete .algolia-docsearch-suggestion--no-results:before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion code{padding:1px 5px;font-size:90%;border:none;color:#222;background-color:#ebebeb;border-radius:3px;font-family:Menlo,Monaco,Consolas,Courier New,monospace}.algolia-autocomplete .algolia-docsearch-suggestion code .algolia-docsearch-suggestion--highlight{background:none}.algolia-autocomplete .algolia-docsearch-suggestion.algolia-docsearch-suggestion__main .algolia-docsearch-suggestion--category-header,.algolia-autocomplete .algolia-docsearch-suggestion.algolia-docsearch-suggestion__secondary{display:block}@media (min-width:768px){.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{display:block}}@media (max-width:768px){.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{display:inline-block;width:auto;float:left;padding:0;color:#02060c;font-size:.9em;font-weight:700;text-align:left;opacity:.5}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:after{content:"|"}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content{display:inline-block;width:auto;text-align:left;float:left;padding:0}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content:before{display:none}}.algolia-autocomplete .suggestion-layout-simple.algolia-docsearch-suggestion{border-bottom:1px solid #eee;padding:8px;margin:0}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--content{width:100%;padding:0}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--content:before{display:none}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header{margin:0;padding:0;display:block;width:100%;border:none}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl0,.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl1{opacity:.6;font-size:.85em}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl1:before{background-image:url('data:image/svg+xml;utf8,');content:"";width:10px;height:10px;display:inline-block}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--wrapper{width:100%;float:left;margin:0;padding:0}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--duplicate-content,.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--subcategory-inline{display:none!important}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--title{margin:0;color:#458ee1;font-size:.9em;font-weight:400}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--title:before{content:"#";font-weight:700;color:#458ee1;display:inline-block}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--text{margin:4px 0 0;display:block;line-height:1.4em;padding:5.33333px 8px;background:#f8f8f8;font-size:.85em;opacity:.8}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight{color:#3f4145;font-weight:700;box-shadow:none}.algolia-autocomplete .algolia-docsearch-footer{width:134px;height:20px;z-index:2000;margin-top:10.66667px;float:right;font-size:0;line-height:0}.algolia-autocomplete .algolia-docsearch-footer--logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='168' height='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M78.988.938h16.594a2.968 2.968 0 012.966 2.966V20.5a2.967 2.967 0 01-2.966 2.964H78.988a2.967 2.967 0 01-2.966-2.964V3.897A2.961 2.961 0 0178.988.938zm41.937 17.866c-4.386.02-4.386-3.54-4.386-4.106l-.007-13.336 2.675-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-10.846-2.18c.821 0 1.43-.047 1.855-.129v-2.719a6.334 6.334 0 00-1.574-.199 5.7 5.7 0 00-.897.069 2.699 2.699 0 00-.814.24c-.24.116-.439.28-.582.491-.15.212-.219.335-.219.656 0 .628.219.991.616 1.23s.938.362 1.615.362zm-.233-9.7c.883 0 1.629.109 2.231.328.602.218 1.088.525 1.444.915.363.396.609.922.76 1.483.157.56.232 1.175.232 1.85v6.874a32.5 32.5 0 01-1.868.314c-.834.123-1.772.185-2.813.185-.69 0-1.327-.069-1.895-.198a4.001 4.001 0 01-1.471-.636 3.085 3.085 0 01-.951-1.134c-.226-.465-.343-1.12-.343-1.803 0-.656.13-1.073.384-1.525a3.24 3.24 0 011.047-1.106c.445-.287.95-.492 1.532-.615a8.8 8.8 0 011.82-.185 8.404 8.404 0 011.972.24v-.438c0-.307-.035-.6-.11-.874a1.88 1.88 0 00-.384-.73 1.784 1.784 0 00-.724-.493 3.164 3.164 0 00-1.143-.205c-.616 0-1.177.075-1.69.164a7.735 7.735 0 00-1.26.307l-.321-2.192c.335-.117.834-.233 1.478-.349a10.98 10.98 0 012.073-.178zm52.842 9.626c.822 0 1.43-.048 1.854-.13V13.7a6.347 6.347 0 00-1.574-.199c-.294 0-.595.021-.896.069a2.7 2.7 0 00-.814.24 1.46 1.46 0 00-.582.491c-.15.212-.218.335-.218.656 0 .628.218.991.615 1.23.404.245.938.362 1.615.362zm-.226-9.694c.883 0 1.629.108 2.231.327.602.219 1.088.526 1.444.915.355.39.609.923.759 1.483a6.8 6.8 0 01.233 1.852v6.873c-.41.088-1.034.19-1.868.314-.834.123-1.772.184-2.813.184-.69 0-1.327-.068-1.895-.198a4.001 4.001 0 01-1.471-.635 3.085 3.085 0 01-.951-1.134c-.226-.465-.343-1.12-.343-1.804 0-.656.13-1.073.384-1.524.26-.45.608-.82 1.047-1.107.445-.286.95-.491 1.532-.614a8.803 8.803 0 012.751-.13c.329.034.671.096 1.04.185v-.437a3.3 3.3 0 00-.109-.875 1.873 1.873 0 00-.384-.731 1.784 1.784 0 00-.724-.492 3.165 3.165 0 00-1.143-.205c-.616 0-1.177.075-1.69.164a7.75 7.75 0 00-1.26.307l-.321-2.193c.335-.116.834-.232 1.478-.348a11.633 11.633 0 012.073-.177zm-8.034-1.271a1.626 1.626 0 01-1.628-1.62c0-.895.725-1.62 1.628-1.62.904 0 1.63.725 1.63 1.62 0 .895-.733 1.62-1.63 1.62zm1.348 13.22h-2.689V7.27l2.69-.423v11.956zm-4.714 0c-4.386.02-4.386-3.54-4.386-4.107l-.008-13.336 2.676-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-8.698-5.903c0-1.156-.253-2.119-.746-2.788-.493-.677-1.183-1.01-2.067-1.01-.882 0-1.574.333-2.065 1.01-.493.676-.733 1.632-.733 2.788 0 1.168.246 1.953.74 2.63.492.683 1.183 1.018 2.066 1.018.882 0 1.574-.342 2.067-1.019.492-.683.738-1.46.738-2.63zm2.737-.007c0 .902-.13 1.584-.397 2.33a5.52 5.52 0 01-1.128 1.906 4.986 4.986 0 01-1.752 1.223c-.685.286-1.739.45-2.265.45-.528-.006-1.574-.157-2.252-.45a5.096 5.096 0 01-1.744-1.223c-.487-.527-.863-1.162-1.137-1.906a6.345 6.345 0 01-.41-2.33c0-.902.123-1.77.397-2.508a5.554 5.554 0 011.15-1.892 5.133 5.133 0 011.75-1.216c.679-.287 1.425-.423 2.232-.423.808 0 1.553.142 2.237.423a4.88 4.88 0 011.753 1.216 5.644 5.644 0 011.135 1.892c.287.738.431 1.606.431 2.508zm-20.138 0c0 1.12.246 2.363.738 2.882.493.52 1.13.78 1.91.78.424 0 .828-.062 1.204-.178.377-.116.677-.253.917-.417V9.33a10.476 10.476 0 00-1.766-.226c-.971-.028-1.71.37-2.23 1.004-.513.636-.773 1.75-.773 2.788zm7.438 5.274c0 1.824-.466 3.156-1.404 4.004-.936.846-2.367 1.27-4.296 1.27-.705 0-2.17-.137-3.34-.396l.431-2.118c.98.205 2.272.26 2.95.26 1.074 0 1.84-.219 2.299-.656.459-.437.684-1.086.684-1.948v-.437a8.07 8.07 0 01-1.047.397c-.43.13-.93.198-1.492.198-.739 0-1.41-.116-2.018-.349a4.206 4.206 0 01-1.567-1.025c-.431-.45-.774-1.017-1.013-1.694-.24-.677-.363-1.885-.363-2.773 0-.834.13-1.88.384-2.577.26-.696.629-1.298 1.129-1.796.493-.498 1.095-.881 1.8-1.162a6.605 6.605 0 012.428-.457c.87 0 1.67.109 2.45.24.78.129 1.444.265 1.985.415V18.17z' fill='%235468FF'/%3E%3Cpath d='M6.972 6.677v1.627c-.712-.446-1.52-.67-2.425-.67-.585 0-1.045.13-1.38.391a1.24 1.24 0 00-.502 1.03c0 .425.164.765.494 1.02.33.256.835.532 1.516.83.447.192.795.356 1.045.495.25.138.537.332.862.582.324.25.563.548.718.894.154.345.23.741.23 1.188 0 .947-.334 1.691-1.004 2.234-.67.542-1.537.814-2.601.814-1.18 0-2.16-.229-2.936-.686v-1.708c.84.628 1.814.942 2.92.942.585 0 1.048-.136 1.388-.407.34-.271.51-.646.51-1.125 0-.287-.1-.55-.302-.79-.203-.24-.42-.42-.655-.542-.234-.123-.585-.29-1.053-.503a61.27 61.27 0 01-.582-.271 13.67 13.67 0 01-.55-.287 4.275 4.275 0 01-.567-.351 6.92 6.92 0 01-.455-.4c-.18-.17-.31-.34-.39-.51-.08-.17-.155-.37-.224-.598a2.553 2.553 0 01-.104-.742c0-.915.333-1.638.998-2.17.664-.532 1.523-.798 2.576-.798.968 0 1.793.17 2.473.51zm7.468 5.696v-.287c-.022-.607-.187-1.088-.495-1.444-.309-.357-.75-.535-1.324-.535-.532 0-.99.194-1.373.583-.382.388-.622.949-.717 1.683h3.909zm1.005 2.792v1.404c-.596.34-1.383.51-2.362.51-1.255 0-2.255-.377-3-1.132-.744-.755-1.116-1.744-1.116-2.968 0-1.297.34-2.316 1.021-3.055.68-.74 1.548-1.11 2.6-1.11 1.033 0 1.852.323 2.458.966.606.644.91 1.572.91 2.784 0 .33-.033.676-.096 1.038h-5.314c.107.702.405 1.239.894 1.611.49.372 1.106.558 1.85.558.862 0 1.58-.202 2.155-.606zm6.605-1.77h-1.212c-.596 0-1.045.116-1.349.35-.303.234-.454.532-.454.894 0 .372.117.664.35.877.235.213.575.32 1.022.32.51 0 .912-.142 1.204-.424.293-.281.44-.651.44-1.108v-.91zm-4.068-2.554V9.325c.627-.361 1.457-.542 2.489-.542 2.116 0 3.175 1.026 3.175 3.08V17h-1.548v-.957c-.415.68-1.143 1.02-2.186 1.02-.766 0-1.38-.22-1.843-.661-.462-.442-.694-1.003-.694-1.684 0-.776.293-1.38.878-1.81.585-.431 1.404-.647 2.457-.647h1.34V11.8c0-.554-.133-.971-.399-1.253-.266-.282-.707-.423-1.324-.423a4.07 4.07 0 00-2.345.718zm9.333-1.93v1.42c.394-1 1.101-1.5 2.123-1.5.148 0 .313.016.494.048v1.531a1.885 1.885 0 00-.75-.143c-.542 0-.989.24-1.34.718-.351.479-.527 1.048-.527 1.707V17h-1.563V8.91h1.563zm5.01 4.084c.022.82.272 1.492.75 2.019.479.526 1.15.79 2.01.79.639 0 1.235-.176 1.788-.527v1.404c-.521.319-1.186.479-1.995.479-1.265 0-2.276-.4-3.031-1.197-.755-.798-1.133-1.792-1.133-2.984 0-1.16.38-2.151 1.14-2.975.761-.825 1.79-1.237 3.088-1.237.702 0 1.346.149 1.93.447v1.436a3.242 3.242 0 00-1.77-.495c-.84 0-1.513.266-2.019.798-.505.532-.758 1.213-.758 2.042zM40.24 5.72v4.579c.458-1 1.293-1.5 2.505-1.5.787 0 1.42.245 1.899.734.479.49.718 1.17.718 2.042V17h-1.564v-5.106c0-.553-.14-.98-.422-1.284-.282-.303-.652-.455-1.11-.455-.531 0-1.002.202-1.411.606-.41.405-.615 1.022-.615 1.851V17h-1.563V5.72h1.563zm14.966 10.02c.596 0 1.096-.253 1.5-.758.404-.506.606-1.157.606-1.955 0-.915-.202-1.62-.606-2.114-.404-.495-.92-.742-1.548-.742-.553 0-1.05.224-1.491.67-.442.447-.662 1.133-.662 2.058 0 .958.212 1.67.638 2.138.425.469.946.703 1.563.703zM53.004 5.72v4.42c.574-.894 1.388-1.341 2.44-1.341 1.022 0 1.857.383 2.506 1.149.649.766.973 1.781.973 3.047 0 1.138-.309 2.109-.925 2.912-.617.803-1.463 1.205-2.537 1.205-1.075 0-1.894-.447-2.457-1.34V17h-1.58V5.72h1.58zm9.908 11.104l-3.223-7.913h1.739l1.005 2.632 1.26 3.415c.096-.32.48-1.458 1.15-3.415l.909-2.632h1.66l-2.92 7.866c-.777 2.074-1.963 3.11-3.559 3.11a2.92 2.92 0 01-.734-.079v-1.34c.17.042.351.064.543.064 1.032 0 1.755-.57 2.17-1.708z' fill='%235D6494'/%3E%3Cpath d='M89.632 5.967v-.772a.978.978 0 00-.978-.977h-2.28a.978.978 0 00-.978.977v.793c0 .088.082.15.171.13a7.127 7.127 0 011.984-.28c.65 0 1.295.088 1.917.259.082.02.164-.04.164-.13m-6.248 1.01l-.39-.389a.977.977 0 00-1.382 0l-.465.465a.973.973 0 000 1.38l.383.383c.062.061.15.047.205-.014.226-.307.472-.601.746-.874.281-.28.568-.526.883-.751.068-.042.075-.137.02-.2m4.16 2.453v3.341c0 .096.104.165.192.117l2.97-1.537c.068-.034.089-.117.055-.184a3.695 3.695 0 00-3.08-1.866c-.068 0-.136.054-.136.13m0 8.048a4.489 4.489 0 01-4.49-4.482 4.488 4.488 0 014.49-4.482 4.488 4.488 0 014.489 4.482 4.484 4.484 0 01-4.49 4.482m0-10.85a6.363 6.363 0 100 12.729 6.37 6.37 0 006.372-6.368 6.358 6.358 0 00-6.371-6.36' fill='%23FFF'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:100%;overflow:hidden;text-indent:-9000px;padding:0!important;width:100%;height:100%;display:block}.dropdown-wrapper{cursor:pointer}.dropdown-wrapper .dropdown-title,.dropdown-wrapper .mobile-dropdown-title{display:block;font-size:.9rem;font-family:inherit;cursor:inherit;padding:inherit;line-height:1.4rem;background:transparent;border:none;font-weight:500;color:#2c3e50}.dropdown-wrapper .dropdown-title:hover,.dropdown-wrapper .mobile-dropdown-title:hover{border-color:transparent}.dropdown-wrapper .dropdown-title .arrow,.dropdown-wrapper .mobile-dropdown-title .arrow{vertical-align:middle;margin-top:-1px;margin-left:.4rem}.dropdown-wrapper .mobile-dropdown-title{display:none;font-weight:600}.dropdown-wrapper .mobile-dropdown-title font-size inherit:hover{color:#3eaf7c}.dropdown-wrapper .nav-dropdown .dropdown-item{color:inherit;line-height:1.7rem}.dropdown-wrapper .nav-dropdown .dropdown-item h4{margin:.45rem 0 0;border-top:1px solid #eee;padding:1rem 1.5rem .45rem 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper{padding:0;list-style:none}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem-wrapper .dropdown-subitem{font-size:.9em}.dropdown-wrapper .nav-dropdown .dropdown-item a{display:block;line-height:1.7rem;position:relative;border-bottom:none;font-weight:400;margin-bottom:0;padding:0 1.5rem 0 1.25rem}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active,.dropdown-wrapper .nav-dropdown .dropdown-item a:hover{color:#3eaf7c}.dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{content:"";width:0;height:0;border-left:5px solid #3eaf7c;border-top:3px solid transparent;border-bottom:3px solid transparent;position:absolute;top:calc(50% - 2px);left:9px}.dropdown-wrapper .nav-dropdown .dropdown-item:first-child h4{margin-top:0;padding-top:0;border-top:0}@media (max-width:719px){.dropdown-wrapper.open .dropdown-title{margin-bottom:.5rem}.dropdown-wrapper .dropdown-title{display:none}.dropdown-wrapper .mobile-dropdown-title{display:block}.dropdown-wrapper .nav-dropdown{transition:height .1s ease-out;overflow:hidden}.dropdown-wrapper .nav-dropdown .dropdown-item h4{border-top:0;margin-top:0;padding-top:0}.dropdown-wrapper .nav-dropdown .dropdown-item>a,.dropdown-wrapper .nav-dropdown .dropdown-item h4{font-size:15px;line-height:2rem}.dropdown-wrapper .nav-dropdown .dropdown-item .dropdown-subitem{font-size:14px;padding-left:1rem}}@media (min-width:719px){.dropdown-wrapper{height:1.8rem}.dropdown-wrapper.open .nav-dropdown,.dropdown-wrapper:hover .nav-dropdown{display:block!important}.dropdown-wrapper .nav-dropdown{display:none;height:auto!important;box-sizing:border-box;max-height:calc(100vh - 2.7rem);overflow-y:auto;position:absolute;top:100%;right:0;background-color:#fff;padding:.6rem 0;border:1px solid;border-color:#ddd #ddd #ccc;text-align:left;border-radius:.25rem;white-space:nowrap;margin:0}}.nav-links{display:inline-block}.nav-links a{line-height:1.4rem;color:inherit}.nav-links a.router-link-active,.nav-links a:hover{color:#3eaf7c}.nav-links .nav-item{position:relative;display:inline-block;margin-left:1.5rem;line-height:2rem}.nav-links .nav-item:first-child{margin-left:0}.nav-links .repo-link{margin-left:1.5rem}@media (max-width:719px){.nav-links .nav-item,.nav-links .repo-link{margin-left:0}}@media (min-width:719px){.nav-links a.router-link-active,.nav-links a:hover{color:#2c3e50}.nav-item>a:not(.external).router-link-active,.nav-item>a:not(.external):hover{margin-bottom:-2px;border-bottom:2px solid #46bd87}}.navbar{padding:.7rem 1.5rem;line-height:2.2rem}.navbar a,.navbar img,.navbar span{display:inline-block}.navbar .logo{height:2.2rem;min-width:2.2rem;margin-right:.8rem;vertical-align:top}.navbar .site-name{font-size:1.3rem;font-weight:600;color:#2c3e50;position:relative}.navbar .links{padding-left:1.5rem;box-sizing:border-box;background-color:#fff;white-space:nowrap;font-size:.9rem;position:absolute;right:1.5rem;top:.7rem;display:flex}.navbar .links .search-box{flex:0 0 auto;vertical-align:top}@media (max-width:719px){.navbar{padding-left:4rem}.navbar .can-hide{display:none}.navbar .links{padding-left:1.5rem}.navbar .site-name{width:calc(100vw - 9.4rem);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}.page-edit{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-edit{padding:2rem}}@media (max-width:419px){.page-edit{padding:1.5rem}}.page-edit{padding-top:1rem;padding-bottom:1rem;overflow:auto}.page-edit .edit-link{display:inline-block}.page-edit .edit-link a{color:#4e6e8e;margin-right:.25rem}.page-edit .last-updated{float:right;font-size:.9em}.page-edit .last-updated .prefix{font-weight:500;color:#4e6e8e}.page-edit .last-updated .time{font-weight:400;color:#767676}@media (max-width:719px){.page-edit .edit-link{margin-bottom:.5rem}.page-edit .last-updated{font-size:.8em;float:none;text-align:left}}.page-nav{max-width:740px;margin:0 auto;padding:2rem 2.5rem}@media (max-width:959px){.page-nav{padding:2rem}}@media (max-width:419px){.page-nav{padding:1.5rem}}.page-nav{padding-top:1rem;padding-bottom:0}.page-nav .inner{min-height:2rem;margin-top:0;border-top:1px solid #eaecef;padding-top:1rem;overflow:auto}.page-nav .next{float:right}.page{padding-bottom:2rem;display:block}.sidebar-group .sidebar-group{padding-left:.5em}.sidebar-group:not(.collapsable) .sidebar-heading:not(.clickable){cursor:auto;color:inherit}.sidebar-group.is-sub-group{padding-left:0}.sidebar-group.is-sub-group>.sidebar-heading{font-size:.95em;line-height:1.4;font-weight:400;padding-left:2rem}.sidebar-group.is-sub-group>.sidebar-heading:not(.clickable){opacity:.5}.sidebar-group.is-sub-group>.sidebar-group-items{padding-left:1rem}.sidebar-group.is-sub-group>.sidebar-group-items>li>.sidebar-link{font-size:.95em;border-left:none}.sidebar-group.depth-2>.sidebar-heading{border-left:none}.sidebar-heading{color:#2c3e50;transition:color .15s ease;cursor:pointer;font-size:1.1em;font-weight:700;padding:.35rem 1.5rem .35rem 1.25rem;width:100%;box-sizing:border-box;margin:0;border-left:.25rem solid transparent}.sidebar-heading.open,.sidebar-heading:hover{color:inherit}.sidebar-heading .arrow{position:relative;top:-.12em;left:.5em}.sidebar-heading.clickable.active{font-weight:600;color:#3eaf7c;border-left-color:#3eaf7c}.sidebar-heading.clickable:hover{color:#3eaf7c}.sidebar-group-items{transition:height .1s ease-out;font-size:.95em;overflow:hidden}.sidebar .sidebar-sub-headers{padding-left:1rem;font-size:.95em}a.sidebar-link{font-size:1em;font-weight:400;display:inline-block;color:#2c3e50;border-left:.25rem solid transparent;padding:.35rem 1rem .35rem 1.25rem;line-height:1.4;width:100%;box-sizing:border-box}a.sidebar-link:hover{color:#3eaf7c}a.sidebar-link.active{font-weight:600;color:#3eaf7c;border-left-color:#3eaf7c}.sidebar-group a.sidebar-link{padding-left:2rem}.sidebar-sub-headers a.sidebar-link{padding-top:.25rem;padding-bottom:.25rem;border-left:none}.sidebar-sub-headers a.sidebar-link.active{font-weight:500}.sidebar ul{padding:0;margin:0;list-style-type:none}.sidebar a{display:inline-block}.sidebar .nav-links{display:none;border-bottom:1px solid #eaecef;padding:.5rem 0 .75rem}.sidebar .nav-links a{font-weight:600}.sidebar .nav-links .nav-item,.sidebar .nav-links .repo-link{display:block;line-height:1.25rem;font-size:1.1em;padding:.5rem 0 .5rem 1.5rem}.sidebar>.sidebar-links{padding:1.5rem 0}.sidebar>.sidebar-links>li>a.sidebar-link{font-size:1.1em;line-height:1.7;font-weight:700}.sidebar>.sidebar-links>li:not(:first-child){margin-top:.75rem}@media (max-width:719px){.sidebar .nav-links{display:block}.sidebar .nav-links .dropdown-wrapper .nav-dropdown .dropdown-item a.router-link-active:after{top:calc(1rem - 2px)}.sidebar>.sidebar-links{padding:1rem 0}} \ No newline at end of file diff --git a/assets/img/GitHub_Webhooks-Details.da577fc5.png b/assets/img/GitHub_Webhooks-Details.da577fc5.png new file mode 100644 index 0000000000000000000000000000000000000000..4ccf6620a265938f5ce2531c1df6121fc712c9e5 GIT binary patch literal 627223 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 z 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

U;u1zZH;j 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

|vZhw_ALz_@$Sg*Gw+7o6T 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

Xaitn)n;!7BoBNt4sQjJ*ZFjS~t6S+5T-p zDoILyzajVb(eqaIq{>8acL(A))QRAnM#V?}Pj(|=z7%jQx`p}MD}Y)=OC$fG&XNsW zZ6(*V&tf(Iy_xj)3k_{uq5E!C`OW#ZmPYF`YF*Q2*3_gP9Jqp6NCwj)j7or8oSaNH zGc!Zwj@nkNd~~A;|D)ch^2f)=|7BSMx9%UDAic5z$t*x;X6$*X>`}i;diQTFG4U8w zgORPp=HE8hpwkA2&^lDVZ};-=a(2I-qx?mUJ@`*$p(~X2`qAG41$O%w(Z4&{pCA6e zI&Yigq+h7qgl5Mh-vsR0cOq+#5)Iw3BW)Z|k6FEXcdv6d9i ztA!_%0DEMiE-I)-h&&Yq)bnZ3`Rum4kAJi{z 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�BX1>Xp73eY+h<{?gMA4D z!uVe0avbECE!=Mr2TN?;(y~pFZ-(Lc=~KdfFVkPO+XxlO-ZSk!cdlGo=SByug0QLy zkL$+#1E3%elDW4g{fZF4jP0h$ZqZ`W>I?c`)LUP4XDrnuBDlGQEB}{ZOx=)X-`u$X zdQ9FJ#y8!`_BHqVBK4d!Eh@i>6HtdKEK8To#tT4@)T+~Z zlkKH%JxJ8)cj3lx!O?`MJNKQBVfF;GEWEe35$z7Jq4I)sy{#sVzB?zJHJnAgda*#MYAh_3M=u3(RFI#Dfmm;K#0_Q)t}RL={-~?5 zW9^zm$KBR*Z{o#D8Vf&mKqZ}3Y2w*NG;F_@s?%{1k~tBGP(;vUaV_Y&|T z{xtGiSX`m%9wivJceJ9J6;Jg}xFq8LC-W$#MKy~LY+(`)EhB<&>&}{dbH`}m3I=KQ zGmH=ypmaN)!M8!w-qcz5vGo~}B5{f%Fxla&NnQfS4=%FF-y7V@K`7Mo*r)7-$wcP)ydNY&lvN z3rrJQS6Dq=MtF7CV6oAa^iMII-2znx8O;qX@W^8X6--}p;HfjrDF{Mjx~Oj>i_zdL z!EH|$qll0Tgx7QM3kiW{sV{j7b4(yK`X&<^y1JAIe-;*xFtJ|u`Mn+#d-dc^*k-zy z#9{}=+z&1fXP8)aq6!Y4=(}@AO%(Fwg$V<**Lda0rn`Kl;vJ?|$L8#?g~DilUsRtL z0vqDaM*&lLa<+P0o;dU7x^EBzI}JT`d~7nQSBWHuS+L;3EDpRkf}{tK`lAL~(AKIz zLjo-cNF)@@CvP5tyif9x@SLS}Z2L$on8Ppj?nhqs+nO5n>+1+|E{SqpD_+=Ga)7>a zaC>umixyY)me=Nz<`z8r>mGh7|B`+LnXqQOZ=XCxIEqC^RN|nNvDBsGaR9%g2M%}B zvm+rKXyeQM3y`W2W>!~d;9{e;=HS;r0xOMR>!EnGM$xSwhE zlN?YK2u1Bl5gt`>+Hkn1y}b_ZLug=a%bx=@DYymkENWEad0NMjF`k@E<<{-@>y+PR^`zwrjM&8iaQ48@lJOIuK zbB9E9Wy7iDbi$(3t*j!J*5y7XIsi~qNOG%AkV2bTVqCRa-A?I5d4L2Rr;eTW(Rlf5 z5awacpAYt4KOl6gB(vrB^W{gPe`l^9EA)Vx!RsX=`J-s;18h7JmxC41LCv4`Yoi{PgUU0cFH5STjEf$-7st?iEdnbBOojc?0+byt~w zzqQn;;~SBdifOuTC@4Vh-`wTAR48LQW$PDJ{~)ThlismF%b)2%I_Jxv*MYBh-u&m} zm1~FiMog?^XZ%SX?Anul?Pb%|mKjU3I%1lhoavMg53FZWlgG2oMn^By=rYpylAxze z8CQwy`bzMfLqWAVJIII{4@MGZ{0|jdTNdW`J07P_YZAHi{8}nPH6Ax( zv!~#$%nhA`EFo+$t{VTSe_bVGjz|21dzt2t(p^>{vmlcqF9tJO#qJNoy(P+uO z750)%1W$$DzhdVhZvTgDJfviFAe>Ur(Rm_Ez0-Fe_>9$|Y+;;HCB_-C$>GZ){L)rI z)b7{(%M9X^@)py^`v$ZUk=aa3^;y7TgA)w_A`;D#KZKyG{%o>n0luG&mwUC&kdN|5 zBh{Rj0Ev<~Mv^`yF|o3G?uiH)I9#2}X)tbLIr~ErQ+24LeL5$*KYSPpPn`zl+tAr7 zdGgS^BG*HDA^TI?t6|7HI<i$FAwPulV^jzI})ri%5{_>@0 ztkS@eU9Np{*uyTKz>rrpY0Y|gcL(A}mOYyI90&ICnA}Y>S=^_h66IpA_QfH>kjEt8 z^&x*zV%uqM1=n@5`k4;54x_NlPqIhZdd!9{&kbAKm45dk^^ca{-9=IMvo@!CN_WZU z2s%m_tRHxAQTbzR^t-jJ`S8-~66gXS8<-3(MdTOcno

9LD9qz)1nZyu;LoEBpH| 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%0D6-mbd>Lhoj|rq32D^>pWpT{60J((xmD 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 z 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 Fe*therFj4V literal 0 HcmV?d00001 diff --git a/assets/img/GitLab.dd7e0dbb.png b/assets/img/GitLab.dd7e0dbb.png new file mode 100644 index 0000000000000000000000000000000000000000..32b288f1b45481b5635b25a03d856274793b2368 GIT binary patch literal 112543 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�sxtWhUcTKVC>t4$N_JDo`@PWuc%&XEWEKS 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 literal 0 HcmV?d00001 diff --git a/assets/img/Tekton_Dashboard.258cb264.png b/assets/img/Tekton_Dashboard.258cb264.png new file mode 100644 index 0000000000000000000000000000000000000000..0071196205372d9f287127763a3d2b4ca412ca7a GIT binary patch literal 89501 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 literal 0 HcmV?d00001 diff --git a/assets/img/harbor_projects.338db00b.png b/assets/img/harbor_projects.338db00b.png new file mode 100644 index 0000000000000000000000000000000000000000..c4265b321c9e26162f7fbec705013b03be38fecd GIT binary patch literal 40828 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 XJ9Qm1UX48^#P8m(uBVnkGxPahrk3{C literal 0 HcmV?d00001 diff --git a/assets/img/kubed.e88b1fb6.svg b/assets/img/kubed.e88b1fb6.svg new file mode 100644 index 0000000..14c7ef7 --- /dev/null +++ b/assets/img/kubed.e88b1fb6.svg @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + namespace: cert-manager + + + namespace: cert-manager + + + + + + + + cert- manager + + + cert- manager + + + + + + + + ingress-cert secretlabel: app=kubed + + + ingress-cert secretlabel: app=kubed + + + + + + + + + + + + + + + namespace: harborlabel: app=kubed + + + namespace: harborlabel: app=kubed + + + + + + + + ingress-cert secret + + + ingress-cert secret + + + + + + + + kubed + + + kubed + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/img/podinfo.d8c508a4.png b/assets/img/podinfo.d8c508a4.png new file mode 100644 index 0000000000000000000000000000000000000000..64394f6608cf8c51664084bcf06bac0017c92fee GIT binary patch literal 1520736 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 E2PbAs?f?J) literal 0 HcmV?d00001 diff --git a/assets/img/search.83621669.svg b/assets/img/search.83621669.svg new file mode 100644 index 0000000..03d8391 --- /dev/null +++ b/assets/img/search.83621669.svg @@ -0,0 +1 @@ + diff --git a/assets/js/1.416be298.js b/assets/js/1.416be298.js new file mode 100644 index 0000000..ae76333 --- /dev/null +++ b/assets/js/1.416be298.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[1,12,14,19,20,23],{246:function(t,e,n){"use strict";n.d(e,"d",(function(){return s})),n.d(e,"a",(function(){return r})),n.d(e,"i",(function(){return o})),n.d(e,"f",(function(){return l})),n.d(e,"g",(function(){return u})),n.d(e,"h",(function(){return c})),n.d(e,"b",(function(){return h})),n.d(e,"e",(function(){return f})),n.d(e,"k",(function(){return p})),n.d(e,"l",(function(){return d})),n.d(e,"c",(function(){return m})),n.d(e,"j",(function(){return k}));n(92);const s=/#.*$/,i=/\.(md|html)$/,r=/\/$/,o=/^[a-z]+:/i;function a(t){return decodeURI(t).replace(s,"").replace(i,"")}function l(t){return o.test(t)}function u(t){return/^mailto:/.test(t)}function c(t){return/^tel:/.test(t)}function h(t){if(l(t))return t;const e=t.match(s),n=e?e[0]:"",i=a(t);return r.test(i)?t:i+".html"+n}function f(t,e){const n=decodeURIComponent(t.hash),i=function(t){const e=t.match(s);if(e)return e[0]}(e);if(i&&n!==i)return!1;return a(t.path)===a(e)}function p(t,e,n){if(l(e))return{type:"external",path:e};n&&(e=function(t,e,n){const s=t.charAt(0);if("/"===s)return t;if("?"===s||"#"===s)return e+t;const i=e.split("/");n&&i[i.length-1]||i.pop();const r=t.replace(/^\//,"").split("/");for(let t=0;tfunction t(e,n,s,i=1){if("string"==typeof e)return p(n,e,s);if(Array.isArray(e))return Object.assign(p(n,e[0],s),{title:e[1]});{const r=e.children||[];return 0===r.length&&e.path?Object.assign(p(n,e.path,s),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:r.map(e=>t(e,n,s,i+1)),collapsable:!1!==e.collapsable}}}(t,i,n)):[]}return[]}function g(t){const e=m(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map(e=>({type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}))}]}function m(t){let e;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)}),t.filter(t=>2===t.level)}function k(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},247:function(t,e,n){},248:function(t,e,n){"use strict";n.r(e);var s=n(246),i={name:"NavLink",props:{item:{required:!0}},computed:{link(){return Object(s.b)(this.item.link)},exact(){return this.$site.locales?Object.keys(this.$site.locales).some(t=>t===this.link):"/"===this.link},isNonHttpURI(){return Object(s.g)(this.link)||Object(s.h)(this.link)},isBlankTarget(){return"_blank"===this.target},isInternal(){return!Object(s.f)(this.link)&&!this.isBlankTarget},target(){return this.isNonHttpURI?null:this.item.target?this.item.target:Object(s.f)(this.link)?"_blank":""},rel(){return this.isNonHttpURI||!1===this.item.rel?null:this.item.rel?this.item.rel:this.isBlankTarget?"noopener noreferrer":null}},methods:{focusoutAction(){this.$emit("focusout")}}},r=n(8),o=Object(r.a)(i,(function(){var t=this,e=t._self._c;return t.isInternal?e("RouterLink",{staticClass:"nav-link",attrs:{to:t.link,exact:t.exact},nativeOn:{focusout:function(e){return t.focusoutAction.apply(null,arguments)}}},[t._v("\n "+t._s(t.item.text)+"\n")]):e("a",{staticClass:"nav-link external",attrs:{href:t.link,target:t.target,rel:t.rel},on:{focusout:t.focusoutAction}},[t._v("\n "+t._s(t.item.text)+"\n "),t.isBlankTarget?e("OutboundLink"):t._e()],1)}),[],!1,null,null,null);e.default=o.exports},249:function(t,e,n){"use strict";n.r(e);var s={name:"DropdownTransition",methods:{setHeight(t){t.style.height=t.scrollHeight+"px"},unsetHeight(t){t.style.height=""}}},i=(n(250),n(8)),r=Object(i.a)(s,(function(){return(0,this._self._c)("transition",{attrs:{name:"dropdown"},on:{enter:this.setHeight,"after-enter":this.unsetHeight,"before-leave":this.setHeight}},[this._t("default")],2)}),[],!1,null,null,null);e.default=r.exports},250:function(t,e,n){"use strict";n(247)},251:function(t,e,n){},254:function(t,e,n){},258:function(t,e,n){"use strict";n(251)},261:function(t,e,n){"use strict";n.r(e);var s=n(248),i=n(249),r=n(93),o=n.n(r),a={name:"DropdownLink",components:{NavLink:s.default,DropdownTransition:i.default},props:{item:{required:!0}},data:()=>({open:!1}),computed:{dropdownAriaLabel(){return this.item.ariaLabel||this.item.text}},watch:{$route(){this.open=!1}},methods:{setOpen(t){this.open=t},isLastItemOfArray:(t,e)=>o()(e)===t,handleDropdown(){0===event.detail&&this.setOpen(!this.open)}}},l=(n(258),n(8)),u=Object(l.a)(a,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"dropdown-wrapper",class:{open:t.open}},[e("button",{staticClass:"dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:t.handleDropdown}},[e("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),e("span",{staticClass:"arrow down"})]),t._v(" "),e("button",{staticClass:"mobile-dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:function(e){return t.setOpen(!t.open)}}},[e("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),e("span",{staticClass:"arrow",class:t.open?"down":"right"})]),t._v(" "),e("DropdownTransition",[e("ul",{directives:[{name:"show",rawName:"v-show",value:t.open,expression:"open"}],staticClass:"nav-dropdown"},t._l(t.item.items,(function(n,s){return e("li",{key:n.link||s,staticClass:"dropdown-item"},["links"===n.type?e("h4",[t._v("\n "+t._s(n.text)+"\n ")]):t._e(),t._v(" "),"links"===n.type?e("ul",{staticClass:"dropdown-subitem-wrapper"},t._l(n.items,(function(s){return e("li",{key:s.link,staticClass:"dropdown-subitem"},[e("NavLink",{attrs:{item:s},on:{focusout:function(e){t.isLastItemOfArray(s,n.items)&&t.isLastItemOfArray(n,t.item.items)&&t.setOpen(!1)}}})],1)})),0):e("NavLink",{attrs:{item:n},on:{focusout:function(e){t.isLastItemOfArray(n,t.item.items)&&t.setOpen(!1)}}})],1)})),0)])],1)}),[],!1,null,null,null);e.default=u.exports},264:function(t,e,n){"use strict";n(254)},265:function(t,e,n){},272:function(t,e,n){"use strict";n.r(e);var s=n(261),i=n(246),r={name:"NavLinks",components:{NavLink:n(248).default,DropdownLink:s.default},computed:{userNav(){return this.$themeLocaleConfig.nav||this.$site.themeConfig.nav||[]},nav(){const{locales:t}=this.$site;if(t&&Object.keys(t).length>1){const e=this.$page.path,n=this.$router.options.routes,s=this.$site.themeConfig.locales||{},i={text:this.$themeLocaleConfig.selectText||"Languages",ariaLabel:this.$themeLocaleConfig.ariaLabel||"Select language",items:Object.keys(t).map(i=>{const r=t[i],o=s[i]&&s[i].label||r.lang;let a;return r.lang===this.$lang?a=e:(a=e.replace(this.$localeConfig.path,i),n.some(t=>t.path===a)||(a=i)),{text:o,link:a}})};return[...this.userNav,i]}return this.userNav},userLinks(){return(this.nav||[]).map(t=>Object.assign(Object(i.j)(t),{items:(t.items||[]).map(i.j)}))},repoLink(){const{repo:t}=this.$site.themeConfig;return t?/^https?:/.test(t)?t:"https://github.com/"+t:null},repoLabel(){if(!this.repoLink)return;if(this.$site.themeConfig.repoLabel)return this.$site.themeConfig.repoLabel;const t=this.repoLink.match(/^https?:\/\/[^/]+/)[0],e=["GitHub","GitLab","Bitbucket"];for(let n=0;n{let s=i()(e,"title","");return i()(e,"frontmatter.tags")&&(s+=" "+e.frontmatter.tags.join(" ")),n&&(s+=" "+n),o(t,s)};const o=(t,e)=>{const n=t=>t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),s=new RegExp("[^\0-]"),i=t.split(/\s+/g).map(t=>t.trim()).filter(t=>!!t);if(s.test(t))return i.some(t=>e.toLowerCase().indexOf(t)>-1);{const s=t.endsWith(" ");return new RegExp(i.map((t,e)=>i.length!==e+1||s?`(?=.*\\b${n(t)}\\b)`:`(?=.*\\b${n(t)})`).join("")+".+","gi").test(e)}};var a={name:"SearchBox",data:()=>({query:"",focused:!1,focusIndex:0,placeholder:void 0}),computed:{showSuggestions(){return this.focused&&this.suggestions&&this.suggestions.length},suggestions(){const t=this.query.trim().toLowerCase();if(!t)return;const{pages:e}=this.$site,n=this.$site.themeConfig.searchMaxSuggestions||5,s=this.$localePath,i=[];for(let o=0;o=n);o++){const a=e[o];if(this.getPageLocalePath(a)===s&&this.isSearchable(a))if(r(t,a))i.push(a);else if(a.headers)for(let e=0;e=n);e++){const n=a.headers[e];n.title&&r(t,a,n.title)&&i.push(Object.assign({},a,{path:a.path+"#"+n.slug,header:n}))}}return i},alignRight(){return(this.$site.themeConfig.nav||[]).length+(this.$site.repo?1:0)<=2}},mounted(){this.placeholder=this.$site.themeConfig.searchPlaceholder||"",document.addEventListener("keydown",this.onHotkey)},beforeDestroy(){document.removeEventListener("keydown",this.onHotkey)},methods:{getPageLocalePath(t){for(const e in this.$site.locales||{})if("/"!==e&&0===t.path.indexOf(e))return e;return"/"},isSearchable(t){let e=null;return null===e||(e=Array.isArray(e)?e:new Array(e),e.filter(e=>t.path.match(e)).length>0)},onHotkey(t){t.srcElement===document.body&&["s","/"].includes(t.key)&&(this.$refs.input.focus(),t.preventDefault())},onUp(){this.showSuggestions&&(this.focusIndex>0?this.focusIndex--:this.focusIndex=this.suggestions.length-1)},onDown(){this.showSuggestions&&(this.focusIndex "+t._s(n.header.title))]):t._e()])])})),0):t._e()])}),[],!1,null,null,null).exports,c=n(290),h=n(272);function f(t,e){return t.ownerDocument.defaultView.getComputedStyle(t,null)[e]}var p={name:"Navbar",components:{SidebarButton:c.default,NavLinks:h.default,SearchBox:u,AlgoliaSearchBox:{}},data:()=>({linksWrapMaxWidth:null}),computed:{algolia(){return this.$themeLocaleConfig.algolia||this.$site.themeConfig.algolia||{}},isAlgoliaSearch(){return this.algolia&&this.algolia.apiKey&&this.algolia.indexName}},mounted(){const t=parseInt(f(this.$el,"paddingLeft"))+parseInt(f(this.$el,"paddingRight")),e=()=>{document.documentElement.clientWidth<719?this.linksWrapMaxWidth=null:this.linksWrapMaxWidth=this.$el.offsetWidth-t-(this.$refs.siteName&&this.$refs.siteName.offsetWidth||0)};e(),window.addEventListener("resize",e,!1)}},d=(n(297),Object(l.a)(p,(function(){var t=this,e=t._self._c;return e("header",{staticClass:"navbar"},[e("SidebarButton",{on:{"toggle-sidebar":function(e){return t.$emit("toggle-sidebar")}}}),t._v(" "),e("RouterLink",{staticClass:"home-link",attrs:{to:t.$localePath}},[t.$site.themeConfig.logo?e("img",{staticClass:"logo",attrs:{src:t.$withBase(t.$site.themeConfig.logo),alt:t.$siteTitle}}):t._e(),t._v(" "),t.$siteTitle?e("span",{ref:"siteName",staticClass:"site-name",class:{"can-hide":t.$site.themeConfig.logo}},[t._v(t._s(t.$siteTitle))]):t._e()]),t._v(" "),e("div",{staticClass:"links",style:t.linksWrapMaxWidth?{"max-width":t.linksWrapMaxWidth+"px"}:{}},[t.isAlgoliaSearch?e("AlgoliaSearchBox",{attrs:{options:t.algolia}}):!1!==t.$site.themeConfig.search&&!1!==t.$page.frontmatter.search?e("SearchBox"):t._e(),t._v(" "),e("NavLinks",{staticClass:"can-hide"})],1)],1)}),[],!1,null,null,null));e.default=d.exports}}]); \ No newline at end of file diff --git a/assets/js/10.f496eaac.js b/assets/js/10.f496eaac.js new file mode 100644 index 0000000..2fd6172 --- /dev/null +++ b/assets/js/10.f496eaac.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[10,3,12,14,18,19,23],{246:function(t,e,n){"use strict";n.d(e,"d",(function(){return i})),n.d(e,"a",(function(){return r})),n.d(e,"i",(function(){return a})),n.d(e,"f",(function(){return l})),n.d(e,"g",(function(){return u})),n.d(e,"h",(function(){return c})),n.d(e,"b",(function(){return p})),n.d(e,"e",(function(){return h})),n.d(e,"k",(function(){return d})),n.d(e,"l",(function(){return f})),n.d(e,"c",(function(){return m})),n.d(e,"j",(function(){return g}));n(92);const i=/#.*$/,s=/\.(md|html)$/,r=/\/$/,a=/^[a-z]+:/i;function o(t){return decodeURI(t).replace(i,"").replace(s,"")}function l(t){return a.test(t)}function u(t){return/^mailto:/.test(t)}function c(t){return/^tel:/.test(t)}function p(t){if(l(t))return t;const e=t.match(i),n=e?e[0]:"",s=o(t);return r.test(s)?t:s+".html"+n}function h(t,e){const n=decodeURIComponent(t.hash),s=function(t){const e=t.match(i);if(e)return e[0]}(e);if(s&&n!==s)return!1;return o(t.path)===o(e)}function d(t,e,n){if(l(e))return{type:"external",path:e};n&&(e=function(t,e,n){const i=t.charAt(0);if("/"===i)return t;if("?"===i||"#"===i)return e+t;const s=e.split("/");n&&s[s.length-1]||s.pop();const r=t.replace(/^\//,"").split("/");for(let t=0;tfunction t(e,n,i,s=1){if("string"==typeof e)return d(n,e,i);if(Array.isArray(e))return Object.assign(d(n,e[0],i),{title:e[1]});{const r=e.children||[];return 0===r.length&&e.path?Object.assign(d(n,e.path,i),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:r.map(e=>t(e,n,i,s+1)),collapsable:!1!==e.collapsable}}}(t,s,n)):[]}return[]}function b(t){const e=m(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map(e=>({type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}))}]}function m(t){let e;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)}),t.filter(t=>2===t.level)}function g(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},247:function(t,e,n){},248:function(t,e,n){"use strict";n.r(e);var i=n(246),s={name:"NavLink",props:{item:{required:!0}},computed:{link(){return Object(i.b)(this.item.link)},exact(){return this.$site.locales?Object.keys(this.$site.locales).some(t=>t===this.link):"/"===this.link},isNonHttpURI(){return Object(i.g)(this.link)||Object(i.h)(this.link)},isBlankTarget(){return"_blank"===this.target},isInternal(){return!Object(i.f)(this.link)&&!this.isBlankTarget},target(){return this.isNonHttpURI?null:this.item.target?this.item.target:Object(i.f)(this.link)?"_blank":""},rel(){return this.isNonHttpURI||!1===this.item.rel?null:this.item.rel?this.item.rel:this.isBlankTarget?"noopener noreferrer":null}},methods:{focusoutAction(){this.$emit("focusout")}}},r=n(8),a=Object(r.a)(s,(function(){var t=this,e=t._self._c;return t.isInternal?e("RouterLink",{staticClass:"nav-link",attrs:{to:t.link,exact:t.exact},nativeOn:{focusout:function(e){return t.focusoutAction.apply(null,arguments)}}},[t._v("\n "+t._s(t.item.text)+"\n")]):e("a",{staticClass:"nav-link external",attrs:{href:t.link,target:t.target,rel:t.rel},on:{focusout:t.focusoutAction}},[t._v("\n "+t._s(t.item.text)+"\n "),t.isBlankTarget?e("OutboundLink"):t._e()],1)}),[],!1,null,null,null);e.default=a.exports},249:function(t,e,n){"use strict";n.r(e);var i={name:"DropdownTransition",methods:{setHeight(t){t.style.height=t.scrollHeight+"px"},unsetHeight(t){t.style.height=""}}},s=(n(250),n(8)),r=Object(s.a)(i,(function(){return(0,this._self._c)("transition",{attrs:{name:"dropdown"},on:{enter:this.setHeight,"after-enter":this.unsetHeight,"before-leave":this.setHeight}},[this._t("default")],2)}),[],!1,null,null,null);e.default=r.exports},250:function(t,e,n){"use strict";n(247)},251:function(t,e,n){},252:function(t,e,n){},254:function(t,e,n){},257:function(t,e,n){},258:function(t,e,n){"use strict";n(251)},259:function(t,e,n){"use strict";n(252)},260:function(t,e,n){"use strict";n.r(e);var i=n(273),s=n(262),r=n(246);function a(t,e){if("group"===e.type){const n=e.path&&Object(r.e)(t,e.path),i=e.children.some(e=>"group"===e.type?a(t,e):"page"===e.type&&Object(r.e)(t,e.path));return n||i}return!1}var o={name:"SidebarLinks",components:{SidebarGroup:i.default,SidebarLink:s.default},props:["items","depth","sidebarDepth","initialOpenGroupIndex"],data(){return{openGroupIndex:this.initialOpenGroupIndex||0}},watch:{$route(){this.refreshIndex()}},created(){this.refreshIndex()},methods:{refreshIndex(){const t=function(t,e){for(let n=0;n-1&&(this.openGroupIndex=t)},toggleGroup(t){this.openGroupIndex=t===this.openGroupIndex?-1:t},isActive(t){return Object(r.e)(this.$route,t.regularPath)}}},l=n(8),u=Object(l.a)(o,(function(){var t=this,e=t._self._c;return t.items.length?e("ul",{staticClass:"sidebar-links"},t._l(t.items,(function(n,i){return e("li",{key:i},["group"===n.type?e("SidebarGroup",{attrs:{item:n,open:i===t.openGroupIndex,collapsable:n.collapsable||n.collapsible,depth:t.depth},on:{toggle:function(e){return t.toggleGroup(i)}}}):e("SidebarLink",{attrs:{"sidebar-depth":t.sidebarDepth,item:n}})],1)})),0):t._e()}),[],!1,null,null,null);e.default=u.exports},261:function(t,e,n){"use strict";n.r(e);var i=n(248),s=n(249),r=n(93),a=n.n(r),o={name:"DropdownLink",components:{NavLink:i.default,DropdownTransition:s.default},props:{item:{required:!0}},data:()=>({open:!1}),computed:{dropdownAriaLabel(){return this.item.ariaLabel||this.item.text}},watch:{$route(){this.open=!1}},methods:{setOpen(t){this.open=t},isLastItemOfArray:(t,e)=>a()(e)===t,handleDropdown(){0===event.detail&&this.setOpen(!this.open)}}},l=(n(258),n(8)),u=Object(l.a)(o,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"dropdown-wrapper",class:{open:t.open}},[e("button",{staticClass:"dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:t.handleDropdown}},[e("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),e("span",{staticClass:"arrow down"})]),t._v(" "),e("button",{staticClass:"mobile-dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:function(e){return t.setOpen(!t.open)}}},[e("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),e("span",{staticClass:"arrow",class:t.open?"down":"right"})]),t._v(" "),e("DropdownTransition",[e("ul",{directives:[{name:"show",rawName:"v-show",value:t.open,expression:"open"}],staticClass:"nav-dropdown"},t._l(t.item.items,(function(n,i){return e("li",{key:n.link||i,staticClass:"dropdown-item"},["links"===n.type?e("h4",[t._v("\n "+t._s(n.text)+"\n ")]):t._e(),t._v(" "),"links"===n.type?e("ul",{staticClass:"dropdown-subitem-wrapper"},t._l(n.items,(function(i){return e("li",{key:i.link,staticClass:"dropdown-subitem"},[e("NavLink",{attrs:{item:i},on:{focusout:function(e){t.isLastItemOfArray(i,n.items)&&t.isLastItemOfArray(n,t.item.items)&&t.setOpen(!1)}}})],1)})),0):e("NavLink",{attrs:{item:n},on:{focusout:function(e){t.isLastItemOfArray(n,t.item.items)&&t.setOpen(!1)}}})],1)})),0)])],1)}),[],!1,null,null,null);e.default=u.exports},262:function(t,e,n){"use strict";n.r(e);var i=n(246);function s(t,e,n,i,s){const r={props:{to:e,activeClass:"",exactActiveClass:""},class:{active:i,"sidebar-link":!0}};return s>2&&(r.style={"padding-left":s+"rem"}),t("RouterLink",r,n)}function r(t,e,n,a,o,l=1){return!e||l>o?null:t("ul",{class:"sidebar-sub-headers"},e.map(e=>{const u=Object(i.e)(a,n+"#"+e.slug);return t("li",{class:"sidebar-sub-header"},[s(t,n+"#"+e.slug,e.title,u,e.level-1),r(t,e.children,n,a,o,l+1)])}))}var a={functional:!0,props:["item","sidebarDepth"],render(t,{parent:{$page:e,$site:n,$route:a,$themeConfig:o,$themeLocaleConfig:l},props:{item:u,sidebarDepth:c}}){const p=Object(i.e)(a,u.path),h="auto"===u.type?p||u.children.some(t=>Object(i.e)(a,u.basePath+"#"+t.slug)):p,d="external"===u.type?function(t,e,n){return t("a",{attrs:{href:e,target:"_blank",rel:"noopener noreferrer"},class:{"sidebar-link":!0}},[n,t("OutboundLink")])}(t,u.path,u.title||u.path):s(t,u.path,u.title||u.path,h),f=[e.frontmatter.sidebarDepth,c,l.sidebarDepth,o.sidebarDepth,1].find(t=>void 0!==t),b=l.displayAllHeaders||o.displayAllHeaders;if("auto"===u.type)return[d,r(t,u.children,u.basePath,a,f)];if((h||b)&&u.headers&&!i.d.test(u.path)){return[d,r(t,Object(i.c)(u.headers),u.path,a,f)]}return d}},o=(n(259),n(8)),l=Object(o.a)(a,void 0,void 0,!1,null,null,null);e.default=l.exports},264:function(t,e,n){"use strict";n(254)},270:function(t,e,n){"use strict";n(257)},271:function(t,e,n){},272:function(t,e,n){"use strict";n.r(e);var i=n(261),s=n(246),r={name:"NavLinks",components:{NavLink:n(248).default,DropdownLink:i.default},computed:{userNav(){return this.$themeLocaleConfig.nav||this.$site.themeConfig.nav||[]},nav(){const{locales:t}=this.$site;if(t&&Object.keys(t).length>1){const e=this.$page.path,n=this.$router.options.routes,i=this.$site.themeConfig.locales||{},s={text:this.$themeLocaleConfig.selectText||"Languages",ariaLabel:this.$themeLocaleConfig.ariaLabel||"Select language",items:Object.keys(t).map(s=>{const r=t[s],a=i[s]&&i[s].label||r.lang;let o;return r.lang===this.$lang?o=e:(o=e.replace(this.$localeConfig.path,s),n.some(t=>t.path===o)||(o=s)),{text:a,link:o}})};return[...this.userNav,s]}return this.userNav},userLinks(){return(this.nav||[]).map(t=>Object.assign(Object(s.j)(t),{items:(t.items||[]).map(s.j)}))},repoLink(){const{repo:t}=this.$site.themeConfig;return t?/^https?:/.test(t)?t:"https://github.com/"+t:null},repoLabel(){if(!this.repoLink)return;if(this.$site.themeConfig.repoLabel)return this.$site.themeConfig.repoLabel;const t=this.repoLink.match(/^https?:\/\/[^/]+/)[0],e=["GitHub","GitLab","Bitbucket"];for(let n=0;nfunction t(e,n,r,i=1){if("string"==typeof e)return d(n,e,r);if(Array.isArray(e))return Object.assign(d(n,e[0],r),{title:e[1]});{const a=e.children||[];return 0===a.length&&e.path?Object.assign(d(n,e.path,r),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:a.map(e=>t(e,n,r,i+1)),collapsable:!1!==e.collapsable}}}(t,i,n)):[]}return[]}function g(t){const e=v(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map(e=>({type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}))}]}function v(t){let e;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)}),t.filter(t=>2===t.level)}function m(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},253:function(t,e){t.exports=function(t){return null==t}},255:function(t,e,n){},256:function(t,e,n){},266:function(t,e,n){"use strict";n(255)},267:function(t,e,n){var r=n(12),i=n(4),a=n(11);t.exports=function(t){return"string"==typeof t||!i(t)&&a(t)&&"[object String]"==r(t)}},268:function(t,e,n){"use strict";n(256)},269:function(t,e,n){},274:function(t,e,n){"use strict";n.r(e);var r=n(253),i=n.n(r),a=n(246),s={name:"PageEdit",computed:{lastUpdated(){return this.$page.lastUpdated},lastUpdatedText(){return"string"==typeof this.$themeLocaleConfig.lastUpdated?this.$themeLocaleConfig.lastUpdated:"string"==typeof this.$site.themeConfig.lastUpdated?this.$site.themeConfig.lastUpdated:"Last Updated"},editLink(){const t=i()(this.$page.frontmatter.editLink)?this.$site.themeConfig.editLinks:this.$page.frontmatter.editLink,{repo:e,docsDir:n="",docsBranch:r="master",docsRepo:a=e}=this.$site.themeConfig;return t&&a&&this.$page.relativePath?this.createEditLink(e,a,n,r,this.$page.relativePath):null},editLinkText(){return this.$themeLocaleConfig.editLinkText||this.$site.themeConfig.editLinkText||"Edit this page"}},methods:{createEditLink(t,e,n,r,i){if(/bitbucket.org/.test(e)){return e.replace(a.a,"")+"/src"+`/${r}/`+(n?n.replace(a.a,"")+"/":"")+i+`?mode=edit&spa=0&at=${r}&fileviewer=file-view-default`}if(/gitlab.com/.test(e)){return e.replace(a.a,"")+"/-/edit"+`/${r}/`+(n?n.replace(a.a,"")+"/":"")+i}return(a.i.test(e)?e:"https://github.com/"+e).replace(a.a,"")+"/edit"+`/${r}/`+(n?n.replace(a.a,"")+"/":"")+i}}},o=(n(266),n(8)),u=Object(o.a)(s,(function(){var t=this,e=t._self._c;return e("footer",{staticClass:"page-edit"},[t.editLink?e("div",{staticClass:"edit-link"},[e("a",{attrs:{href:t.editLink,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.editLinkText))]),t._v(" "),e("OutboundLink")],1):t._e(),t._v(" "),t.lastUpdated?e("div",{staticClass:"last-updated"},[e("span",{staticClass:"prefix"},[t._v(t._s(t.lastUpdatedText)+":")]),t._v(" "),e("span",{staticClass:"time"},[t._v(t._s(t.lastUpdated))])]):t._e()])}),[],!1,null,null,null);e.default=u.exports},275:function(t,e,n){"use strict";n.r(e);n(92);var r=n(246),i=n(267),a=n.n(i),s=n(253),o=n.n(s),u={name:"PageNav",props:["sidebarItems"],computed:{prev(){return l(c.PREV,this)},next(){return l(c.NEXT,this)}}};const c={NEXT:{resolveLink:function(t,e){return p(t,e,1)},getThemeLinkConfig:({nextLinks:t})=>t,getPageLinkConfig:({frontmatter:t})=>t.next},PREV:{resolveLink:function(t,e){return p(t,e,-1)},getThemeLinkConfig:({prevLinks:t})=>t,getPageLinkConfig:({frontmatter:t})=>t.prev}};function l(t,{$themeConfig:e,$page:n,$route:i,$site:s,sidebarItems:u}){const{resolveLink:c,getThemeLinkConfig:l,getPageLinkConfig:p}=t,f=l(e),d=p(n),h=o()(d)?f:d;return!1===h?void 0:a()(h)?Object(r.k)(s.pages,h,i.path):c(n,u)}function p(t,e,n){const r=[];!function t(e,n){for(let r=0,i=e.length;rfunction t(e,n,i,r=1){if("string"==typeof e)return f(n,e,i);if(Array.isArray(e))return Object.assign(f(n,e[0],i),{title:e[1]});{const s=e.children||[];return 0===s.length&&e.path?Object.assign(f(n,e.path,i),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:s.map(e=>t(e,n,i,r+1)),collapsable:!1!==e.collapsable}}}(t,r,n)):[]}return[]}function m(t){const e=b(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map(e=>({type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}))}]}function b(t){let e;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)}),t.filter(t=>2===t.level)}function g(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},247:function(t,e,n){},248:function(t,e,n){"use strict";n.r(e);var i=n(246),r={name:"NavLink",props:{item:{required:!0}},computed:{link(){return Object(i.b)(this.item.link)},exact(){return this.$site.locales?Object.keys(this.$site.locales).some(t=>t===this.link):"/"===this.link},isNonHttpURI(){return Object(i.g)(this.link)||Object(i.h)(this.link)},isBlankTarget(){return"_blank"===this.target},isInternal(){return!Object(i.f)(this.link)&&!this.isBlankTarget},target(){return this.isNonHttpURI?null:this.item.target?this.item.target:Object(i.f)(this.link)?"_blank":""},rel(){return this.isNonHttpURI||!1===this.item.rel?null:this.item.rel?this.item.rel:this.isBlankTarget?"noopener noreferrer":null}},methods:{focusoutAction(){this.$emit("focusout")}}},s=n(8),a=Object(s.a)(r,(function(){var t=this,e=t._self._c;return t.isInternal?e("RouterLink",{staticClass:"nav-link",attrs:{to:t.link,exact:t.exact},nativeOn:{focusout:function(e){return t.focusoutAction.apply(null,arguments)}}},[t._v("\n "+t._s(t.item.text)+"\n")]):e("a",{staticClass:"nav-link external",attrs:{href:t.link,target:t.target,rel:t.rel},on:{focusout:t.focusoutAction}},[t._v("\n "+t._s(t.item.text)+"\n "),t.isBlankTarget?e("OutboundLink"):t._e()],1)}),[],!1,null,null,null);e.default=a.exports},249:function(t,e,n){"use strict";n.r(e);var i={name:"DropdownTransition",methods:{setHeight(t){t.style.height=t.scrollHeight+"px"},unsetHeight(t){t.style.height=""}}},r=(n(250),n(8)),s=Object(r.a)(i,(function(){return(0,this._self._c)("transition",{attrs:{name:"dropdown"},on:{enter:this.setHeight,"after-enter":this.unsetHeight,"before-leave":this.setHeight}},[this._t("default")],2)}),[],!1,null,null,null);e.default=s.exports},250:function(t,e,n){"use strict";n(247)},251:function(t,e,n){},254:function(t,e,n){},258:function(t,e,n){"use strict";n(251)},261:function(t,e,n){"use strict";n.r(e);var i=n(248),r=n(249),s=n(93),a=n.n(s),o={name:"DropdownLink",components:{NavLink:i.default,DropdownTransition:r.default},props:{item:{required:!0}},data:()=>({open:!1}),computed:{dropdownAriaLabel(){return this.item.ariaLabel||this.item.text}},watch:{$route(){this.open=!1}},methods:{setOpen(t){this.open=t},isLastItemOfArray:(t,e)=>a()(e)===t,handleDropdown(){0===event.detail&&this.setOpen(!this.open)}}},l=(n(258),n(8)),u=Object(l.a)(o,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"dropdown-wrapper",class:{open:t.open}},[e("button",{staticClass:"dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:t.handleDropdown}},[e("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),e("span",{staticClass:"arrow down"})]),t._v(" "),e("button",{staticClass:"mobile-dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:function(e){return t.setOpen(!t.open)}}},[e("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),e("span",{staticClass:"arrow",class:t.open?"down":"right"})]),t._v(" "),e("DropdownTransition",[e("ul",{directives:[{name:"show",rawName:"v-show",value:t.open,expression:"open"}],staticClass:"nav-dropdown"},t._l(t.item.items,(function(n,i){return e("li",{key:n.link||i,staticClass:"dropdown-item"},["links"===n.type?e("h4",[t._v("\n "+t._s(n.text)+"\n ")]):t._e(),t._v(" "),"links"===n.type?e("ul",{staticClass:"dropdown-subitem-wrapper"},t._l(n.items,(function(i){return e("li",{key:i.link,staticClass:"dropdown-subitem"},[e("NavLink",{attrs:{item:i},on:{focusout:function(e){t.isLastItemOfArray(i,n.items)&&t.isLastItemOfArray(n,t.item.items)&&t.setOpen(!1)}}})],1)})),0):e("NavLink",{attrs:{item:n},on:{focusout:function(e){t.isLastItemOfArray(n,t.item.items)&&t.setOpen(!1)}}})],1)})),0)])],1)}),[],!1,null,null,null);e.default=u.exports},264:function(t,e,n){"use strict";n(254)},272:function(t,e,n){"use strict";n.r(e);var i=n(261),r=n(246),s={name:"NavLinks",components:{NavLink:n(248).default,DropdownLink:i.default},computed:{userNav(){return this.$themeLocaleConfig.nav||this.$site.themeConfig.nav||[]},nav(){const{locales:t}=this.$site;if(t&&Object.keys(t).length>1){const e=this.$page.path,n=this.$router.options.routes,i=this.$site.themeConfig.locales||{},r={text:this.$themeLocaleConfig.selectText||"Languages",ariaLabel:this.$themeLocaleConfig.ariaLabel||"Select language",items:Object.keys(t).map(r=>{const s=t[r],a=i[r]&&i[r].label||s.lang;let o;return s.lang===this.$lang?o=e:(o=e.replace(this.$localeConfig.path,r),n.some(t=>t.path===o)||(o=r)),{text:a,link:o}})};return[...this.userNav,r]}return this.userNav},userLinks(){return(this.nav||[]).map(t=>Object.assign(Object(r.j)(t),{items:(t.items||[]).map(r.j)}))},repoLink(){const{repo:t}=this.$site.themeConfig;return t?/^https?:/.test(t)?t:"https://github.com/"+t:null},repoLabel(){if(!this.repoLink)return;if(this.$site.themeConfig.repoLabel)return this.$site.themeConfig.repoLabel;const t=this.repoLink.match(/^https?:\/\/[^/]+/)[0],e=["GitHub","GitLab","Bitbucket"];for(let n=0;n({placeholder:void 0}),watch:{$lang(e){this.update(this.options,e)},options(e){this.update(e,this.$lang)}},mounted(){this.initialize(this.options,this.$lang),this.placeholder=this.$site.themeConfig.searchPlaceholder||""},methods:{initialize(e,t){Promise.all([Promise.all([a.e(0),a.e(9)]).then(a.t.bind(null,311,7)),Promise.all([a.e(0),a.e(9)]).then(a.t.bind(null,312,7))]).then(([a])=>{a=a.default;const{algoliaOptions:i={}}=e;a(Object.assign({},e,{inputSelector:"#algolia-search-input",algoliaOptions:{...i,facetFilters:["lang:"+t].concat(i.facetFilters||[])},handleSelected:(e,t,a)=>{const{pathname:i,hash:n}=new URL(a.url),r=i.replace(this.$site.base,"/"),s=decodeURIComponent(n);this.$router.push(`${r}${s}`)}}))})},update(e,t){this.$el.innerHTML='',this.initialize(e,t)}}},n=(a(295),a(8)),r=Object(n.a)(i,(function(){var e=this._self._c;return e("form",{staticClass:"algolia-search-wrapper search-box",attrs:{id:"search-form",role:"search"}},[e("input",{staticClass:"search-query",attrs:{id:"algolia-search-input",placeholder:this.placeholder}})])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/14.30343ebc.js b/assets/js/14.30343ebc.js new file mode 100644 index 0000000..4724136 --- /dev/null +++ b/assets/js/14.30343ebc.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[14,19,23],{246:function(t,e,n){"use strict";n.d(e,"d",(function(){return i})),n.d(e,"a",(function(){return s})),n.d(e,"i",(function(){return o})),n.d(e,"f",(function(){return l})),n.d(e,"g",(function(){return u})),n.d(e,"h",(function(){return c})),n.d(e,"b",(function(){return p})),n.d(e,"e",(function(){return f})),n.d(e,"k",(function(){return h})),n.d(e,"l",(function(){return d})),n.d(e,"c",(function(){return b})),n.d(e,"j",(function(){return g}));n(92);const i=/#.*$/,r=/\.(md|html)$/,s=/\/$/,o=/^[a-z]+:/i;function a(t){return decodeURI(t).replace(i,"").replace(r,"")}function l(t){return o.test(t)}function u(t){return/^mailto:/.test(t)}function c(t){return/^tel:/.test(t)}function p(t){if(l(t))return t;const e=t.match(i),n=e?e[0]:"",r=a(t);return s.test(r)?t:r+".html"+n}function f(t,e){const n=decodeURIComponent(t.hash),r=function(t){const e=t.match(i);if(e)return e[0]}(e);if(r&&n!==r)return!1;return a(t.path)===a(e)}function h(t,e,n){if(l(e))return{type:"external",path:e};n&&(e=function(t,e,n){const i=t.charAt(0);if("/"===i)return t;if("?"===i||"#"===i)return e+t;const r=e.split("/");n&&r[r.length-1]||r.pop();const s=t.replace(/^\//,"").split("/");for(let t=0;tfunction t(e,n,i,r=1){if("string"==typeof e)return h(n,e,i);if(Array.isArray(e))return Object.assign(h(n,e[0],i),{title:e[1]});{const s=e.children||[];return 0===s.length&&e.path?Object.assign(h(n,e.path,i),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:s.map(e=>t(e,n,i,r+1)),collapsable:!1!==e.collapsable}}}(t,r,n)):[]}return[]}function m(t){const e=b(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map(e=>({type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}))}]}function b(t){let e;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)}),t.filter(t=>2===t.level)}function g(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},247:function(t,e,n){},248:function(t,e,n){"use strict";n.r(e);var i=n(246),r={name:"NavLink",props:{item:{required:!0}},computed:{link(){return Object(i.b)(this.item.link)},exact(){return this.$site.locales?Object.keys(this.$site.locales).some(t=>t===this.link):"/"===this.link},isNonHttpURI(){return Object(i.g)(this.link)||Object(i.h)(this.link)},isBlankTarget(){return"_blank"===this.target},isInternal(){return!Object(i.f)(this.link)&&!this.isBlankTarget},target(){return this.isNonHttpURI?null:this.item.target?this.item.target:Object(i.f)(this.link)?"_blank":""},rel(){return this.isNonHttpURI||!1===this.item.rel?null:this.item.rel?this.item.rel:this.isBlankTarget?"noopener noreferrer":null}},methods:{focusoutAction(){this.$emit("focusout")}}},s=n(8),o=Object(s.a)(r,(function(){var t=this,e=t._self._c;return t.isInternal?e("RouterLink",{staticClass:"nav-link",attrs:{to:t.link,exact:t.exact},nativeOn:{focusout:function(e){return t.focusoutAction.apply(null,arguments)}}},[t._v("\n "+t._s(t.item.text)+"\n")]):e("a",{staticClass:"nav-link external",attrs:{href:t.link,target:t.target,rel:t.rel},on:{focusout:t.focusoutAction}},[t._v("\n "+t._s(t.item.text)+"\n "),t.isBlankTarget?e("OutboundLink"):t._e()],1)}),[],!1,null,null,null);e.default=o.exports},249:function(t,e,n){"use strict";n.r(e);var i={name:"DropdownTransition",methods:{setHeight(t){t.style.height=t.scrollHeight+"px"},unsetHeight(t){t.style.height=""}}},r=(n(250),n(8)),s=Object(r.a)(i,(function(){return(0,this._self._c)("transition",{attrs:{name:"dropdown"},on:{enter:this.setHeight,"after-enter":this.unsetHeight,"before-leave":this.setHeight}},[this._t("default")],2)}),[],!1,null,null,null);e.default=s.exports},250:function(t,e,n){"use strict";n(247)},251:function(t,e,n){},258:function(t,e,n){"use strict";n(251)},261:function(t,e,n){"use strict";n.r(e);var i=n(248),r=n(249),s=n(93),o=n.n(s),a={name:"DropdownLink",components:{NavLink:i.default,DropdownTransition:r.default},props:{item:{required:!0}},data:()=>({open:!1}),computed:{dropdownAriaLabel(){return this.item.ariaLabel||this.item.text}},watch:{$route(){this.open=!1}},methods:{setOpen(t){this.open=t},isLastItemOfArray:(t,e)=>o()(e)===t,handleDropdown(){0===event.detail&&this.setOpen(!this.open)}}},l=(n(258),n(8)),u=Object(l.a)(a,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"dropdown-wrapper",class:{open:t.open}},[e("button",{staticClass:"dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:t.handleDropdown}},[e("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),e("span",{staticClass:"arrow down"})]),t._v(" "),e("button",{staticClass:"mobile-dropdown-title",attrs:{type:"button","aria-label":t.dropdownAriaLabel},on:{click:function(e){return t.setOpen(!t.open)}}},[e("span",{staticClass:"title"},[t._v(t._s(t.item.text))]),t._v(" "),e("span",{staticClass:"arrow",class:t.open?"down":"right"})]),t._v(" "),e("DropdownTransition",[e("ul",{directives:[{name:"show",rawName:"v-show",value:t.open,expression:"open"}],staticClass:"nav-dropdown"},t._l(t.item.items,(function(n,i){return e("li",{key:n.link||i,staticClass:"dropdown-item"},["links"===n.type?e("h4",[t._v("\n "+t._s(n.text)+"\n ")]):t._e(),t._v(" "),"links"===n.type?e("ul",{staticClass:"dropdown-subitem-wrapper"},t._l(n.items,(function(i){return e("li",{key:i.link,staticClass:"dropdown-subitem"},[e("NavLink",{attrs:{item:i},on:{focusout:function(e){t.isLastItemOfArray(i,n.items)&&t.isLastItemOfArray(n,t.item.items)&&t.setOpen(!1)}}})],1)})),0):e("NavLink",{attrs:{item:n},on:{focusout:function(e){t.isLastItemOfArray(n,t.item.items)&&t.setOpen(!1)}}})],1)})),0)])],1)}),[],!1,null,null,null);e.default=u.exports}}]); \ No newline at end of file diff --git a/assets/js/15.d3972987.js b/assets/js/15.d3972987.js new file mode 100644 index 0000000..9b90360 --- /dev/null +++ b/assets/js/15.d3972987.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{246:function(t,n,e){"use strict";e.d(n,"d",(function(){return r})),e.d(n,"a",(function(){return o})),e.d(n,"i",(function(){return a})),e.d(n,"f",(function(){return u})),e.d(n,"g",(function(){return c})),e.d(n,"h",(function(){return p})),e.d(n,"b",(function(){return l})),e.d(n,"e",(function(){return f})),e.d(n,"k",(function(){return h})),e.d(n,"l",(function(){return d})),e.d(n,"c",(function(){return v})),e.d(n,"j",(function(){return b}));e(92);const r=/#.*$/,i=/\.(md|html)$/,o=/\/$/,a=/^[a-z]+:/i;function s(t){return decodeURI(t).replace(r,"").replace(i,"")}function u(t){return a.test(t)}function c(t){return/^mailto:/.test(t)}function p(t){return/^tel:/.test(t)}function l(t){if(u(t))return t;const n=t.match(r),e=n?n[0]:"",i=s(t);return o.test(i)?t:i+".html"+e}function f(t,n){const e=decodeURIComponent(t.hash),i=function(t){const n=t.match(r);if(n)return n[0]}(n);if(i&&e!==i)return!1;return s(t.path)===s(n)}function h(t,n,e){if(u(n))return{type:"external",path:n};e&&(n=function(t,n,e){const r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return n+t;const i=n.split("/");e&&i[i.length-1]||i.pop();const o=t.replace(/^\//,"").split("/");for(let t=0;tfunction t(n,e,r,i=1){if("string"==typeof n)return h(e,n,r);if(Array.isArray(n))return Object.assign(h(e,n[0],r),{title:n[1]});{const o=n.children||[];return 0===o.length&&n.path?Object.assign(h(e,n.path,r),{title:n.title}):{type:"group",path:n.path,title:n.title,sidebarDepth:n.sidebarDepth,initialOpenGroupIndex:n.initialOpenGroupIndex,children:o.map(n=>t(n,e,r,i+1)),collapsable:!1!==n.collapsable}}}(t,i,e)):[]}return[]}function g(t){const n=v(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:n.map(n=>({type:"auto",title:n.title,basePath:t.path,path:t.path+"#"+n.slug,children:n.children||[]}))}]}function v(t){let n;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?n=t:n&&(n.children||(n.children=[])).push(t)}),t.filter(t=>2===t.level)}function b(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},253:function(t,n){t.exports=function(t){return null==t}},256:function(t,n,e){},267:function(t,n,e){var r=e(12),i=e(4),o=e(11);t.exports=function(t){return"string"==typeof t||!i(t)&&o(t)&&"[object String]"==r(t)}},268:function(t,n,e){"use strict";e(256)},275:function(t,n,e){"use strict";e.r(n);e(92);var r=e(246),i=e(267),o=e.n(i),a=e(253),s=e.n(a),u={name:"PageNav",props:["sidebarItems"],computed:{prev(){return p(c.PREV,this)},next(){return p(c.NEXT,this)}}};const c={NEXT:{resolveLink:function(t,n){return l(t,n,1)},getThemeLinkConfig:({nextLinks:t})=>t,getPageLinkConfig:({frontmatter:t})=>t.next},PREV:{resolveLink:function(t,n){return l(t,n,-1)},getThemeLinkConfig:({prevLinks:t})=>t,getPageLinkConfig:({frontmatter:t})=>t.prev}};function p(t,{$themeConfig:n,$page:e,$route:i,$site:a,sidebarItems:u}){const{resolveLink:c,getThemeLinkConfig:p,getPageLinkConfig:l}=t,f=p(n),h=l(e),d=s()(h)?f:h;return!1===d?void 0:o()(d)?Object(r.k)(a.pages,d,i.path):c(e,u)}function l(t,n,e){const r=[];!function t(n,e){for(let r=0,i=n.length;rfunction t(e,n,i,r=1){if("string"==typeof e)return d(n,e,i);if(Array.isArray(e))return Object.assign(d(n,e[0],i),{title:e[1]});{const a=e.children||[];return 0===a.length&&e.path?Object.assign(d(n,e.path,i),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:a.map(e=>t(e,n,i,r+1)),collapsable:!1!==e.collapsable}}}(t,r,n)):[]}return[]}function m(t){const e=g(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map(e=>({type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}))}]}function g(t){let e;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)}),t.filter(t=>2===t.level)}function b(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},248:function(t,e,n){"use strict";n.r(e);var i=n(246),r={name:"NavLink",props:{item:{required:!0}},computed:{link(){return Object(i.b)(this.item.link)},exact(){return this.$site.locales?Object.keys(this.$site.locales).some(t=>t===this.link):"/"===this.link},isNonHttpURI(){return Object(i.g)(this.link)||Object(i.h)(this.link)},isBlankTarget(){return"_blank"===this.target},isInternal(){return!Object(i.f)(this.link)&&!this.isBlankTarget},target(){return this.isNonHttpURI?null:this.item.target?this.item.target:Object(i.f)(this.link)?"_blank":""},rel(){return this.isNonHttpURI||!1===this.item.rel?null:this.item.rel?this.item.rel:this.isBlankTarget?"noopener noreferrer":null}},methods:{focusoutAction(){this.$emit("focusout")}}},a=n(8),s=Object(a.a)(r,(function(){var t=this,e=t._self._c;return t.isInternal?e("RouterLink",{staticClass:"nav-link",attrs:{to:t.link,exact:t.exact},nativeOn:{focusout:function(e){return t.focusoutAction.apply(null,arguments)}}},[t._v("\n "+t._s(t.item.text)+"\n")]):e("a",{staticClass:"nav-link external",attrs:{href:t.link,target:t.target,rel:t.rel},on:{focusout:t.focusoutAction}},[t._v("\n "+t._s(t.item.text)+"\n "),t.isBlankTarget?e("OutboundLink"):t._e()],1)}),[],!1,null,null,null);e.default=s.exports},263:function(t,e,n){},276:function(t,e,n){"use strict";n(263)},287:function(t,e,n){"use strict";n.r(e);var i={name:"Home",components:{NavLink:n(248).default},computed:{data(){return this.$page.frontmatter},actionLink(){return{link:this.data.actionLink,text:this.data.actionText}}}},r=(n(276),n(8)),a=Object(r.a)(i,(function(){var t=this,e=t._self._c;return e("main",{staticClass:"home",attrs:{"aria-labelledby":null!==t.data.heroText?"main-title":null}},[e("header",{staticClass:"hero"},[t.data.heroImage?e("img",{attrs:{src:t.$withBase(t.data.heroImage),alt:t.data.heroAlt||"hero"}}):t._e(),t._v(" "),null!==t.data.heroText?e("h1",{attrs:{id:"main-title"}},[t._v("\n "+t._s(t.data.heroText||t.$title||"Hello")+"\n ")]):t._e(),t._v(" "),null!==t.data.tagline?e("p",{staticClass:"description"},[t._v("\n "+t._s(t.data.tagline||t.$description||"Welcome to your VuePress site")+"\n ")]):t._e(),t._v(" "),t.data.actionText&&t.data.actionLink?e("p",{staticClass:"action"},[e("NavLink",{staticClass:"action-button",attrs:{item:t.actionLink}})],1):t._e()]),t._v(" "),t.data.features&&t.data.features.length?e("div",{staticClass:"features"},t._l(t.data.features,(function(n,i){return e("div",{key:i,staticClass:"feature"},[e("h2",[t._v(t._s(n.title))]),t._v(" "),e("p",[t._v(t._s(n.details))])])})),0):t._e(),t._v(" "),e("Content",{staticClass:"theme-default-content custom"}),t._v(" "),t.data.footer?e("div",{staticClass:"footer"},[t._v("\n "+t._s(t.data.footer)+"\n ")]):e("Content",{staticClass:"footer",attrs:{"slot-key":"footer"}})],1)}),[],!1,null,null,null);e.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/17.6cd3a12a.js b/assets/js/17.6cd3a12a.js new file mode 100644 index 0000000..57cfa5e --- /dev/null +++ b/assets/js/17.6cd3a12a.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[17],{246:function(t,e,n){"use strict";n.d(e,"d",(function(){return i})),n.d(e,"a",(function(){return a})),n.d(e,"i",(function(){return s})),n.d(e,"f",(function(){return c})),n.d(e,"g",(function(){return u})),n.d(e,"h",(function(){return l})),n.d(e,"b",(function(){return d})),n.d(e,"e",(function(){return p})),n.d(e,"k",(function(){return f})),n.d(e,"l",(function(){return h})),n.d(e,"c",(function(){return m})),n.d(e,"j",(function(){return b}));n(92);const i=/#.*$/,r=/\.(md|html)$/,a=/\/$/,s=/^[a-z]+:/i;function o(t){return decodeURI(t).replace(i,"").replace(r,"")}function c(t){return s.test(t)}function u(t){return/^mailto:/.test(t)}function l(t){return/^tel:/.test(t)}function d(t){if(c(t))return t;const e=t.match(i),n=e?e[0]:"",r=o(t);return a.test(r)?t:r+".html"+n}function p(t,e){const n=decodeURIComponent(t.hash),r=function(t){const e=t.match(i);if(e)return e[0]}(e);if(r&&n!==r)return!1;return o(t.path)===o(e)}function f(t,e,n){if(c(e))return{type:"external",path:e};n&&(e=function(t,e,n){const i=t.charAt(0);if("/"===i)return t;if("?"===i||"#"===i)return e+t;const r=e.split("/");n&&r[r.length-1]||r.pop();const a=t.replace(/^\//,"").split("/");for(let t=0;tfunction t(e,n,i,r=1){if("string"==typeof e)return f(n,e,i);if(Array.isArray(e))return Object.assign(f(n,e[0],i),{title:e[1]});{const a=e.children||[];return 0===a.length&&e.path?Object.assign(f(n,e.path,i),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:a.map(e=>t(e,n,i,r+1)),collapsable:!1!==e.collapsable}}}(t,r,n)):[]}return[]}function g(t){const e=m(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map(e=>({type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}))}]}function m(t){let e;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)}),t.filter(t=>2===t.level)}function b(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},253:function(t,e){t.exports=function(t){return null==t}},255:function(t,e,n){},266:function(t,e,n){"use strict";n(255)},274:function(t,e,n){"use strict";n.r(e);var i=n(253),r=n.n(i),a=n(246),s={name:"PageEdit",computed:{lastUpdated(){return this.$page.lastUpdated},lastUpdatedText(){return"string"==typeof this.$themeLocaleConfig.lastUpdated?this.$themeLocaleConfig.lastUpdated:"string"==typeof this.$site.themeConfig.lastUpdated?this.$site.themeConfig.lastUpdated:"Last Updated"},editLink(){const t=r()(this.$page.frontmatter.editLink)?this.$site.themeConfig.editLinks:this.$page.frontmatter.editLink,{repo:e,docsDir:n="",docsBranch:i="master",docsRepo:a=e}=this.$site.themeConfig;return t&&a&&this.$page.relativePath?this.createEditLink(e,a,n,i,this.$page.relativePath):null},editLinkText(){return this.$themeLocaleConfig.editLinkText||this.$site.themeConfig.editLinkText||"Edit this page"}},methods:{createEditLink(t,e,n,i,r){if(/bitbucket.org/.test(e)){return e.replace(a.a,"")+"/src"+`/${i}/`+(n?n.replace(a.a,"")+"/":"")+r+`?mode=edit&spa=0&at=${i}&fileviewer=file-view-default`}if(/gitlab.com/.test(e)){return e.replace(a.a,"")+"/-/edit"+`/${i}/`+(n?n.replace(a.a,"")+"/":"")+r}return(a.i.test(e)?e:"https://github.com/"+e).replace(a.a,"")+"/edit"+`/${i}/`+(n?n.replace(a.a,"")+"/":"")+r}}},o=(n(266),n(8)),c=Object(o.a)(s,(function(){var t=this,e=t._self._c;return e("footer",{staticClass:"page-edit"},[t.editLink?e("div",{staticClass:"edit-link"},[e("a",{attrs:{href:t.editLink,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.editLinkText))]),t._v(" "),e("OutboundLink")],1):t._e(),t._v(" "),t.lastUpdated?e("div",{staticClass:"last-updated"},[e("span",{staticClass:"prefix"},[t._v(t._s(t.lastUpdatedText)+":")]),t._v(" "),e("span",{staticClass:"time"},[t._v(t._s(t.lastUpdated))])]):t._e()])}),[],!1,null,null,null);e.default=c.exports}}]); \ No newline at end of file diff --git a/assets/js/18.8d7e6487.js b/assets/js/18.8d7e6487.js new file mode 100644 index 0000000..2d70f93 --- /dev/null +++ b/assets/js/18.8d7e6487.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[18],{246:function(t,e,n){"use strict";n.d(e,"d",(function(){return r})),n.d(e,"a",(function(){return a})),n.d(e,"i",(function(){return s})),n.d(e,"f",(function(){return o})),n.d(e,"g",(function(){return c})),n.d(e,"h",(function(){return l})),n.d(e,"b",(function(){return p})),n.d(e,"e",(function(){return f})),n.d(e,"k",(function(){return d})),n.d(e,"l",(function(){return h})),n.d(e,"c",(function(){return g})),n.d(e,"j",(function(){return m}));n(92);const r=/#.*$/,i=/\.(md|html)$/,a=/\/$/,s=/^[a-z]+:/i;function u(t){return decodeURI(t).replace(r,"").replace(i,"")}function o(t){return s.test(t)}function c(t){return/^mailto:/.test(t)}function l(t){return/^tel:/.test(t)}function p(t){if(o(t))return t;const e=t.match(r),n=e?e[0]:"",i=u(t);return a.test(i)?t:i+".html"+n}function f(t,e){const n=decodeURIComponent(t.hash),i=function(t){const e=t.match(r);if(e)return e[0]}(e);if(i&&n!==i)return!1;return u(t.path)===u(e)}function d(t,e,n){if(o(e))return{type:"external",path:e};n&&(e=function(t,e,n){const r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;const i=e.split("/");n&&i[i.length-1]||i.pop();const a=t.replace(/^\//,"").split("/");for(let t=0;tfunction t(e,n,r,i=1){if("string"==typeof e)return d(n,e,r);if(Array.isArray(e))return Object.assign(d(n,e[0],r),{title:e[1]});{const a=e.children||[];return 0===a.length&&e.path?Object.assign(d(n,e.path,r),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:a.map(e=>t(e,n,r,i+1)),collapsable:!1!==e.collapsable}}}(t,i,n)):[]}return[]}function b(t){const e=g(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map(e=>({type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}))}]}function g(t){let e;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)}),t.filter(t=>2===t.level)}function m(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},252:function(t,e,n){},259:function(t,e,n){"use strict";n(252)},262:function(t,e,n){"use strict";n.r(e);var r=n(246);function i(t,e,n,r,i){const a={props:{to:e,activeClass:"",exactActiveClass:""},class:{active:r,"sidebar-link":!0}};return i>2&&(a.style={"padding-left":i+"rem"}),t("RouterLink",a,n)}function a(t,e,n,s,u,o=1){return!e||o>u?null:t("ul",{class:"sidebar-sub-headers"},e.map(e=>{const c=Object(r.e)(s,n+"#"+e.slug);return t("li",{class:"sidebar-sub-header"},[i(t,n+"#"+e.slug,e.title,c,e.level-1),a(t,e.children,n,s,u,o+1)])}))}var s={functional:!0,props:["item","sidebarDepth"],render(t,{parent:{$page:e,$site:n,$route:s,$themeConfig:u,$themeLocaleConfig:o},props:{item:c,sidebarDepth:l}}){const p=Object(r.e)(s,c.path),f="auto"===c.type?p||c.children.some(t=>Object(r.e)(s,c.basePath+"#"+t.slug)):p,d="external"===c.type?function(t,e,n){return t("a",{attrs:{href:e,target:"_blank",rel:"noopener noreferrer"},class:{"sidebar-link":!0}},[n,t("OutboundLink")])}(t,c.path,c.title||c.path):i(t,c.path,c.title||c.path,f),h=[e.frontmatter.sidebarDepth,l,o.sidebarDepth,u.sidebarDepth,1].find(t=>void 0!==t),b=o.displayAllHeaders||u.displayAllHeaders;if("auto"===c.type)return[d,a(t,c.children,c.basePath,s,h)];if((f||b)&&c.headers&&!r.d.test(c.path)){return[d,a(t,Object(r.c)(c.headers),c.path,s,h)]}return d}},u=(n(259),n(8)),o=Object(u.a)(s,void 0,void 0,!1,null,null,null);e.default=o.exports}}]); \ No newline at end of file diff --git a/assets/js/19.78b16bd4.js b/assets/js/19.78b16bd4.js new file mode 100644 index 0000000..6110e42 --- /dev/null +++ b/assets/js/19.78b16bd4.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[19],{247:function(t,e,n){},249:function(t,e,n){"use strict";n.r(e);var s={name:"DropdownTransition",methods:{setHeight(t){t.style.height=t.scrollHeight+"px"},unsetHeight(t){t.style.height=""}}},i=(n(250),n(8)),o=Object(i.a)(s,(function(){return(0,this._self._c)("transition",{attrs:{name:"dropdown"},on:{enter:this.setHeight,"after-enter":this.unsetHeight,"before-leave":this.setHeight}},[this._t("default")],2)}),[],!1,null,null,null);e.default=o.exports},250:function(t,e,n){"use strict";n(247)}}]); \ No newline at end of file diff --git a/assets/js/2.99da59a7.js b/assets/js/2.99da59a7.js new file mode 100644 index 0000000..e9f7431 --- /dev/null +++ b/assets/js/2.99da59a7.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],{252:function(t,e,a){},253:function(t,e){t.exports=function(t){return null==t}},255:function(t,e,a){},256:function(t,e,a){},257:function(t,e,a){},259:function(t,e,a){"use strict";a(252)},260:function(t,e,a){"use strict";a.r(e);var n=a(273),s=a(262),i=a(246);function r(t,e){if("group"===e.type){const a=e.path&&Object(i.e)(t,e.path),n=e.children.some(e=>"group"===e.type?r(t,e):"page"===e.type&&Object(i.e)(t,e.path));return a||n}return!1}var o={name:"SidebarLinks",components:{SidebarGroup:n.default,SidebarLink:s.default},props:["items","depth","sidebarDepth","initialOpenGroupIndex"],data(){return{openGroupIndex:this.initialOpenGroupIndex||0}},watch:{$route(){this.refreshIndex()}},created(){this.refreshIndex()},methods:{refreshIndex(){const t=function(t,e){for(let a=0;a-1&&(this.openGroupIndex=t)},toggleGroup(t){this.openGroupIndex=t===this.openGroupIndex?-1:t},isActive(t){return Object(i.e)(this.$route,t.regularPath)}}},l=a(8),u=Object(l.a)(o,(function(){var t=this,e=t._self._c;return t.items.length?e("ul",{staticClass:"sidebar-links"},t._l(t.items,(function(a,n){return e("li",{key:n},["group"===a.type?e("SidebarGroup",{attrs:{item:a,open:n===t.openGroupIndex,collapsable:a.collapsable||a.collapsible,depth:t.depth},on:{toggle:function(e){return t.toggleGroup(n)}}}):e("SidebarLink",{attrs:{"sidebar-depth":t.sidebarDepth,item:a}})],1)})),0):t._e()}),[],!1,null,null,null);e.default=u.exports},262:function(t,e,a){"use strict";a.r(e);var n=a(246);function s(t,e,a,n,s){const i={props:{to:e,activeClass:"",exactActiveClass:""},class:{active:n,"sidebar-link":!0}};return s>2&&(i.style={"padding-left":s+"rem"}),t("RouterLink",i,a)}function i(t,e,a,r,o,l=1){return!e||l>o?null:t("ul",{class:"sidebar-sub-headers"},e.map(e=>{const u=Object(n.e)(r,a+"#"+e.slug);return t("li",{class:"sidebar-sub-header"},[s(t,a+"#"+e.slug,e.title,u,e.level-1),i(t,e.children,a,r,o,l+1)])}))}var r={functional:!0,props:["item","sidebarDepth"],render(t,{parent:{$page:e,$site:a,$route:r,$themeConfig:o,$themeLocaleConfig:l},props:{item:u,sidebarDepth:c}}){const p=Object(n.e)(r,u.path),d="auto"===u.type?p||u.children.some(t=>Object(n.e)(r,u.basePath+"#"+t.slug)):p,h="external"===u.type?function(t,e,a){return t("a",{attrs:{href:e,target:"_blank",rel:"noopener noreferrer"},class:{"sidebar-link":!0}},[a,t("OutboundLink")])}(t,u.path,u.title||u.path):s(t,u.path,u.title||u.path,d),f=[e.frontmatter.sidebarDepth,c,l.sidebarDepth,o.sidebarDepth,1].find(t=>void 0!==t),b=l.displayAllHeaders||o.displayAllHeaders;if("auto"===u.type)return[h,i(t,u.children,u.basePath,r,f)];if((d||b)&&u.headers&&!n.d.test(u.path)){return[h,i(t,Object(n.c)(u.headers),u.path,r,f)]}return h}},o=(a(259),a(8)),l=Object(o.a)(r,void 0,void 0,!1,null,null,null);e.default=l.exports},263:function(t,e,a){},266:function(t,e,a){"use strict";a(255)},267:function(t,e,a){var n=a(12),s=a(4),i=a(11);t.exports=function(t){return"string"==typeof t||!s(t)&&i(t)&&"[object String]"==n(t)}},268:function(t,e,a){"use strict";a(256)},269:function(t,e,a){},270:function(t,e,a){"use strict";a(257)},271:function(t,e,a){},273:function(t,e,a){"use strict";a.r(e);var n=a(246),s={name:"SidebarGroup",components:{DropdownTransition:a(249).default},props:["item","open","collapsable","depth"],beforeCreate(){this.$options.components.SidebarLinks=a(260).default},methods:{isActive:n.e}},i=(a(270),a(8)),r=Object(i.a)(s,(function(){var t=this,e=t._self._c;return e("section",{staticClass:"sidebar-group",class:[{collapsable:t.collapsable,"is-sub-group":0!==t.depth},"depth-"+t.depth]},[t.item.path?e("RouterLink",{staticClass:"sidebar-heading clickable",class:{open:t.open,active:t.isActive(t.$route,t.item.path)},attrs:{to:t.item.path},nativeOn:{click:function(e){return t.$emit("toggle")}}},[e("span",[t._v(t._s(t.item.title))]),t._v(" "),t.collapsable?e("span",{staticClass:"arrow",class:t.open?"down":"right"}):t._e()]):e("p",{staticClass:"sidebar-heading",class:{open:t.open},on:{click:function(e){return t.$emit("toggle")}}},[e("span",[t._v(t._s(t.item.title))]),t._v(" "),t.collapsable?e("span",{staticClass:"arrow",class:t.open?"down":"right"}):t._e()]),t._v(" "),e("DropdownTransition",[t.open||!t.collapsable?e("SidebarLinks",{staticClass:"sidebar-group-items",attrs:{items:t.item.children,"sidebar-depth":t.item.sidebarDepth,"initial-open-group-index":t.item.initialOpenGroupIndex,depth:t.depth+1}}):t._e()],1)],1)}),[],!1,null,null,null);e.default=r.exports},274:function(t,e,a){"use strict";a.r(e);var n=a(253),s=a.n(n),i=a(246),r={name:"PageEdit",computed:{lastUpdated(){return this.$page.lastUpdated},lastUpdatedText(){return"string"==typeof this.$themeLocaleConfig.lastUpdated?this.$themeLocaleConfig.lastUpdated:"string"==typeof this.$site.themeConfig.lastUpdated?this.$site.themeConfig.lastUpdated:"Last Updated"},editLink(){const t=s()(this.$page.frontmatter.editLink)?this.$site.themeConfig.editLinks:this.$page.frontmatter.editLink,{repo:e,docsDir:a="",docsBranch:n="master",docsRepo:i=e}=this.$site.themeConfig;return t&&i&&this.$page.relativePath?this.createEditLink(e,i,a,n,this.$page.relativePath):null},editLinkText(){return this.$themeLocaleConfig.editLinkText||this.$site.themeConfig.editLinkText||"Edit this page"}},methods:{createEditLink(t,e,a,n,s){if(/bitbucket.org/.test(e)){return e.replace(i.a,"")+"/src"+`/${n}/`+(a?a.replace(i.a,"")+"/":"")+s+`?mode=edit&spa=0&at=${n}&fileviewer=file-view-default`}if(/gitlab.com/.test(e)){return e.replace(i.a,"")+"/-/edit"+`/${n}/`+(a?a.replace(i.a,"")+"/":"")+s}return(i.i.test(e)?e:"https://github.com/"+e).replace(i.a,"")+"/edit"+`/${n}/`+(a?a.replace(i.a,"")+"/":"")+s}}},o=(a(266),a(8)),l=Object(o.a)(r,(function(){var t=this,e=t._self._c;return e("footer",{staticClass:"page-edit"},[t.editLink?e("div",{staticClass:"edit-link"},[e("a",{attrs:{href:t.editLink,target:"_blank",rel:"noopener noreferrer"}},[t._v(t._s(t.editLinkText))]),t._v(" "),e("OutboundLink")],1):t._e(),t._v(" "),t.lastUpdated?e("div",{staticClass:"last-updated"},[e("span",{staticClass:"prefix"},[t._v(t._s(t.lastUpdatedText)+":")]),t._v(" "),e("span",{staticClass:"time"},[t._v(t._s(t.lastUpdated))])]):t._e()])}),[],!1,null,null,null);e.default=l.exports},275:function(t,e,a){"use strict";a.r(e);a(92);var n=a(246),s=a(267),i=a.n(s),r=a(253),o=a.n(r),l={name:"PageNav",props:["sidebarItems"],computed:{prev(){return c(u.PREV,this)},next(){return c(u.NEXT,this)}}};const u={NEXT:{resolveLink:function(t,e){return p(t,e,1)},getThemeLinkConfig:({nextLinks:t})=>t,getPageLinkConfig:({frontmatter:t})=>t.next},PREV:{resolveLink:function(t,e){return p(t,e,-1)},getThemeLinkConfig:({prevLinks:t})=>t,getPageLinkConfig:({frontmatter:t})=>t.prev}};function c(t,{$themeConfig:e,$page:a,$route:s,$site:r,sidebarItems:l}){const{resolveLink:u,getThemeLinkConfig:c,getPageLinkConfig:p}=t,d=c(e),h=p(a),f=o()(h)?d:h;return!1===f?void 0:i()(f)?Object(n.k)(r.pages,f,s.path):u(a,l)}function p(t,e,a){const n=[];!function t(e,a){for(let n=0,s=e.length;n({isSidebarOpen:!1}),computed:{shouldShowNavbar(){const{themeConfig:t}=this.$site,{frontmatter:e}=this.$page;return!1!==e.navbar&&!1!==t.navbar&&(this.$title||t.logo||t.repo||t.nav||this.$themeLocaleConfig.nav)},shouldShowSidebar(){const{frontmatter:t}=this.$page;return!t.home&&!1!==t.sidebar&&this.sidebarItems.length},sidebarItems(){return Object(o.l)(this.$page,this.$page.regularPath,this.$site,this.$localePath)},pageClasses(){const t=this.$page.frontmatter.pageClass;return[{"no-navbar":!this.shouldShowNavbar,"sidebar-open":this.isSidebarOpen,"no-sidebar":!this.shouldShowSidebar},t]}},mounted(){this.$router.afterEach(()=>{this.isSidebarOpen=!1})},methods:{toggleSidebar(t){this.isSidebarOpen="boolean"==typeof t?t:!this.isSidebarOpen,this.$emit("toggle-sidebar",this.isSidebarOpen)},onTouchStart(t){this.touchStart={x:t.changedTouches[0].clientX,y:t.changedTouches[0].clientY}},onTouchEnd(t){const e=t.changedTouches[0].clientX-this.touchStart.x,a=t.changedTouches[0].clientY-this.touchStart.y;Math.abs(e)>Math.abs(a)&&Math.abs(e)>40&&(e>0&&this.touchStart.x<=80?this.toggleSidebar(!0):this.toggleSidebar(!1))}}},u=a(8),c=Object(u.a)(l,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"theme-container",class:t.pageClasses,on:{touchstart:t.onTouchStart,touchend:t.onTouchEnd}},[t.shouldShowNavbar?e("Navbar",{on:{"toggle-sidebar":t.toggleSidebar}}):t._e(),t._v(" "),e("div",{staticClass:"sidebar-mask",on:{click:function(e){return t.toggleSidebar(!1)}}}),t._v(" "),e("Sidebar",{attrs:{items:t.sidebarItems},on:{"toggle-sidebar":t.toggleSidebar},scopedSlots:t._u([{key:"top",fn:function(){return[t._t("sidebar-top")]},proxy:!0},{key:"bottom",fn:function(){return[t._t("sidebar-bottom")]},proxy:!0}],null,!0)}),t._v(" "),t.$page.frontmatter.home?e("Home"):e("Page",{attrs:{"sidebar-items":t.sidebarItems},scopedSlots:t._u([{key:"top",fn:function(){return[t._t("page-top")]},proxy:!0},{key:"bottom",fn:function(){return[t._t("page-bottom")]},proxy:!0}],null,!0)})],1)}),[],!1,null,null,null);e.default=c.exports}}]); \ No newline at end of file diff --git a/assets/js/20.a3f134b4.js b/assets/js/20.a3f134b4.js new file mode 100644 index 0000000..0811f39 --- /dev/null +++ b/assets/js/20.a3f134b4.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[20],{265:function(t,c,n){},277:function(t,c,n){"use strict";n(265)},290:function(t,c,n){"use strict";n.r(c);n(277);var i=n(8),s=Object(i.a)({},(function(){var t=this,c=t._self._c;return c("div",{staticClass:"sidebar-button",on:{click:function(c){return t.$emit("toggle-sidebar")}}},[c("svg",{staticClass:"icon",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",role:"img",viewBox:"0 0 448 512"}},[c("path",{attrs:{fill:"currentColor",d:"M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"}})])])}),[],!1,null,null,null);c.default=s.exports}}]); \ No newline at end of file diff --git a/assets/js/21.66c4eb78.js b/assets/js/21.66c4eb78.js new file mode 100644 index 0000000..76913c5 --- /dev/null +++ b/assets/js/21.66c4eb78.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[21],{301:function(a,t,s){a.exports=s.p+"assets/img/harbor_login_page.703b5e90.png"},302:function(a,t,s){a.exports=s.p+"assets/img/harbor_projects.338db00b.png"},321:function(a,t,s){"use strict";s.r(t);var e=s(8),r=Object(e.a)({},(function(){var a=this,t=a._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"install-harbor"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#install-harbor"}},[a._v("#")]),a._v(" Install Harbor")]),a._v(" "),t("p",[t("img",{attrs:{src:"https://raw.githubusercontent.com/cncf/artwork/c33a8386bce4eabc36e1d4972e0996db4630037b/projects/harbor/horizontal/color/harbor-horizontal-color.svg?sanitize=true",alt:"Harbor logo",title:"Harbor logo"}})]),a._v(" "),t("p",[a._v("Label Harbor namespace and copy there the secret with certificates signed by\nLet's Encrypt certificate:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl create namespace harbor\nkubectl label namespace harbor "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("app")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("kubed\n")])])]),t("p",[a._v('Create Istio Gateways and VirtualServices to allow accessing Harbor from\n"outside":')]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("<<")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-f")]),a._v(" -")]),a._v("\napiVersion: networking.istio.io/v1alpha3\nkind: Gateway\nmetadata:\n name: harbor-gateway\n namespace: harbor\nspec:\n selector:\n istio: ingressgateway\n servers:\n - port:\n number: 80\n name: http-harbor\n protocol: HTTP\n hosts:\n - harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n - port:\n number: 443\n name: https-harbor\n protocol: HTTPS\n hosts:\n - harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n - notary."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n tls:\n mode: PASSTHROUGH\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: harbor-http-virtual-service\n namespace: harbor\nspec:\n hosts:\n - harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n gateways:\n - harbor-gateway\n http:\n - match:\n - port: 80\n route:\n - destination:\n host: harbor.harbor.svc.cluster.local\n port:\n number: 80\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: harbor-https-virtual-service\n namespace: harbor\nspec:\n hosts:\n - harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n gateways:\n - harbor-gateway\n tls:\n - match:\n - port: 443\n sniHosts:\n - harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n route:\n - destination:\n host: harbor.harbor.svc.cluster.local\n port:\n number: 443\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: harbor-notary-virtual-service\n namespace: harbor\nspec:\n hosts:\n - notary."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n gateways:\n - harbor-gateway\n tls:\n - match:\n - port: 443\n sniHosts:\n - notary."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n route:\n - destination:\n host: harbor.harbor.svc.cluster.local\n port:\n number: 4443\nEOF")]),a._v("\n")])])]),t("p",[a._v("Add Harbor Helm repository:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("helm repo "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("add")]),a._v(" harbor https://helm.goharbor.io\nhelm repo update\n")])])]),t("p",[a._v("Install Harbor using Helm:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("helm "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" harbor harbor/harbor "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--namespace")]),a._v(" harbor "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--version")]),a._v(" v1.2.3 "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--wait")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("expose.tls.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("expose.tls.secretName")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("ingress-cert-"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("expose.type")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("clusterIP "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("externalURL")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("https://harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("harborAdminPassword")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("admin "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("persistence.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("false\n")])])]),t("p",[a._v("Output:")]),a._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[a._v("NAME: harbor\nLAST DEPLOYED: Fri Dec 27 10:54:23 2019\nNAMESPACE: harbor\nSTATUS: deployed\nREVISION: 1\nTEST SUITE: None\nNOTES:\nPlease wait for several minutes for Harbor deployment to complete.\nThen you should be able to visit the Harbor portal at https://harbor.mylabs.dev.\nFor more details, please visit https://github.com/goharbor/harbor.\n")])])]),t("p",[a._v("Open the "),t("a",{attrs:{href:"https://harbor.mylabs.dev",target:"_blank",rel:"noopener noreferrer"}},[a._v("https://harbor.mylabs.dev"),t("OutboundLink")],1),a._v(":")]),a._v(" "),t("p",[t("img",{attrs:{src:s(301),alt:"Harbor login page",title:"Harbor login page"}})]),a._v(" "),t("p",[a._v("Log in:")]),a._v(" "),t("ul",[t("li",[a._v("User: "),t("code",[a._v("admin")])]),a._v(" "),t("li",[a._v("Password: "),t("code",[a._v("admin")])])]),a._v(" "),t("p",[a._v("You should see the Web UI:")]),a._v(" "),t("p",[t("img",{attrs:{src:s(302),alt:"Harbor",title:"Harbor"}})]),a._v(" "),t("p",[a._v("Create new robot account for "),t("code",[a._v("library")]),a._v(" project:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("HARBOR_ROBOT_TOKEN")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-s")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-k")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-u")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"admin:admin"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-X")]),a._v(" POST "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-H")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Content-Type: application/json"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"https://harbor.'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('/api/projects/1/robots"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-d")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"{\n '),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("name"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("myrobot"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(",\n "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("description"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("Robot account with Push/Pull access to library project"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(",\n "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("access"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(": [\n {\n "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("resource"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("/project/1/repository"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(",\n "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("action"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("push"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v('\n }\n ]\n}"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" jq "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-r")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('".token"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${HARBOR_ROBOT_TOKEN}")]),a._v("\n")])])]),t("p",[a._v("Output:")]),a._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[a._v("eyJhbGciO .... oOFJvwidsQ\n")])])]),t("p",[a._v('Enable automated vulnerability scan after each "image push" to the project\n'),t("code",[a._v("library")]),a._v(":")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-s")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-k")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-u")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"admin:admin"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-X")]),a._v(" PUT "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"https://harbor.'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('/api/projects/1"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-H")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Content-Type: application/json"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-d")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"{\n '),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("metadata"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(": {\n "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("auto_scan"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("true"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v('\n }\n}"')]),a._v("\n")])])]),t("p",[a._v("Test Harbor functionality by uploading docker image (optional):")]),a._v(" "),t("div",{staticClass:"language-shell extra-class"},[t("pre",{pre:!0,attrs:{class:"language-shell"}},[t("code",[t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"staging"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("SSL_CERT_FILE")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$PWD")]),a._v("/tmp/fakelerootx1.pem\n"),t("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("docker")]),a._v(" pull gcr.io/kuar-demo/kuard-amd64:blue\n\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("docker")]),a._v(" tag gcr.io/kuar-demo/kuard-amd64:blue harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("/library/kuard-amd64:blue\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$HARBOR_ROBOT_TOKEN")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("docker")]),a._v(" login "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--username")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"robot\\'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$myrobot")]),a._v('"')]),a._v(" --password-stdin harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("docker")]),a._v(" push harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("/library/kuard-amd64:blue\n\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("docker")]),a._v(" tag gcr.io/kuar-demo/kuard-amd64:blue harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("/library/kuard-amd64:blue2\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" admin "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("docker")]),a._v(" login "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--username")]),a._v(" admin --password-stdin harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("DOCKER_CONTENT_TRUST")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("DOCKER_CONTENT_TRUST_SERVER")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("https://notary."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("DOCKER_CONTENT_TRUST_REPOSITORY_PASSPHRASE")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"mypassphrase123"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("DOCKER_CONTENT_TRUST_ROOT_PASSPHRASE")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"rootpassphrase123"')]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("docker")]),a._v(" push harbor."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("/library/kuard-amd64:blue2\n\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("unset")]),a._v(" DOCKER_CONTENT_TRUST\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("unset")]),a._v(" SSL_CERT_FILE\n")])])])])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/22.8f730d8b.js b/assets/js/22.8f730d8b.js new file mode 100644 index 0000000..2b2ff63 --- /dev/null +++ b/assets/js/22.8f730d8b.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[22],{306:function(e,t,a){e.exports=a.p+"assets/img/GitHub_Webhooks.3cdaed97.png"},307:function(e,t,a){e.exports=a.p+"assets/img/GitHub_Webhooks-Details.da577fc5.png"},326:function(e,t,a){"use strict";a.r(t);var s=a(8),n=Object(s.a)({},(function(){var e=this,t=e._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[t("h1",{attrs:{id:"automated-deployment-with-tekton"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#automated-deployment-with-tekton"}},[e._v("#")]),e._v(" Automated deployment with Tekton")]),e._v(" "),t("p",[e._v("Take a real example "),t("a",{attrs:{href:"https://github.com/stefanprodan/podinfo",target:"_blank",rel:"noopener noreferrer"}},[e._v("Podinfo"),t("OutboundLink")],1),e._v("\napplication and create full pipeline for it...")]),e._v(" "),t("h2",{attrs:{id:"fork-podinfo-application"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#fork-podinfo-application"}},[e._v("#")]),e._v(" Fork podinfo application")]),e._v(" "),t("p",[e._v("Fork the "),t("a",{attrs:{href:"https://github.com/stefanprodan/podinfo",target:"_blank",rel:"noopener noreferrer"}},[e._v("Podinfo"),t("OutboundLink")],1),e._v(" repository\n"),t("code",[e._v("podinfo")]),e._v(":")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[e._v("cd")]),e._v(" tmp\nhub clone "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"stefanprodan/podinfo"')]),e._v("\nhub "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-C")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"podinfo"')]),e._v(" fork\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("Cloning into 'podinfo'...\nremote: Enumerating objects: 10, done.\nremote: Counting objects: 100% (10/10), done.\nremote: Compressing objects: 100% (10/10), done.\nremote: Total 5266 (delta 0), reused 3 (delta 0), pack-reused 5256\nReceiving objects: 100% (5266/5266), 9.52 MiB | 1.93 MiB/s, done.\nResolving deltas: 100% (2342/2342), done.\nUpdating ruzickap\nFrom https://github.com/stefanprodan/podinfo\n * [new branch] gh-pages -> ruzickap/gh-pages\n * [new branch] master -> ruzickap/master\n * [new branch] v0.x -> ruzickap/v0.x\n * [new branch] v1.x -> ruzickap/v1.x\n * [new branch] v3.x -> ruzickap/v3.x\nnew remote: ruzickap\n")])])]),t("h2",{attrs:{id:"create-tekton-triggers-configuration"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#create-tekton-triggers-configuration"}},[e._v("#")]),e._v(" Create Tekton Triggers configuration")]),e._v(" "),t("p",[e._v("Create new namespace:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("kubectl create namespace getting-started\n")])])]),t("p",[e._v("Create the admin user, role and rolebinding:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -")]),e._v('\nkind: Role\napiVersion: rbac.authorization.k8s.io/v1\nmetadata:\n name: tekton-triggers-admin\n namespace: getting-started\nrules:\n- apiGroups:\n - tekton.dev\n resources:\n - eventlisteners\n - triggerbindings\n - triggertemplates\n - pipelineresources\n verbs:\n - get\n- apiGroups:\n - tekton.dev\n resources:\n - pipelineruns\n - pipelineresources\n verbs:\n - create\n- apiGroups:\n - ""\n resources:\n - configmaps\n verbs:\n - get\n - list\n - watch\n- apiGroups:\n - apps\n resources:\n - deployments\n verbs:\n - get\n - list\n - watch\n - create\n - patch\n---\napiVersion: v1\nkind: ServiceAccount\nmetadata:\n name: tekton-triggers-admin\n namespace: getting-started\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind: RoleBinding\nmetadata:\n name: tekton-triggers-admin-binding\n namespace: getting-started\nsubjects:\n - kind: ServiceAccount\n name: tekton-triggers-admin\nroleRef:\n apiGroup: rbac.authorization.k8s.io\n kind: Role\n name: tekton-triggers-admin\nEOF')]),e._v("\n")])])]),t("p",[e._v("Create the "),t("code",[e._v("create-webhook")]),e._v(" user, role and rolebinding:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -")]),e._v('\nkind: Role\napiVersion: rbac.authorization.k8s.io/v1\nmetadata:\n name: tekton-triggers-createwebhook\n namespace: getting-started\nrules:\n- apiGroups:\n - ""\n resources:\n - secrets\n verbs:\n - get\n - list\n - create\n - update\n - delete\n- apiGroups:\n - tekton.dev\n resources:\n - eventlisteners\n verbs:\n - get\n - list\n - create\n - update\n - delete\n- apiGroups:\n - networking.istio.io\n resources:\n - virtualservices\n - gateways\n verbs:\n - create\n - get\n - list\n - delete\n - update\n---\napiVersion: v1\nkind: ServiceAccount\nmetadata:\n name: tekton-triggers-createwebhook\n namespace: getting-started\n---\napiVersion: rbac.authorization.k8s.io/v1\nkind: RoleBinding\nmetadata:\n name: tekton-triggers-createwebhook\n namespace: getting-started\nsubjects:\n - kind: ServiceAccount\n name: tekton-triggers-createwebhook\nroleRef:\n apiGroup: rbac.authorization.k8s.io\n kind: Role\n name: tekton-triggers-createwebhook\nEOF')]),e._v("\n")])])]),t("p",[e._v("Create secret for Harbor registry to let Tekton pipeline to upload the container\nimage:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("kubectl create secret docker-registry "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started harbor-docker-config "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("\\")]),e._v("\n --docker-server"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${CONTAINER_REGISTRY_SERVER}")]),e._v('"')]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("\\")]),e._v("\n --docker-username"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${CONTAINER_REGISTRY_USERNAME}")]),e._v('"')]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("\\")]),e._v("\n --docker-password"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${CONTAINER_REGISTRY_PASSWORD}")]),e._v('"')]),e._v("\n")])])]),t("p",[e._v("Install the Pipeline:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("\\")]),e._v("EOF "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -\napiVersion: tekton.dev/v1alpha1\nkind: Task\nmetadata:\n name: build-docker-image-from-git-task\n namespace: getting-started\nspec:\n inputs:\n resources:\n - name: docker-source\n type: "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("git")]),e._v("\n params:\n - name: pathToDockerFile\n description: The path to the dockerfile to build\n default: /workspace/docker-source/Dockerfile\n - name: pathToContext\n description:\n The build context used by Kaniko\n "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("(")]),e._v("https://github.com/GoogleContainerTools/kaniko"),t("span",{pre:!0,attrs:{class:"token comment"}},[e._v("#kaniko-build-contexts)")]),e._v("\n default: /workspace/docker-source\n outputs:\n resources:\n - name: image-source\n type: image\n volumes:\n - name: docker-config\n secret:\n secretName: harbor-docker-config\n items:\n - key: .dockerconfigjson\n path: config.json\n - name: shared-storage\n emptyDir: "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n steps:\n - name: build\n image: gcr.io/kaniko-project/executor\n env:\n - name: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"DOCKER_CONFIG"')]),e._v("\n value: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"/builder/home/.docker/"')]),e._v("\n command:\n - /kaniko/executor\n args:\n - "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--dockerfile")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.pathToDockerFile"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n - "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--destination")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("outputs.resources.image-source.url"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n - "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--context")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.pathToContext"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n - --skip-tls-verify\n volumeMounts:\n - name: docker-config\n mountPath: /builder/home/.docker/\n---\napiVersion: tekton.dev/v1alpha1\nkind: Task\nmetadata:\n name: deploy-locally\n namespace: getting-started\nspec:\n inputs:\n resources:\n - name: image-source\n type: image\n outputs:\n resources:\n - name: event-to-sink\n type: cloudEvent\n steps:\n - name: run-kubectl\n image: lachlanevenson/k8s-kubectl:latest\n command:\n - "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sh")]),e._v("\n args:\n - "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-ce")]),e._v("\n - "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[e._v("set")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-ex")]),e._v("\n kubectl run podinfo "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--image")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.resources.image-source.url"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-o")]),e._v(" yaml --dry-run "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -\n---\napiVersion: tekton.dev/v1alpha1\nkind: Pipeline\nmetadata:\n name: getting-started-pipeline\n namespace: getting-started\nspec:\n resources:\n - name: docker-source\n type: "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("git")]),e._v("\n - name: image-source\n type: image\n - name: event-to-sink\n type: cloudEvent\n tasks:\n - name: build-docker-image-from-git-task-run\n taskRef:\n name: build-docker-image-from-git-task\n params:\n - name: pathToDockerFile\n value: Dockerfile\n - name: pathToContext\n value: /workspace/docker-source/\n resources:\n inputs:\n - name: docker-source\n resource: docker-source\n outputs:\n - name: image-source\n resource: image-source\n - name: deploy-locally\n taskRef:\n name: deploy-locally\n resources:\n inputs:\n - name: image-source\n resource: image-source\n from:\n - build-docker-image-from-git-task-run\n outputs:\n - name: event-to-sink\n resource: event-to-sink\n---\napiVersion: v1\nkind: Service\nmetadata:\n name: event-display\n namespace: getting-started\n labels:\n app: event-display\nspec:\n type: ClusterIP\n ports:\n - name: listener\n port: "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("8080")]),e._v("\n protocol: TCP\n selector:\n app: event-display\n---\n apiVersion: v1\n kind: Pod\n metadata:\n name: event-display\n namespace: getting-started\n labels:\n name: event-display\n spec:\n hostname: event-display\n containers:\n - image: gcr.io/knative-releases/github.com/knative/eventing-sources/cmd/event_display\n name: web\nEOF\n")])])]),t("p",[e._v("Install the TriggerTemplate, TriggerBinding and EventListener:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -")]),e._v("\napiVersion: tekton.dev/v1alpha1\nkind: TriggerTemplate\nmetadata:\n name: getting-started-triggertemplate\n namespace: getting-started\nspec:\n params:\n - name: gitrevision\n description: The git revision\n default: master\n - name: gitrepositoryurl\n description: The git repository url\n - name: image_registry_url\n description: The container registry url\n - name: namespace\n description: The namespace to create the resources\n resourcetemplates:\n - apiVersion: tekton.dev/v1alpha1\n kind: PipelineResource\n metadata:\n name: source-repo-\\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("uid"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n namespace: \\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("params.namespace"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n spec:\n type: git\n params:\n - name: revision\n value: \\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("params.gitrevision"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n - name: url\n value: \\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("params.gitrepositoryurl"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n - apiVersion: tekton.dev/v1alpha1\n kind: PipelineResource\n metadata:\n name: image-source-\\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("uid"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n namespace: \\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("params.namespace"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n spec:\n type: image\n params:\n - name: url\n value: \\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("params.image_registry_url"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n - apiVersion: tekton.dev/v1alpha1\n kind: PipelineResource\n metadata:\n name: event-to-sink-\\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("uid"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n namespace: \\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("params.namespace"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n spec:\n type: cloudEvent\n params:\n - name: targetURI\n value: http://event-display.getting-started.svc.cluster.local\n - apiVersion: tekton.dev/v1alpha1\n kind: PipelineRun\n metadata:\n name: getting-started-pipeline-run-\\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("uid"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n namespace: \\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("params.namespace"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n spec:\n serviceAccount: tekton-triggers-admin\n pipelineRef:\n name: getting-started-pipeline\n resources:\n - name: docker-source\n resourceRef:\n name: source-repo-\\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("uid"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n - name: image-source\n resourceRef:\n name: image-source-\\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("uid"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n - name: event-to-sink\n resourceRef:\n name: event-to-sink-\\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("uid"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n---\napiVersion: tekton.dev/v1alpha1\nkind: TriggerBinding\nmetadata:\n name: getting-started-pipelinebinding\n namespace: getting-started\nspec:\n params:\n - name: gitrevision\n value: \\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("body.head_commit.id"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v('\n - name: namespace\n value: getting-started\n - name: gitrepositoryurl\n value: "https://github.com/\\'),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("body.repository.full_name"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v('"\n - name: image_registry_url\n value: "harbor.'),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${MY_DOMAIN}")]),e._v("/library/\\"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("body.repository.name"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v('"\n---\napiVersion: tekton.dev/v1alpha1\nkind: EventListener\nmetadata:\n name: getting-started-listener\n namespace: getting-started\nspec:\n serviceAccountName: tekton-triggers-admin\n triggers:\n - binding:\n name: getting-started-pipelinebinding\n template:\n name: getting-started-triggertemplate\nEOF')]),e._v("\n")])])]),t("h3",{attrs:{id:"configure-webhook"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#configure-webhook"}},[e._v("#")]),e._v(" Configure webhook")]),e._v(" "),t("p",[e._v("Create Task which will create Istio Gateway and VirtualService to handle\nincoming webhook form GitHub:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("\\")]),e._v("EOF2 "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -\napiVersion: tekton.dev/v1alpha1\nkind: Task\nmetadata:\n name: create-istio-gateway-virtualservice\n namespace: getting-started\nspec:\n volumes:\n - name: work\n emptyDir: "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n\n inputs:\n params:\n - name: TLScredentialName\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Specify the secret with wildcard certificate"')]),e._v("\n - name: ExternalDomain\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The external domain for the EventListener"')]),e._v("\n - name: Service\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The name of the Service used in the VirtualService"')]),e._v("\n - name: ServicePort\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The service port that the VirtualService is being created on"')]),e._v("\n\n steps:\n - name: create-istio-gateway-virtualservice\n image: lachlanevenson/k8s-kubectl:latest\n command:\n - "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sh")]),e._v("\n args:\n - "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-ce")]),e._v("\n - "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[e._v("set")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-ex")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl create "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -")]),e._v("\n apiVersion: networking.istio.io/v1alpha3\n kind: Gateway\n metadata:\n name: "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.Service"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("-gateway\n spec:\n selector:\n istio: ingressgateway\n servers:\n - port:\n number: 443\n name: https-"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.Service"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n protocol: HTTPS\n hosts:\n - "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.ExternalDomain"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n tls:\n credentialName: "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.TLScredentialName"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n mode: SIMPLE\n privateKey: sds\n serverCertificate: sds\n ---\n apiVersion: networking.istio.io/v1alpha3\n kind: VirtualService\n metadata:\n name: "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.Service"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("-virtual-service\n spec:\n hosts:\n - "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.ExternalDomain"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n gateways:\n - "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.Service"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("-gateway\n http:\n - route:\n - destination:\n host: "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.Service"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n port:\n number: "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.ServicePort"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n EOF\nEOF")]),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("2")]),e._v("\n")])])]),t("p",[e._v("Create TaskRun to start "),t("code",[e._v("create-istio-gateway-virtualservice")]),e._v(" Task:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -")]),e._v("\napiVersion: tekton.dev/v1alpha1\nkind: TaskRun\nmetadata:\n name: create-istio-gateway-virtualservice-run\n namespace: getting-started\nspec:\n taskRef:\n name: create-istio-gateway-virtualservice\n inputs:\n params:\n - name: TLScredentialName\n value: ingress-cert-"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${LETSENCRYPT_ENVIRONMENT}")]),e._v("\n - name: ExternalDomain\n value: getting-started."),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${MY_DOMAIN}")]),e._v('\n - name: Service\n value: el-getting-started-listener\n - name: ServicePort\n value: "8080"\n timeout: 1000s\n serviceAccount: tekton-triggers-createwebhook\nEOF')]),e._v("\n")])])]),t("p",[e._v("Create webhook Task:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("\\")]),e._v("EOF "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -\napiVersion: tekton.dev/v1alpha1\nkind: Task\nmetadata:\n name: create-webhook\n namespace: getting-started\nspec:\n volumes:\n - name: github-secret\n secret:\n secretName: "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.GitHubSecretName"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\n\n inputs:\n params:\n - name: ExternalDomain\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The external domain for the EventListener e.g. '),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("`")]),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.EventListenerName"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),e._v("."),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<")]),e._v("PROXYIP"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(">")]),e._v(".nip.io"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("`")])]),e._v('"')]),e._v("\n - name: GitHubUser\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The GitHub user"')]),e._v("\n - name: GitHubRepo\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The GitHub repo where the webhook will be created"')]),e._v("\n - name: GitHubOrg\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The GitHub organization where the webhook will be created"')]),e._v("\n - name: GitHubSecretName\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The Secret name for GitHub access token. This is always mounted and must exist"')]),e._v("\n - name: GitHubAccessTokenKey\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The GitHub access token key name"')]),e._v("\n - name: GitHubSecretStringKey\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The GitHub secret string key name"')]),e._v("\n - name: GitHubDomain\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"The GitHub domain. Override for GitHub Enterprise"')]),e._v("\n default: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"github.com"')]),e._v("\n - name: WebhookEvents\n description: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"List of events the webhook will send notifications for"')]),e._v("\n default: "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"['),t("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[e._v("\\\\")]),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("push"),t("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[e._v("\\\\")]),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(","),t("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[e._v("\\\\")]),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("pull_request"),t("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[e._v("\\\\")]),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(']"')]),e._v("\n\n steps:\n - name: create-webhook\n image: pstauffer/curl:latest\n volumeMounts:\n - name: github-secret\n mountPath: /var/secret\n command:\n - "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sh")]),e._v("\n args:\n - "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-ce")]),e._v("\n - "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[e._v("set")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-e")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[e._v("echo")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Create Webhook"')]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[e._v("if")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("[")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.GitHubDomain"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"github.com"')]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("]")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(";")]),t("span",{pre:!0,attrs:{class:"token keyword"}},[e._v("then")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("curl")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-v")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-d")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"{'),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("name"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("web"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(","),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("active"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": true,"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("events"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.WebhookEvents"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v(","),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("config"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": {"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("url"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("https://"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.ExternalDomain"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(","),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("content_type"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("json"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(","),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("insecure_ssl"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("1"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(" ,"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("secret"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" /var/secret/"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("$(")]),e._v("inputs.params.GitHubSecretStringKey"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v('}}"')]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-X")]),e._v(" POST "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-u")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.GitHubUser"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" /var/secret/"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("$(")]),e._v("inputs.params.GitHubAccessTokenKey"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-L")]),e._v(" https://api.github.com/repos/"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.GitHubOrg"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("/"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.GitHubRepo"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("/hooks\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[e._v("else")]),e._v("\n "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("curl")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-d")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"{'),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("name"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("web"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(","),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("active"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": true,"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("events"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.WebhookEvents"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v(","),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("config"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": {"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("url"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("https://"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.ExternalDomain"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("/"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(","),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("content_type"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("json"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(","),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("insecure_ssl"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("1"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(" ,"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v("secret"),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v(": "),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" /var/secret/"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("$(")]),e._v("inputs.params.GitHubSecretStringKey"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),t("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[e._v('\\"')]),e._v('}}"')]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-X")]),e._v(" POST "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-u")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.GitHubUser"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" /var/secret/"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("$(")]),e._v("inputs.params.GitHubAccessTokenKey"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(")")]),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-L")]),e._v(" https://"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.GitHubDomain"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("/api/v3/repos/"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.GitHubOrg"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("/"),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("inputs.params.GitHubRepo"),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("/hooks\n "),t("span",{pre:!0,attrs:{class:"token keyword"}},[e._v("fi")]),e._v("\nEOF\n")])])]),t("p",[e._v("Create secret with "),t("a",{attrs:{href:"https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token",target:"_blank",rel:"noopener noreferrer"}},[e._v("GitHub Personal Access Token"),t("OutboundLink")],1),e._v(":")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -")]),e._v("\napiVersion: v1\nkind: Secret\nmetadata:\n name: webhook-secret\n namespace: getting-started\nstringData:\n token: "),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${GITHUB_TOKEN}")]),e._v("\n secret: random-string-data\nEOF")]),e._v("\n")])])]),t("p",[e._v("Create TaskRun to initiate Webhook:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sleep")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("20")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token comment"}},[e._v("# Wait for DNS created by previous TaskRun")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("cat")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("<<")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("|")]),e._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-f")]),e._v(" -")]),e._v('\napiVersion: tekton.dev/v1alpha1\nkind: TaskRun\nmetadata:\n name: create-webhook-run\n namespace: getting-started\nspec:\n taskRef:\n name: create-webhook\n inputs:\n params:\n - name: GitHubOrg\n value: "ruzickap"\n - name: GitHubUser\n value: "ruzickap"\n - name: GitHubRepo\n value: "podinfo"\n - name: GitHubSecretName\n value: webhook-secret\n - name: GitHubAccessTokenKey\n value: token\n - name: GitHubSecretStringKey\n value: secret\n - name: ExternalDomain\n value: getting-started.'),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${MY_DOMAIN}")]),e._v("\n timeout: 1000s\n serviceAccount: tekton-triggers-createwebhook\nEOF")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sleep")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("5")]),e._v("\n")])])]),t("p",[e._v("Verify if the TaskRuns were successfully executed:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("kubectl get taskruns.tekton.dev "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("NAME SUCCEEDED REASON STARTTIME COMPLETIONTIME\ncreate-istio-gateway-virtualservice-run True Succeeded 80s 71s\ncreate-webhook-run Unknown Pending 2s\n")])])]),t("p",[e._v("Look at the logs from "),t("code",[e._v("create-istio-gateway-virtualservice")]),e._v(" TaskRun:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("tkn taskrun logs "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started create-istio-gateway-virtualservice-run\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("[create-istio-gateway-virtualservice] + + kubectl create -f -\n[create-istio-gateway-virtualservice] cat\n[create-istio-gateway-virtualservice] gateway.networking.istio.io/el-getting-started-listener-gateway created\n[create-istio-gateway-virtualservice] virtualservice.networking.istio.io/el-getting-started-listener-virtual-service created\n")])])]),t("p",[e._v("Look at the logs from "),t("code",[e._v("create-webhook-run")]),e._v(" TaskRun:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("tkn taskrun logs "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started create-webhook-run\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v('[create-webhook] Create Webhook\n[create-webhook] Note: Unnecessary use of -X or --request, POST is already inferred.\n[create-webhook] % Total % Received % Xferd Average Speed Time Time Time Current\n[create-webhook] Dload Upload Total Spent Left Speed\n 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 140.82.118.6...\n[create-webhook] * TCP_NODELAY set\n[create-webhook] * Connected to api.github.com (140.82.118.6) port 443 (#0)\n[create-webhook] * ALPN, offering h2\n[create-webhook] * ALPN, offering http/1.1\n[create-webhook] * successfully set certificate verify locations:\n[create-webhook] * CAfile: /etc/ssl/certs/ca-certificates.crt\n[create-webhook] CApath: none\n[create-webhook] * TLSv1.2 (OUT), TLS handshake, Client hello (1):\n[create-webhook] } [232 bytes data]\n[create-webhook] * TLSv1.2 (IN), TLS handshake, Server hello (2):\n[create-webhook] { [108 bytes data]\n[create-webhook] * TLSv1.2 (IN), TLS handshake, Certificate (11):\n[create-webhook] { [2851 bytes data]\n[create-webhook] * TLSv1.2 (IN), TLS handshake, Server key exchange (12):\n[create-webhook] { [300 bytes data]\n[create-webhook] * TLSv1.2 (IN), TLS handshake, Server finished (14):\n[create-webhook] { [4 bytes data]\n[create-webhook] * TLSv1.2 (OUT), TLS handshake, Client key exchange (16):\n[create-webhook] } [37 bytes data]\n[create-webhook] * TLSv1.2 (OUT), TLS change cipher, Client hello (1):\n[create-webhook] } [1 bytes data]\n[create-webhook] * TLSv1.2 (OUT), TLS handshake, Finished (20):\n[create-webhook] } [16 bytes data]\n[create-webhook] * TLSv1.2 (IN), TLS change cipher, Client hello (1):\n[create-webhook] { [1 bytes data]\n[create-webhook] * TLSv1.2 (IN), TLS handshake, Finished (20):\n[create-webhook] { [16 bytes data]\n[create-webhook] * SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256\n[create-webhook] * ALPN, server accepted to use http/1.1\n[create-webhook] * Server certificate:\n[create-webhook] * subject: C=US; ST=California; L=San Francisco; O=GitHub, Inc.; CN=*.github.com\n[create-webhook] * start date: Jul 8 00:00:00 2019 GMT\n[create-webhook] * expire date: Jul 16 12:00:00 2020 GMT\n[create-webhook] * subjectAltName: host "api.github.com" matched cert\'s "*.github.com"\n[create-webhook] * issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert SHA2 High Assurance Server CA\n[create-webhook] * SSL certificate verify ok.\n[create-webhook] * Server auth using Basic with user \'ruzickap\'\n[create-webhook] > POST /repos/ruzickap/podinfo/hooks HTTP/1.1\n[create-webhook] > Host: api.github.com\n[create-webhook] > Authorization: Basic cnxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxU3MA==\n[create-webhook] > User-Agent: curl/7.60.0\n[create-webhook] > Accept: */*\n[create-webhook] > Content-Length: 195\n[create-webhook] > Content-Type: application/x-www-form-urlencoded\n[create-webhook] >\n[create-webhook] } [195 bytes data]\n[create-webhook] * upload completely sent off: 195 out of 195 bytes\n[create-webhook] < HTTP/1.1 201 Created\n[create-webhook] < Date: Fri, 27 Dec 2019 10:19:37 GMT\n[create-webhook] < Content-Type: application/json; charset=utf-8\n[create-webhook] < Content-Length: 688\n[create-webhook] < Server: GitHub.com\n[create-webhook] < Status: 201 Created\n[create-webhook] < X-RateLimit-Limit: 5000\n[create-webhook] < X-RateLimit-Remaining: 4992\n[create-webhook] < X-RateLimit-Reset: 1577445296\n[create-webhook] < Cache-Control: private, max-age=60, s-maxage=60\n[create-webhook] < Vary: Accept, Authorization, Cookie, X-GitHub-OTP\n[create-webhook] < ETag: "a9xxxxxxxxxxxxxxxxxxxxxxxxxxxxe3"\n[create-webhook] < X-OAuth-Scopes: admin:org_hook, admin:repo_hook, delete_repo, read:org, repo, user:email\n[create-webhook] < X-Accepted-OAuth-Scopes: admin:repo_hook, public_repo, repo, write:repo_hook\n[create-webhook] < Location: https://api.github.com/repos/ruzickap/podinfo/hooks/170061618\n[create-webhook] < X-GitHub-Media-Type: github.v3; format=json\n[create-webhook] < Access-Control-Expose-Headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type\n[create-webhook] < Access-Control-Allow-Origin: *\n[create-webhook] < Strict-Transport-Security: max-age=31536000; includeSubdomains; preload\n[create-webhook] < X-Frame-Options: deny\n[create-webhook] < X-Content-Type-Options: nosniff\n[create-webhook] < X-XSS-Protection: 1; mode=block\n[create-webhook] < Referrer-Policy: origin-when-cross-origin, strict-origin-when-cross-origin\n[create-webhook] < Content-Security-Policy: default-src \'none\'\n[create-webhook] < Vary: Accept-Encoding\n[create-webhook] < X-GitHub-Request-Id: CEXX:XXXXX:XXXXXXX:XXXXXXX:XXXXXXB9\n[create-webhook] <\n[create-webhook] { [688 bytes data]\n100 883 100 688 100 195 1746 494 --:--:-- --:--:-- --:--:-- 2241\n[create-webhook] * Connection #0 to host api.github.com left intact\n[create-webhook] {\n[create-webhook] "type": "Repository",\n[create-webhook] "id": 170061618,\n[create-webhook] "name": "web",\n[create-webhook] "active": true,\n[create-webhook] "events": [\n[create-webhook] "pull_request",\n[create-webhook] "push"\n[create-webhook] ],\n[create-webhook] "config": {\n[create-webhook] "content_type": "json",\n[create-webhook] "insecure_ssl": "1",\n[create-webhook] "secret": "********",\n[create-webhook] "url": "https://getting-started.mylabs.dev"\n[create-webhook] },\n[create-webhook] "updated_at": "2019-12-27T10:19:37Z",\n[create-webhook] "created_at": "2019-12-27T10:19:37Z",\n[create-webhook] "url": "https://api.github.com/repos/ruzickap/podinfo/hooks/170061618",\n[create-webhook] "test_url": "https://api.github.com/repos/ruzickap/podinfo/hooks/170061618/test",\n[create-webhook] "ping_url": "https://api.github.com/repos/ruzickap/podinfo/hooks/170061618/pings",\n[create-webhook] "last_response": {\n[create-webhook] "code": null,\n[create-webhook] "status": "unused",\n[create-webhook] "message": null\n[create-webhook] }\n[create-webhook] }\n')])])]),t("p",[e._v("You should also see in the GitHub / Settings / Webhook the registration "),t("a",{attrs:{href:"https://github.com/ruzickap/podinfo/settings/hooks/",target:"_blank",rel:"noopener noreferrer"}},[e._v("https://github.com/ruzickap/podinfo/settings/hooks/"),t("OutboundLink")],1),e._v(":")]),e._v(" "),t("p",[t("img",{attrs:{src:a(306),alt:"GitHub Webhooks",title:"GitHub Webhooks"}})]),e._v(" "),t("p",[e._v("After clicking on the Webhook you can see the details:")]),e._v(" "),t("p",[t("img",{attrs:{src:a(307),alt:"GitHub Webhooks - Details",title:"GitHub Webhooks - Details"}})]),e._v(" "),t("p",[e._v("In case you are troubleshooting the incoming traffic from GitHub the look at\nthe logs of the pod. You should be able to see the details\nin the "),t("code",[e._v("kubectl logs")]),e._v(".")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("kubectl get pods "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-l")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[e._v("eventlistener")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("getting-started-listener\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sleep")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("5")]),e._v("\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("NAME READY STATUS RESTARTS AGE\nel-getting-started-listener-fcffc467d-xwsfp 1/1 Running 0 2m6s\n")])])]),t("h2",{attrs:{id:"change-the-source-code-of-the-app"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#change-the-source-code-of-the-app"}},[e._v("#")]),e._v(" Change the source code of the app")]),e._v(" "),t("p",[e._v("Trigger the pipeline by calling the:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[e._v("echo")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Trigger build"')]),e._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(">>")]),e._v(" podinfo/README.md\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("git")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-C")]),e._v(" podinfo commit "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-s")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-a")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-m")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Standard version"')]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("git")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-C")]),e._v(" podinfo push ruzickap\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sleep")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("30")]),e._v("\nkubectl "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--timeout")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("10m "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("wait")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--for")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("condition"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("Succeeded pipelineruns "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--all")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sleep")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("5")]),e._v("\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("[master d4120e6] Standard version\n 1 file changed, 1 insertion(+), 1 deletion(-)\nWarning: Permanently added '[ssh.github.com]:443,[192.30.253.122]:443' (RSA) to the list of known hosts.\nEnumerating objects: 5, done.\nCounting objects: 100% (5/5), done.\nDelta compression using up to 4 threads\nCompressing objects: 100% (3/3), done.\nWriting objects: 100% (3/3), 325 bytes | 162.00 KiB/s, done.\nTotal 3 (delta 2), reused 0 (delta 0)\nremote: Resolving deltas: 100% (2/2), completed with 2 local objects.\nTo github.com:ruzickap/podinfo.git\n 948de81..d4120e6 master -> master\npipelinerun.tekton.dev/getting-started-pipeline-run-fzrtg condition met\n")])])]),t("p",[e._v("Look at the logs of the newly deployed pod (look at "),t("code",[e._v('"Starting podinfo"')]),e._v("):")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[e._v("PODINFO_POD")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("kubectl get pods "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-l")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("run"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("podinfo "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-o")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[e._v("jsonpath")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"{.items[0].metadata.name}"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\nkubectl "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started logs "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started "),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${PODINFO_POD}")]),e._v("\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"level"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"info"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"ts"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"2019-11-27T15:00:58.907Z"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"caller"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"podinfo/main.go:120"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"msg"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Starting podinfo"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"version"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"3.1.5"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"revision"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"164a27b33b09d1b50fad277a60a6c19d353cb9d8"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"port"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"9898"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n")])])]),t("p",[e._v("Let's try to change the code of the application:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sed")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-i")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"s/Starting podinfo/Starting podinfo - new Tekton build version/"')]),e._v(" podinfo/cmd/podinfo/main.go\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("git")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-C")]),e._v(" podinfo "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("diff")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("git")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-C")]),e._v(" podinfo commit "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-s")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-a")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-m")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"String changed"')]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("git")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-C")]),e._v(" podinfo push ruzickap\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sleep")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("20")]),e._v("\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v('─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\nmodified: cmd/podinfo/main.go\n─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\n@ cmd/podinfo/main.go:120 @ func main() {\n }\n\n // log version and port\n logger.Info("Starting podinfo",\n logger.Info("Starting podinfo - new Tekton build version",\n zap.String("version", viper.GetString("version")),\n zap.String("revision", viper.GetString("revision")),\n zap.String("port", srvCfg.Port),\n[master 4d9f5bc] String changed\n 1 file changed, 1 insertion(+), 1 deletion(-)\nWarning: Permanently added \'[ssh.github.com]:443,[192.30.253.122]:443\' (RSA) to the list of known hosts.\nEnumerating objects: 9, done.\nCounting objects: 100% (9/9), done.\nDelta compression using up to 4 threads\nCompressing objects: 100% (4/4), done.\nWriting objects: 100% (5/5), 459 bytes | 459.00 KiB/s, done.\nTotal 5 (delta 2), reused 0 (delta 0)\nremote: Resolving deltas: 100% (2/2), completed with 2 local objects.\nTo github.com:ruzickap/podinfo.git\n d4120e6..4d9f5bc master -> master\n')])])]),t("p",[e._v("Wait for the pipelines to complete:")]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[e._v("kubectl "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--timeout")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("10m "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started "),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("wait")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--for")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("condition"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("Succeeded pipelineruns "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("--all")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sleep")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("5")]),e._v("\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[e._v("pipelinerun.tekton.dev/getting-started-pipeline-run-dzqdl condition met\npipelinerun.tekton.dev/getting-started-pipeline-run-fzrtg condition met\n")])])]),t("p",[e._v('Check how the logs of the newly deployed podinfo logs should contain\n"Starting podinfo - new Tekton build version":')]),e._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[e._v("PODINFO_POD")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("kubectl get pods "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-l")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("run"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("podinfo "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-o")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[e._v("jsonpath")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"{.items[0].metadata.name}"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\nkubectl "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started delete pod "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started "),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${PODINFO_POD}")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[e._v("sleep")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[e._v("5")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[e._v("PODINFO_POD")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("$(")]),e._v("kubectl get pods "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-l")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("run"),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),e._v("podinfo "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-o")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[e._v("jsonpath")]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"{.items[0].metadata.name}"')]),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v(")")])]),e._v("\nkubectl "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started logs "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[e._v("-n")]),e._v(" getting-started "),t("span",{pre:!0,attrs:{class:"token variable"}},[e._v("${PODINFO_POD}")]),e._v("\n"),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[e._v("cd")]),e._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("..")]),e._v("\n")])])]),t("p",[e._v("Output:")]),e._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[e._v("pod "),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"podinfo-6ccfb5f9b6-bwrbn"')]),e._v(" deleted\n"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("{")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"level"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"info"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"ts"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"2019-12-27T10:28:22.304Z"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"caller"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"podinfo/main.go:120"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"msg"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"Starting podinfo - new Tekton build version"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"version"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"3.1.5"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"revision"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"4d9f5bc71bd9a8c7ae44a9cd9631e45067727a2e"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v(",")]),t("span",{pre:!0,attrs:{class:"token property"}},[e._v('"port"')]),t("span",{pre:!0,attrs:{class:"token operator"}},[e._v(":")]),t("span",{pre:!0,attrs:{class:"token string"}},[e._v('"9898"')]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[e._v("}")]),e._v("\n")])])])])}),[],!1,null,null,null);t.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/23.1d6373ca.js b/assets/js/23.1d6373ca.js new file mode 100644 index 0000000..972f306 --- /dev/null +++ b/assets/js/23.1d6373ca.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[23],{246:function(t,n,e){"use strict";e.d(n,"d",(function(){return r})),e.d(n,"a",(function(){return s})),e.d(n,"i",(function(){return u})),e.d(n,"f",(function(){return a})),e.d(n,"g",(function(){return l})),e.d(n,"h",(function(){return c})),e.d(n,"b",(function(){return f})),e.d(n,"e",(function(){return h})),e.d(n,"k",(function(){return p})),e.d(n,"l",(function(){return d})),e.d(n,"c",(function(){return b})),e.d(n,"j",(function(){return m}));e(92);const r=/#.*$/,i=/\.(md|html)$/,s=/\/$/,u=/^[a-z]+:/i;function o(t){return decodeURI(t).replace(r,"").replace(i,"")}function a(t){return u.test(t)}function l(t){return/^mailto:/.test(t)}function c(t){return/^tel:/.test(t)}function f(t){if(a(t))return t;const n=t.match(r),e=n?n[0]:"",i=o(t);return s.test(i)?t:i+".html"+e}function h(t,n){const e=decodeURIComponent(t.hash),i=function(t){const n=t.match(r);if(n)return n[0]}(n);if(i&&e!==i)return!1;return o(t.path)===o(n)}function p(t,n,e){if(a(n))return{type:"external",path:n};e&&(n=function(t,n,e){const r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return n+t;const i=n.split("/");e&&i[i.length-1]||i.pop();const s=t.replace(/^\//,"").split("/");for(let t=0;tfunction t(n,e,r,i=1){if("string"==typeof n)return p(e,n,r);if(Array.isArray(n))return Object.assign(p(e,n[0],r),{title:n[1]});{const s=n.children||[];return 0===s.length&&n.path?Object.assign(p(e,n.path,r),{title:n.title}):{type:"group",path:n.path,title:n.title,sidebarDepth:n.sidebarDepth,initialOpenGroupIndex:n.initialOpenGroupIndex,children:s.map(n=>t(n,e,r,i+1)),collapsable:!1!==n.collapsable}}}(t,i,e)):[]}return[]}function g(t){const n=b(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:n.map(n=>({type:"auto",title:n.title,basePath:t.path,path:t.path+"#"+n.slug,children:n.children||[]}))}]}function b(t){let n;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?n=t:n&&(n.children||(n.children=[])).push(t)}),t.filter(t=>2===t.level)}function m(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},248:function(t,n,e){"use strict";e.r(n);var r=e(246),i={name:"NavLink",props:{item:{required:!0}},computed:{link(){return Object(r.b)(this.item.link)},exact(){return this.$site.locales?Object.keys(this.$site.locales).some(t=>t===this.link):"/"===this.link},isNonHttpURI(){return Object(r.g)(this.link)||Object(r.h)(this.link)},isBlankTarget(){return"_blank"===this.target},isInternal(){return!Object(r.f)(this.link)&&!this.isBlankTarget},target(){return this.isNonHttpURI?null:this.item.target?this.item.target:Object(r.f)(this.link)?"_blank":""},rel(){return this.isNonHttpURI||!1===this.item.rel?null:this.item.rel?this.item.rel:this.isBlankTarget?"noopener noreferrer":null}},methods:{focusoutAction(){this.$emit("focusout")}}},s=e(8),u=Object(s.a)(i,(function(){var t=this,n=t._self._c;return t.isInternal?n("RouterLink",{staticClass:"nav-link",attrs:{to:t.link,exact:t.exact},nativeOn:{focusout:function(n){return t.focusoutAction.apply(null,arguments)}}},[t._v("\n "+t._s(t.item.text)+"\n")]):n("a",{staticClass:"nav-link external",attrs:{href:t.link,target:t.target,rel:t.rel},on:{focusout:t.focusoutAction}},[t._v("\n "+t._s(t.item.text)+"\n "),t.isBlankTarget?n("OutboundLink"):t._e()],1)}),[],!1,null,null,null);n.default=u.exports}}]); \ No newline at end of file diff --git a/assets/js/24.c43ab997.js b/assets/js/24.c43ab997.js new file mode 100644 index 0000000..9ec5d8f --- /dev/null +++ b/assets/js/24.c43ab997.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[24],{303:function(a,t,s){a.exports=s.p+"assets/img/kubed.e88b1fb6.svg"},323:function(a,t,s){"use strict";s.r(t);var e=s(8),r=Object(e.a)({},(function(){var a=this,t=a._self._c;return t("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[t("h1",{attrs:{id:"istio-knative-cert-manager-kubed-installation"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#istio-knative-cert-manager-kubed-installation"}},[a._v("#")]),a._v(" Istio + Knative + cert-manager + kubed installation")]),a._v(" "),t("p",[a._v("Before we move on with other tasks it is necessary to install Nginx Ingress.\nIt's also handy to install cert-manager for managing SSL certificates.")]),a._v(" "),t("h2",{attrs:{id:"install-cert-manager"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#install-cert-manager"}},[a._v("#")]),a._v(" Install cert-manager")]),a._v(" "),t("p",[a._v("cert-manager architecture:")]),a._v(" "),t("p",[t("img",{attrs:{src:"https://raw.githubusercontent.com/jetstack/cert-manager/4f30ed75e88e5d0defeb950501b5cac6da7fa7fe/docs/images/high-level-overview.png",alt:"cert-manager high level overview",title:"cert-manager high level overview"}})]),a._v(" "),t("p",[a._v("Install the CRDs resources separately:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-f")]),a._v(" https://raw.githubusercontent.com/jetstack/cert-manager/release-0.10/deploy/manifests/00-crds.yaml\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("5")]),a._v("\n")])])]),t("p",[a._v("Create the namespace for cert-manager and label it to disable resource\nvalidation:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl create namespace cert-manager\nkubectl label namespace cert-manager certmanager.k8s.io/disable-validation"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true\n")])])]),t("p",[a._v("Install the cert-manager Helm chart:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("helm repo "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("add")]),a._v(" jetstack https://charts.jetstack.io\nhelm repo update\nhelm "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" cert-manager "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--namespace")]),a._v(" cert-manager "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--wait")]),a._v(" jetstack/cert-manager "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--version")]),a._v(" v0.10.1\n")])])]),t("p",[a._v("Output:")]),a._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[a._v('"jetstack" has been added to your repositories\nHang tight while we grab the latest from your chart repositories...\n...Successfully got an update from the "jetstack" chart repository\n...Successfully got an update from the "stable" chart repository\nUpdate Complete. ⎈ Happy Helming!⎈\nNAME: cert-manager\nLAST DEPLOYED: Fri Dec 27 10:48:40 2019\nNAMESPACE: cert-manager\nSTATUS: deployed\nREVISION: 1\nTEST SUITE: None\nNOTES:\ncert-manager has been deployed successfully!\n\nIn order to begin issuing certificates, you will need to set up a ClusterIssuer\nor Issuer resource (for example, by creating a \'letsencrypt-staging\' issuer).\n\nMore information on the different types of issuers and how to configure them\ncan be found in our documentation:\n\nhttps://docs.cert-manager.io/en/latest/reference/issuers.html\n\nFor information on how to configure cert-manager to automatically provision\nCertificates for Ingress resources, take a look at the `ingress-shim`\ndocumentation:\n\nhttps://docs.cert-manager.io/en/latest/reference/ingress-shim.html\n')])])]),t("h3",{attrs:{id:"create-clusterissuer-for-let-s-encrypt"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#create-clusterissuer-for-let-s-encrypt"}},[a._v("#")]),a._v(" Create ClusterIssuer for Let's Encrypt")]),a._v(" "),t("p",[a._v("Create "),t("code",[a._v("ClusterIssuer")]),a._v(" for Route53 used by cert-manager. It will allow Let's\nEncrypt to generate certificate. Route53 (DNS) method of requesting certificate\nfrom Let's Encrypt must be used to create wildcard certificate "),t("code",[a._v("*.mylabs.dev")]),a._v("\n(details "),t("a",{attrs:{href:"https://community.letsencrypt.org/t/wildcard-certificates-via-http-01/51223",target:"_blank",rel:"noopener noreferrer"}},[a._v("here"),t("OutboundLink")],1),a._v(").")]),a._v(" "),t("p",[t("img",{attrs:{src:"https://b3n.org/wp-content/uploads/2016/09/acme_letsencrypt_dns-01-challenge.png",alt:"ACME DNS Challenge",title:"ACME DNS Challenge"}})]),a._v(" "),t("p",[a._v("("),t("a",{attrs:{href:"https://b3n.org/intranet-ssl-certificates-using-lets-encrypt-dns-01/",target:"_blank",rel:"noopener noreferrer"}},[a._v("https://b3n.org/intranet-ssl-certificates-using-lets-encrypt-dns-01/"),t("OutboundLink")],1),a._v(")")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("USER_AWS_SECRET_ACCESS_KEY_BASE64")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token variable"}},[t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-n")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$USER_AWS_SECRET_ACCESS_KEY")]),a._v('"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" base64"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n"),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("<<")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-f")]),a._v(" -")]),a._v("\napiVersion: v1\nkind: Secret\nmetadata:\n name: aws-user-secret-access-key-secret\n namespace: cert-manager\ndata:\n secret-access-key: "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$USER_AWS_SECRET_ACCESS_KEY_BASE64")]),a._v("\n---\napiVersion: certmanager.k8s.io/v1alpha1\nkind: ClusterIssuer\nmetadata:\n name: letsencrypt-staging-dns\n namespace: cert-manager\nspec:\n acme:\n server: https://acme-staging-v02.api.letsencrypt.org/directory\n email: petr.ruzicka@gmail.com\n privateKeySecretRef:\n name: letsencrypt-staging-dns\n dns01:\n providers:\n - name: aws-route53\n route53:\n accessKeyID: "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${USER_AWS_ACCESS_KEY_ID}")]),a._v("\n region: eu-central-1\n secretAccessKeySecretRef:\n name: aws-user-secret-access-key-secret\n key: secret-access-key\n---\napiVersion: certmanager.k8s.io/v1alpha1\nkind: ClusterIssuer\nmetadata:\n name: letsencrypt-production-dns\n namespace: cert-manager\nspec:\n acme:\n server: https://acme-v02.api.letsencrypt.org/directory\n email: petr.ruzicka@gmail.com\n privateKeySecretRef:\n name: letsencrypt-production-dns\n dns01:\n providers:\n - name: aws-route53\n route53:\n accessKeyID: "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${USER_AWS_ACCESS_KEY_ID}")]),a._v("\n region: eu-central-1\n secretAccessKeySecretRef:\n name: aws-user-secret-access-key-secret\n key: secret-access-key\nEOF")]),a._v("\n")])])]),t("h2",{attrs:{id:"generate-tls-certificate"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#generate-tls-certificate"}},[a._v("#")]),a._v(" Generate TLS certificate")]),a._v(" "),t("p",[a._v("Create certificate using cert-manager:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("<<")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-f")]),a._v(" -")]),a._v("\napiVersion: certmanager.k8s.io/v1alpha1\nkind: Certificate\nmetadata:\n name: ingress-cert-"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),a._v("\n namespace: cert-manager\nspec:\n secretName: ingress-cert-"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),a._v("\n issuerRef:\n kind: ClusterIssuer\n name: letsencrypt-"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),a._v('-dns\n commonName: "*.'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('"\n dnsNames:\n - "*.'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('"\n acme:\n config:\n - dns01:\n provider: aws-route53\n domains:\n - "*.'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('"\nEOF')]),a._v("\n")])])]),t("p",[a._v("("),t("a",{attrs:{href:"https://www.openshift.com/blog/self-serviced-end-to-end-encryption-approaches-for-applications-deployed-in-openshift",target:"_blank",rel:"noopener noreferrer"}},[a._v("https://www.openshift.com/blog/self-serviced-end-to-end-encryption-approaches-for-applications-deployed-in-openshift"),t("OutboundLink")],1),a._v(")")]),a._v(" "),t("h2",{attrs:{id:"install-kubed"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#install-kubed"}},[a._v("#")]),a._v(" Install kubed")]),a._v(" "),t("p",[a._v("It's necessary to copy the wildcard certificate across all \"future\" namespaces\nand that's the reason why "),t("a",{attrs:{href:"https://github.com/appscode/kubed",target:"_blank",rel:"noopener noreferrer"}},[a._v("kubed"),t("OutboundLink")],1),a._v(" needs to be\ninstalled (for now).\n"),t("a",{attrs:{href:"https://github.com/appscode/kubed",target:"_blank",rel:"noopener noreferrer"}},[a._v("kubed"),t("OutboundLink")],1),a._v(" can "),t("a",{attrs:{href:"https://appscode.com/products/kubed/0.9.0/guides/config-syncer/",target:"_blank",rel:"noopener noreferrer"}},[a._v("synchronize ConfigMaps/Secrets"),t("OutboundLink")],1),a._v("\nacross Kubernetes namespaces/clusters.")]),a._v(" "),t("p",[a._v("Kubed - synchronize secret diagram:")]),a._v(" "),t("p",[t("img",{attrs:{src:s(303),alt:"Kubed - synchronize secret",title:"Kubed - synchronize secret"}})]),a._v(" "),t("p",[a._v("Add kubed helm repository:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("helm repo "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("add")]),a._v(" appscode https://charts.appscode.com/stable/\nhelm repo update\n")])])]),t("p",[a._v("Install kubed:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("helm "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" kubed appscode/kubed "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--version")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0.11")]),a._v(".0 "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--namespace")]),a._v(" kube-system "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--wait")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("apiserver.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("false "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("config.clusterName")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("my_k8s_cluster\n")])])]),t("p",[a._v("Output:")]),a._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[a._v('NAME: kubed\nLAST DEPLOYED: Fri Dec 27 10:49:39 2019\nNAMESPACE: kube-system\nSTATUS: deployed\nREVISION: 1\nTEST SUITE: None\nNOTES:\nTo verify that Kubed has started, run:\n\n kubectl --namespace=kube-system get deployments -l "release=kubed, app=kubed"\n')])])]),t("p",[a._v("Annotate (mark) the cert-manager secret to be copied to other namespaces\nif necessary:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl annotate secret ingress-cert-"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-n")]),a._v(" cert-manager kubed.appscode.com/sync"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"app=kubed"')]),a._v("\n")])])]),t("h2",{attrs:{id:"install-istio"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#install-istio"}},[a._v("#")]),a._v(" Install Istio")]),a._v(" "),t("p",[a._v("Add Istio helm chart repository:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("ISTIO_VERSION")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"1.3.6"')]),a._v("\nhelm repo "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("add")]),a._v(" istio.io https://storage.googleapis.com/istio-release/releases/"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${ISTIO_VERSION}")]),a._v("/charts/\nhelm repo update\n")])])]),t("p",[a._v("Install CRDs for Istio:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl create namespace istio-system\nhelm "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" istio-init istio.io/istio-init "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--wait")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--namespace")]),a._v(" istio-system "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--version")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${ISTIO_VERSION}")]),a._v("\nkubectl "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-n")]),a._v(" istio-system "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("wait")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--for")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("condition"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("complete job "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--all")]),a._v("\n")])])]),t("p",[a._v("Output:")]),a._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[a._v("namespace/istio-system created\nNAME: istio-init\nLAST DEPLOYED: Fri Dec 27 10:49:56 2019\nNAMESPACE: istio-system\nSTATUS: deployed\nREVISION: 1\nTEST SUITE: None\njob.batch/istio-init-crd-10-1.3.6 condition met\njob.batch/istio-init-crd-11-1.3.6 condition met\njob.batch/istio-init-crd-12-1.3.6 condition met\n")])])]),t("p",[a._v("Label Istio namespace and which will trigger "),t("code",[a._v("kubed")]),a._v(" to copy there the secret\nwith certificates signed by Let's Encrypt:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl label namespace istio-system "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("app")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("kubed\n")])])]),t("p",[a._v("Install Istio:")]),a._v(" "),t("p",[a._v("(steps take from "),t("a",{attrs:{href:"https://github.com/knative/docs/blob/a8a1032de0c2b19f07a70456c030dfde94b12c03/docs/install/installing-istio.md",target:"_blank",rel:"noopener noreferrer"}},[a._v("Knative page"),t("OutboundLink")],1),a._v(")")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("helm "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" istio istio.io/istio "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--wait")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--namespace")]),a._v(" istio-system "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--version")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${ISTIO_VERSION}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.autoscaleMax"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.autoscaleMin"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".name"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("status-port "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".port"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("15020")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".targetPort"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("15020")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".name"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("http "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".nodePort"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("31380")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".port"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("80")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".targetPort"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("80")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("2")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".name"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("https "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("2")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".nodePort"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("31390")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("2")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".port"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("443")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".name"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("ssh "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".nodePort"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("31400")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.ports"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("3")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".port"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("22")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" gateways.istio-ingressgateway.sds.enabled"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("global.disablePolicyChecks")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("global.k8sIngress.enableHttps")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("global.k8sIngress.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("global.proxy.autoInject")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("disabled "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" grafana.datasources."),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"datasources\\.yaml"')]),a._v(".datasources"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".access"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("proxy "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" grafana.datasources."),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"datasources\\.yaml"')]),a._v(".datasources"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".editable"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" grafana.datasources."),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"datasources\\.yaml"')]),a._v(".datasources"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".isDefault"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" grafana.datasources."),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"datasources\\.yaml"')]),a._v(".datasources"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".jsonData.timeInterval"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("5s "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" grafana.datasources."),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"datasources\\.yaml"')]),a._v(".datasources"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".name"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("Prometheus "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" grafana.datasources."),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"datasources\\.yaml"')]),a._v(".datasources"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".orgId"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" grafana.datasources."),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"datasources\\.yaml"')]),a._v(".datasources"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".type"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("prometheus "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" grafana.datasources."),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"datasources\\.yaml"')]),a._v(".datasources"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),a._v(".url"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("http://prometheus-system-np.knative-monitoring.svc.cluster.local:8080 "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("grafana.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("kiali.contextPath")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("/ "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("kiali.createDemoSecret")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("kiali.dashboard.grafanaURL")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("http://grafana."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("/ "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("kiali.dashboard.jaegerURL")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("http://jaeger."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("/ "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("kiali.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("kiali.prometheusAddr")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("http://prometheus-system-np.knative-monitoring.svc.cluster.local:8080 "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("mixer.adapters.prometheus.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("false "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("pilot.traceSampling")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("100")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("prometheus.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("false "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("sidecarInjectorWebhook.enableNamespacesByDefault")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("sidecarInjectorWebhook.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("tracing.enabled")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true\n")])])]),t("p",[a._v("Output:")]),a._v(" "),t("div",{staticClass:"language-text extra-class"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[a._v("NAME: istio\nLAST DEPLOYED: Fri Dec 27 10:50:54 2019\nNAMESPACE: istio-system\nSTATUS: deployed\nREVISION: 1\nTEST SUITE: None\nNOTES:\nThank you for installing Istio.\n\nYour release is named Istio.\n\nTo get started running application with Istio, execute the following steps:\n1. Label namespace that application object will be deployed to by the following command (take default namespace as an example)\n\n kubectl label namespace default istio-injection=enabled\n kubectl get namespace -L istio-injection\n\n2. Deploy your applications\n\n kubectl apply -f <your-application>.yaml\n\nFor more information on running Istio, visit:\nhttps://istio.io/\n")])])]),t("p",[a._v("Let "),t("code",[a._v("istio-ingressgateway")]),a._v(" to use cert-manager generated certificate via\n"),t("a",{attrs:{href:"https://www.envoyproxy.io/docs/envoy/v1.5.0/intro/arch_overview/service_discovery#arch-overview-service-discovery-types-sds",target:"_blank",rel:"noopener noreferrer"}},[a._v("SDS"),t("OutboundLink")],1),a._v(".\nSteps are taken from this URL: "),t("a",{attrs:{href:"https://istio.io/docs/tasks/traffic-management/ingress/ingress-certmgr/",target:"_blank",rel:"noopener noreferrer"}},[a._v("https://istio.io/docs/tasks/traffic-management/ingress/ingress-certmgr/"),t("OutboundLink")],1),a._v(".")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-n")]),a._v(" istio-system patch gateway istio-autogenerated-k8s-ingress "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--type")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("json "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-p")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[{"')]),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("op")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("replace"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('", "')]),a._v("path"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("/spec/servers/1/tls"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('", "')]),a._v("value"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": {"')]),a._v("credentialName"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("ingress-cert-"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('", "')]),a._v("mode"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("SIMPLE"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('", "')]),a._v("privateKey"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("sds"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('", "')]),a._v("serverCertificate"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("sds"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"}}]"')]),a._v("\n")])])]),t("p",[a._v("Disable HTTP2 for gateway "),t("code",[a._v("istio-autogenerated-k8s-ingress")]),a._v(" to be compatible\nwith Knative:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-n")]),a._v(" istio-system patch gateway istio-autogenerated-k8s-ingress "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--type")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("json "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-p")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[{"')]),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("op")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("replace"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('", "')]),a._v("path"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("/spec/servers/0/port"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('", "')]),a._v("value"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": {"')]),a._v("name"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("http"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('", "')]),a._v("number"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("80")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('", "')]),a._v("protocol"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('": "')]),a._v("HTTP"),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"}}]"')]),a._v("\n")])])]),t("p",[a._v("Allow the "),t("code",[a._v("default")]),a._v(" namespace to use Istio injection:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl label namespace default istio-injection"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("enabled\n")])])]),t("p",[a._v("Configure the Istio services "),t("a",{attrs:{href:"https://www.jaegertracing.io/",target:"_blank",rel:"noopener noreferrer"}},[a._v("Jaeger"),t("OutboundLink")],1),a._v(" and\n"),t("a",{attrs:{href:"https://www.kiali.io/",target:"_blank",rel:"noopener noreferrer"}},[a._v("Kiali"),t("OutboundLink")],1),a._v(" to be visible externally:")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[t("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("<<")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v("EOF"),t("span",{pre:!0,attrs:{class:"token bash punctuation"}},[a._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" kubectl apply "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-f")]),a._v(" -")]),a._v("\napiVersion: networking.istio.io/v1alpha3\nkind: Gateway\nmetadata:\n name: istio-services-gateway\n namespace: istio-system\nspec:\n selector:\n istio: ingressgateway\n servers:\n - port:\n number: 80\n name: http-istio-services\n protocol: HTTP\n hosts:\n - grafana-istio."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n - jaeger-istio."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n - kiali-istio."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n - port:\n number: 443\n name: https-istio-services\n protocol: HTTPS\n hosts:\n - grafana-istio."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n - jaeger-istio."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n - kiali-istio."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n tls:\n credentialName: ingress-cert-"),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),a._v("\n mode: SIMPLE\n privateKey: sds\n serverCertificate: sds\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: grafana-istio-virtual-service\n namespace: istio-system\nspec:\n hosts:\n - grafana-istio."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n gateways:\n - istio-services-gateway\n http:\n - route:\n - destination:\n host: grafana.istio-system.svc.cluster.local\n port:\n number: 3000\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: jaeger-istio-virtual-service\n namespace: istio-system\nspec:\n hosts:\n - jaeger-istio."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n gateways:\n - istio-services-gateway\n http:\n - route:\n - destination:\n host: tracing.istio-system.svc.cluster.local\n port:\n number: 80\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: kiali-istio-virtual-service\n namespace: istio-system\nspec:\n hosts:\n - kiali-istio."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n gateways:\n - istio-services-gateway\n http:\n - route:\n - destination:\n host: kiali.istio-system.svc.cluster.local\n port:\n number: 20001\nEOF")]),a._v("\n")])])]),t("h2",{attrs:{id:"create-dns-records"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#create-dns-records"}},[a._v("#")]),a._v(" Create DNS records")]),a._v(" "),t("p",[a._v("Install "),t("a",{attrs:{href:"https://github.com/kubernetes-incubator/external-dns",target:"_blank",rel:"noopener noreferrer"}},[a._v("external-dns"),t("OutboundLink")],1),a._v(" and\nlet it manage "),t("code",[a._v("mylabs.dev")]),a._v(" entries in Route 53 (Do not upgrade external-dns,\nbecause it's not backward compatible and using different way of authentication\nto Route53 using roles):")]),a._v(" "),t("div",{staticClass:"language-bash extra-class"},[t("pre",{pre:!0,attrs:{class:"language-bash"}},[t("code",[a._v("kubectl create namespace external-dns\nhelm "),t("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" external-dns stable/external-dns "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--namespace")]),a._v(" external-dns "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--version")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("2.10")]),a._v(".1 "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--wait")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("aws.credentials.accessKey")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${USER_AWS_ACCESS_KEY_ID}")]),a._v('"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("aws.credentials.secretKey")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${USER_AWS_SECRET_ACCESS_KEY}")]),a._v('"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("aws.region")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("eu-central-1 "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("domainFilters")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("istioIngressGateways")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("istio-system/istio-ingressgateway"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("interval")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"10s"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("policy")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"sync"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("rbac.create")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("true "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("sources")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"{istio-gateway,service}"')]),a._v(" "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),t("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--set")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("txtOwnerId")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),t("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s."),t("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('"')]),a._v("\n")])])]),t("p",[a._v("Output:")]),a._v(" "),t("div",{staticClass:"language-json extra-class"},[t("pre",{pre:!0,attrs:{class:"language-json"}},[t("code",[a._v("namespace/external-dns created\nNAME"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" external-dns\nLAST DEPLOYED"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" Fri Dec "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("27")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("53")]),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("29")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("2019")]),a._v("\nNAMESPACE"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" external-dns\nSTATUS"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" deployed\nREVISION"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),t("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),a._v("\nTEST SUITE"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" None\nNOTES"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("\n** Please be patient while the chart is being deployed **\n\nTo verify that external-dns has started"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v(" run"),t("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v("\n\n kubectl --namespace=external-dns get pods -l "),t("span",{pre:!0,attrs:{class:"token string"}},[a._v('"app.kubernetes.io/name=external-dns,app.kubernetes.io/instance=external-dns"')]),a._v("\n")])])]),t("p",[t("img",{attrs:{src:"https://raw.githubusercontent.com/aws-samples/eks-workshop/65b766c494a5b4f5420b2912d8373c4957163541/static/images/crystal.svg?sanitize=true",alt:"Architecture",title:"Architecture"}})]),a._v(" "),t("p",[a._v("You should be able to reach these URLs:")]),a._v(" "),t("ul",[t("li",[a._v("Grafana: "),t("a",{attrs:{href:"https://grafana-istio.mylabs.dev",target:"_blank",rel:"noopener noreferrer"}},[a._v("https://grafana-istio.mylabs.dev"),t("OutboundLink")],1)]),a._v(" "),t("li",[a._v("Jaeger: "),t("a",{attrs:{href:"https://jaeger-istio.mylabs.dev",target:"_blank",rel:"noopener noreferrer"}},[a._v("https://jaeger-istio.mylabs.dev"),t("OutboundLink")],1)]),a._v(" "),t("li",[a._v("Kiali: "),t("a",{attrs:{href:"https://kiali-istio.mylabs.dev",target:"_blank",rel:"noopener noreferrer"}},[a._v("https://kiali-istio.mylabs.dev"),t("OutboundLink")],1)])])])}),[],!1,null,null,null);t.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/25.d82aeefa.js b/assets/js/25.d82aeefa.js new file mode 100644 index 0000000..108f5f9 --- /dev/null +++ b/assets/js/25.d82aeefa.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[25],{304:function(t,a,s){t.exports=s.p+"assets/img/GitLab.dd7e0dbb.png"},324:function(t,a,s){"use strict";s.r(a);var e=s(8),n=Object(e.a)({},(function(){var t=this,a=t._self._c;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"install-gitlab"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#install-gitlab"}},[t._v("#")]),t._v(" Install GitLab")]),t._v(" "),a("p",[t._v("Add GitLab repository:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("helm repo "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("add")]),t._v(" gitlab https://charts.gitlab.io/\nhelm repo update\n")])])]),a("p",[t._v("Create "),a("code",[t._v("gitlab")]),t._v(" namespaces with secrets needed for GitLab\n(certificates and passwords):")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("kubectl create namespace gitlab\nkubectl create secret generic gitlab-initial-root-password --from-literal"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("password"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"admin123"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-n")]),t._v(" gitlab\nkubectl create secret generic custom-ca --from-file"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("unique_name"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("tmp/fakelerootx1.pem "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-n")]),t._v(" gitlab\n")])])]),a("p",[t._v('Create Istio Gateways and VirtualServices to allow accessing GitLab from\n"outside":')]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<<")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("EOF"),a("span",{pre:!0,attrs:{class:"token bash punctuation"}},[t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" kubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-f")]),t._v(" -")]),t._v("\napiVersion: networking.istio.io/v1alpha3\nkind: Gateway\nmetadata:\n name: gitlab-gateway\n namespace: gitlab\nspec:\n selector:\n istio: ingressgateway\n servers:\n - port:\n number: 22\n name: ssh-gitlab\n protocol: TCP\n hosts:\n - gitlab."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n - port:\n number: 80\n name: http-gitlab\n protocol: HTTP\n hosts:\n - gitlab."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n - minio."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n tls:\n httpsRedirect: true\n - port:\n number: 443\n name: https-gitlab\n protocol: HTTPS\n hosts:\n - gitlab."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n - minio."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n tls:\n credentialName: ingress-cert-"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${LETSENCRYPT_ENVIRONMENT}")]),t._v("\n mode: SIMPLE\n privateKey: sds\n serverCertificate: sds\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: gitlab-ssh-virtual-service\n namespace: gitlab\nspec:\n hosts:\n - gitlab."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n gateways:\n - gitlab-gateway\n tcp:\n - match:\n - port: 22\n route:\n - destination:\n host: gitlab-gitlab-shell.gitlab.svc.cluster.local\n port:\n number: 22\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: gitlab-http-virtual-service\n namespace: gitlab\nspec:\n hosts:\n - gitlab."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n gateways:\n - gitlab-gateway\n http:\n - match:\n - uri:\n prefix: /admin/sidekiq\n route:\n - destination:\n host: gitlab-unicorn.gitlab.svc.cluster.local\n port:\n number: 8080\n - route:\n - destination:\n host: gitlab-unicorn.gitlab.svc.cluster.local\n port:\n number: 8181\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: gitlab-minio-virtual-service\n namespace: gitlab\nspec:\n hosts:\n - minio."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n gateways:\n - gitlab-gateway\n http:\n - route:\n - destination:\n host: gitlab-minio-svc.gitlab.svc.cluster.local\n port:\n number: 9000\nEOF")]),t._v("\n")])])]),a("p",[t._v("Install GitLab using Helm:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("helm "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("install")]),t._v(" gitlab gitlab/gitlab "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--namespace")]),t._v(" gitlab "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--wait")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--version")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("2.6")]),t._v(".0 "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("certmanager.install")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("false "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" gitlab-runner.install"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("false "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("gitlab.gitaly.persistence.size")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("1Gi "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("gitlab.unicorn.ingress.enabled")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("false "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.appConfig.cron_jobs.ci_archive_traces_cron_worker.cron")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"17 * * * *"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.appConfig.cron_jobs.expire_build_artifacts_worker.cron")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"50 * * * *"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.appConfig.cron_jobs.pipeline_schedule_worker.cron")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"19 * * * *"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.appConfig.cron_jobs.repository_archive_cache_worker.cron")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"0 * * * *"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.appConfig.cron_jobs.repository_check_worker.cron")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"20 * * * *"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.appConfig.cron_jobs.stuck_ci_jobs_worker.cron")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"0 * * * *"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.appConfig.gravatar.plainUrl")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"https://www.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.appConfig.gravatar.sslUrl")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"https://secure.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" global.certificates.customCAs"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("0")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),t._v(".secret"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("custom-ca "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.edition")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("ce "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.hosts.domain")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.ingress.configureCertmanager")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("false "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.ingress.enabled")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("false "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("global.initialRootPassword.secret")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("gitlab-initial-root-password "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("minio.persistence.size")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("5Gi "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" nginx-ingress.enabled"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("false "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("postgresql.persistence.size")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("1Gi "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("prometheus.install")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("false "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("redis.persistence.size")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("1Gi "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("registry.enabled")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("false\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-text extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("NAME: gitlab\nLAST DEPLOYED: Fri Dec 27 10:57:01 2019\nNAMESPACE: gitlab\nSTATUS: deployed\nREVISION: 1\nNOTES:\nWARNING: Automatic TLS certificate generation with cert-manager is disabled and no TLS certificates were provided. Self-signed certificates were generated.\n\nYou may retrieve the CA root for these certificates from the `gitlab-wildcard-tls-ca` secret, via the following command. It can then be imported to a web browser or system store.\n\n kubectl get secret gitlab-wildcard-tls-ca -ojsonpath='{.data.cfssl_ca}' | base64 --decode > gitlab.mylabs.dev.ca.pem\n\nIf you do not wish to use self-signed certificates, please set the following properties:\n - global.ingress.tls.secretName\n OR\n - gitlab.unicorn.ingress.tls.secretName\n - minio.ingress.tls.secretName\n")])])]),a("p",[t._v("Try to access the GitLab using the URL "),a("a",{attrs:{href:"https://gitlab.mylabs.dev",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://gitlab.mylabs.dev"),a("OutboundLink")],1),t._v("\nwith following credentials:")]),t._v(" "),a("ul",[a("li",[t._v("Username: "),a("code",[t._v("root")])]),t._v(" "),a("li",[t._v("Password: "),a("code",[t._v("admin123")])])]),t._v(" "),a("p",[t._v("Create Personal Access Token "),a("code",[t._v("1234567890")]),t._v(" for user "),a("code",[t._v("root")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("UNICORN_POD")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$(")]),t._v("kubectl get pods "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-n")]),t._v(" gitlab "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-l")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("app"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("unicorn "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-o")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("jsonpath")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"{.items[0].metadata.name}"')]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v(")")])]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("echo")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${UNICORN_POD}")]),t._v("\nkubectl "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("exec")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-n")]),t._v(" gitlab "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-it")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$UNICORN_POD")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-c")]),t._v(" unicorn -- /bin/bash "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-c")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"\ncd /srv/gitlab;\nbin/rails r '),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("\ntoken_digest = Gitlab::CryptoHelper.sha256 "),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("1234567890"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(";\ntoken=PersonalAccessToken.create!(name: "),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("Full Access"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(", scopes: [:api], user: User.where(id: 1).first, token_digest: token_digest);\ntoken.save!\n"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(';\n"')]),t._v("\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-text extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("gitlab-unicorn-566c465dc4-4dwdz\n")])])]),a("p",[t._v("Create new user "),a("code",[t._v("myuser")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("GITLAB_USER_ID")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$(")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-s")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-k")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-X")]),t._v(" POST "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-H")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Content-type: application/json"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-H")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"PRIVATE-TOKEN: 1234567890"')]),t._v(" https://gitlab.$"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("MY_DOMAIN"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("/api/v4/users "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-d")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"{\n '),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("name"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("myuser"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("username"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("myuser"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("password"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("myuser_password"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("email"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("myuser@"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("skip_confirmation"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(': true\n}"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" jq "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('".id"')]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v(")")])]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("echo")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${GITLAB_USER_ID}")]),t._v("\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-text extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("2\n")])])]),a("p",[t._v("Create a personal access token for user "),a("code",[t._v("myuser")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("kubectl "),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("exec")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-n")]),t._v(" gitlab "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-it")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$UNICORN_POD")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-c")]),t._v(" unicorn -- /bin/bash "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-c")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"\ncd /srv/gitlab;\nbin/rails r '),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("\ntoken_digest = Gitlab::CryptoHelper.sha256 "),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("0987654321"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(";\ntoken=PersonalAccessToken.create!(name: "),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("Full Access"),a("span",{pre:!0,attrs:{class:"token entity",title:"\\\\"}},[t._v("\\\\")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(", scopes: [:api], user: User.where(id: "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${GITLAB_USER_ID}")]),t._v(").first, token_digest: token_digest);\ntoken.save!\n"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(';\n"')]),t._v("\n")])])]),a("p",[t._v("Create Impersonation token for "),a("code",[t._v("myuser")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("GILAB_MYUSER_TOKEN")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$(")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-s")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-k")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-X")]),t._v(" POST "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-H")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Content-type: application/json"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-H")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"PRIVATE-TOKEN: 1234567890"')]),t._v(" https://gitlab.$"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("MY_DOMAIN"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("/api/v4/users/$"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("GITLAB_USER_ID"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("/impersonation_tokens "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-d")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"{\n '),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("name"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("mytoken"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("scopes"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": ["),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("api"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(']\n}"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" jq "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-r")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('".token"')]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v(")")])]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("echo")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${GILAB_MYUSER_TOKEN}")]),t._v("\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-text extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("t_dJwRNpVkdsxWzs3Yv3\n")])])]),a("p",[t._v("Create SSH key which will be imported to GitLab:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("ssh-keygen "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-t")]),t._v(" ed25519 "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-f")]),t._v(" tmp/id_rsa_gitlab "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-q")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-N")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('""')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-C")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"my_ssh_key@mylabs.dev"')]),t._v("\n")])])]),a("p",[t._v("Add ssh key to the "),a("code",[t._v("myuser")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-sk")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-X")]),t._v(" POST "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-F")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"private_token='),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${GILAB_MYUSER_TOKEN}")]),t._v('"')]),t._v(" https://gitlab."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("/api/v4/user/keys "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-F")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"title=my_ssh_key"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-F")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"key='),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$(")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" tmp/id_rsa_gitlab.pub"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v(")")])]),t._v('"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" jq\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-json extra-class"},[a("pre",{pre:!0,attrs:{class:"language-json"}},[a("code",[a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[t._v('"id"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[t._v('"title"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"my_ssh_key"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[t._v('"key"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKH2+gqsWrziaAmzGumc/frT0EBMSrXSP0MT/jRcKwtm my_ssh_key@mylabs.dev"')]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token property"}},[t._v('"created_at"')]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"2019-12-27T10:01:45.403Z"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),a("p",[t._v("Create new project:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("PROJECT_ID")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token variable"}},[a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$(")]),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-s")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-k")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-X")]),t._v(" POST "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-H")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"Content-type: application/json"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-H")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"PRIVATE-TOKEN: 1234567890"')]),t._v(" https://gitlab.$"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("MY_DOMAIN"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("/api/v4/projects/user/$"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("GITLAB_USER_ID"),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-d")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"{\n '),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("user_id"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${GITLAB_USER_ID}")]),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("name"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("my-podinfo"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("description"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("My Test Project"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("wiki_access_level"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("disabled"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("issues_access_level"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("disabled"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("builds_access_level"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("disabled"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("snippets_access_level"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("disabled"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("container-registry-enabled"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": false,\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("visibility"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("public"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v('\n}"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" jq "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-r")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('".id"')]),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v(")")])]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("echo")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${PROJECT_ID}")]),t._v("\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-text extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("1\n")])])]),a("p",[t._v("Clone the "),a("a",{attrs:{href:"https://github.com/stefanprodan/podinfo",target:"_blank",rel:"noopener noreferrer"}},[t._v("podinfo"),a("OutboundLink")],1),t._v(" project and push\nit to the newly created git repository "),a("code",[t._v("my-podinfo")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("export")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("GIT_SSH_COMMAND")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"ssh -i '),a("span",{pre:!0,attrs:{class:"token environment constant"}},[t._v("$PWD")]),t._v('/tmp/id_rsa_gitlab -o UserKnownHostsFile=/dev/null"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("git")]),t._v(" clone "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--bare")]),t._v(" https://github.com/stefanprodan/podinfo tmp/podinfo\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("git")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-C")]),t._v(" tmp/podinfo push "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--mirror")]),t._v(" git@gitlab."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v(":myuser/my-podinfo.git\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("rm")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-rf")]),t._v(" tmp/podinfo\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-text extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("loning into bare repository 'tmp/podinfo'...\nremote: Enumerating objects: 10, done.\nremote: Counting objects: 100% (10/10), done.\nremote: Compressing objects: 100% (10/10), done.\nremote: Total 5266 (delta 0), reused 3 (delta 0), pack-reused 5256\nReceiving objects: 100% (5266/5266), 9.52 MiB | 1.28 MiB/s, done.\nResolving deltas: 100% (2342/2342), done.\nWarning: Permanently added 'gitlab.mylabs.dev,18.184.227.16' (ECDSA) to the list of known hosts.\nEnumerating objects: 5266, done.\nCounting objects: 100% (5266/5266), done.\nDelta compression using up to 4 threads\nCompressing objects: 100% (2544/2544), done.\nWriting objects: 100% (5266/5266), 9.52 MiB | 6.95 MiB/s, done.\nTotal 5266 (delta 2342), reused 5266 (delta 2342)\nremote: Resolving deltas: 100% (2342/2342), done.\nremote:\nremote: To create a merge request for gh-pages, visit:\nremote: https://gitlab.mylabs.dev/myuser/my-podinfo/merge_requests/new?merge_request%5Bsource_branch%5D=gh-pages\nremote:\nremote: To create a merge request for v0.x, visit:\nremote: https://gitlab.mylabs.dev/myuser/my-podinfo/merge_requests/new?merge_request%5Bsource_branch%5D=v0.x\nremote:\nremote: To create a merge request for v1.x, visit:\nremote: https://gitlab.mylabs.dev/myuser/my-podinfo/merge_requests/new?merge_request%5Bsource_branch%5D=v1.x\nremote:\nremote: To create a merge request for v3.x, visit:\nremote: https://gitlab.mylabs.dev/myuser/my-podinfo/merge_requests/new?merge_request%5Bsource_branch%5D=v3.x\nremote:\nTo gitlab.mylabs.dev:myuser/my-podinfo.git\n * [new branch] gh-pages -> gh-pages\n * [new branch] master -> master\n * [new branch] v0.x -> v0.x\n * [new branch] v1.x -> v1.x\n * [new branch] v3.x -> v3.x\n * [new tag] 0.2.2 -> 0.2.2\n * [new tag] 2.0.0 -> 2.0.0\n * [new tag] 2.0.1 -> 2.0.1\n * [new tag] 2.0.2 -> 2.0.2\n * [new tag] 2.1.0 -> 2.1.0\n * [new tag] 2.1.1 -> 2.1.1\n * [new tag] 2.1.2 -> 2.1.2\n * [new tag] 2.1.3 -> 2.1.3\n * [new tag] 3.0.0 -> 3.0.0\n * [new tag] 3.1.0 -> 3.1.0\n * [new tag] 3.1.1 -> 3.1.1\n * [new tag] 3.1.2 -> 3.1.2\n * [new tag] 3.1.3 -> 3.1.3\n * [new tag] 3.1.4 -> 3.1.4\n * [new tag] 3.1.5 -> 3.1.5\n * [new tag] flux-floral-pine-16 -> flux-floral-pine-16\n * [new tag] flux-thawing-star-34 -> flux-thawing-star-34\n * [new tag] v0.4.0 -> v0.4.0\n * [new tag] v0.5.0 -> v0.5.0\n * [new tag] v1.0.0 -> v1.0.0\n * [new tag] v1.1.0 -> v1.1.0\n * [new tag] v1.1.1 -> v1.1.1\n * [new tag] v1.2.0 -> v1.2.0\n * [new tag] v1.2.1 -> v1.2.1\n * [new tag] v1.3.0 -> v1.3.0\n * [new tag] v1.3.1 -> v1.3.1\n * [new tag] v1.4.0 -> v1.4.0\n * [new tag] v1.4.1 -> v1.4.1\n * [new tag] v1.4.2 -> v1.4.2\n * [new tag] v1.6.0 -> v1.6.0\n * [new tag] v1.7.0 -> v1.7.0\n * [new tag] v1.8.0 -> v1.8.0\n")])])]),a("p",[t._v("GitLab Screenshot:")]),t._v(" "),a("p",[a("img",{attrs:{src:s(304),alt:"GitLab",title:"GitLab"}})])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/26.bb65b742.js b/assets/js/26.bb65b742.js new file mode 100644 index 0000000..0ad632a --- /dev/null +++ b/assets/js/26.bb65b742.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[26],{305:function(t,a,e){t.exports=e.p+"assets/img/Tekton_Dashboard.258cb264.png"},325:function(t,a,e){"use strict";e.r(a);var s=e(8),n=Object(s.a)({},(function(){var t=this,a=t._self._c;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"install-knative"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#install-knative"}},[t._v("#")]),t._v(" Install Knative")]),t._v(" "),a("p",[t._v("Set Knative version variable:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token builtin class-name"}},[t._v("export")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("KNATIVE_VERSION")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"v0.11.0"')]),t._v("\n")])])]),a("p",[t._v("Install Knative:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("kubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--selector")]),t._v(" knative.dev/crd-install"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("true "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/knative/serving/releases/download/"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${KNATIVE_VERSION}")]),t._v("/serving.yaml "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/knative/eventing/releases/download/"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${KNATIVE_VERSION}")]),t._v("/release.yaml "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/knative/serving/releases/download/"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${KNATIVE_VERSION}")]),t._v("/monitoring.yaml\nkubectl apply "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/knative/serving/releases/download/"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${KNATIVE_VERSION}")]),t._v("/serving.yaml "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/knative/eventing/releases/download/"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${KNATIVE_VERSION}")]),t._v("/release.yaml "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/knative/serving/releases/download/"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${KNATIVE_VERSION}")]),t._v("/monitoring.yaml\n"),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("sleep")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token number"}},[t._v("60")]),t._v("\n")])])]),a("p",[t._v("Install Tekton with Dashboard (do not increase Tekton version above 0.8.0):")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("kubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/tektoncd/pipeline/releases/download/v0.8.0/release.yaml\nkubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/tektoncd/dashboard/releases/download/v0.3.0/dashboard-latest-release.yaml\n")])])]),a("p",[t._v("Install Tekton Triggers:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("kubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/tektoncd/triggers/releases/download/v0.1.0/release.yaml\n")])])]),a("p",[t._v("Export Knative services ("),a("a",{attrs:{href:"https://prometheus.io/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Prometheus"),a("OutboundLink")],1),t._v(" and\n"),a("a",{attrs:{href:"https://grafana.com/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Grafana"),a("OutboundLink")],1),t._v(") to be visible externally:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<<")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("EOF"),a("span",{pre:!0,attrs:{class:"token bash punctuation"}},[t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" kubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-f")]),t._v(" -")]),t._v("\napiVersion: networking.istio.io/v1alpha3\nkind: Gateway\nmetadata:\n name: knative-services-gateway\n namespace: knative-monitoring\nspec:\n selector:\n istio: ingressgateway\n servers:\n - port:\n number: 80\n name: http-knative-services\n protocol: HTTP\n hosts:\n - knative-grafana."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n - knative-prometheus."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n - knative-tekton."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n - port:\n number: 443\n name: https-knative-services\n protocol: HTTPS\n hosts:\n - knative-grafana."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n - knative-prometheus."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n - knative-tekton."),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v("\n tls:\n credentialName: ingress-cert-"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${LETSENCRYPT_ENVIRONMENT}")]),t._v('\n mode: SIMPLE\n privateKey: sds\n serverCertificate: sds\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: grafana-virtual-service\n namespace: knative-monitoring\nspec:\n hosts:\n - "knative-grafana.'),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v('"\n gateways:\n - knative-services-gateway\n http:\n - route:\n - destination:\n host: grafana.knative-monitoring.svc.cluster.local\n port:\n number: 30802\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: prometheus-virtual-service\n namespace: knative-monitoring\nspec:\n hosts:\n - "knative-prometheus.'),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v('"\n gateways:\n - knative-services-gateway\n http:\n - route:\n - destination:\n host: prometheus-system-np.knative-monitoring.svc.cluster.local\n port:\n number: 8080\n---\napiVersion: networking.istio.io/v1alpha3\nkind: VirtualService\nmetadata:\n name: tekton-virtual-service\n namespace: knative-monitoring\nspec:\n hosts:\n - "knative-tekton.'),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v('"\n gateways:\n - knative-services-gateway\n http:\n - route:\n - destination:\n host: tekton-dashboard.tekton-pipelines.svc.cluster.local\n port:\n number: 9097\nEOF')]),t._v("\n")])])]),a("p",[t._v("Tekton Dashboard:")]),t._v(" "),a("p",[a("img",{attrs:{src:e(305),alt:"Tekton Dashboard",title:"Tekton Dashboard"}})]),t._v(" "),a("p",[t._v("Set up a custom domain for Knative:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<<")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("EOF"),a("span",{pre:!0,attrs:{class:"token bash punctuation"}},[t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" kubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-f")]),t._v(" -")]),t._v("\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: config-domain\n namespace: knative-serving\ndata:\n "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${MY_DOMAIN}")]),t._v(': ""\nEOF')]),t._v("\n")])])]),a("p",[t._v("Changing the controller deployment is needed if you are not using the valid\ncertificates (self-signed):")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("if")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("[")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${LETSENCRYPT_ENVIRONMENT}")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"staging"')]),t._v(" "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("]")]),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(";")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("then")]),t._v("\n kubectl "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--namespace")]),t._v(" knative-serving create secret generic customca --from-file"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("customca.crt"),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("tmp/fakelerootx1.pem\n kubectl patch deployment controller "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--namespace")]),t._v(" knative-serving "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--patch")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v('"\n {\n '),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("spec"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": {\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("template"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": {\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("spec"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": {\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("containers"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": [{\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("env"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": [{\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("name"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("SSL_CERT_DIR"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("value"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("/etc/customca"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("\n }],\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("name"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("controller"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("volumeMounts"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": [{\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("mountPath"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("/etc/customca"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("name"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("customca"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("\n }]\n }],\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("volumes"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": [{\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("name"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("customca"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(",\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("secret"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": {\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("defaultMode"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": 420,\n "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("secretName"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v(": "),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v("customca"),a("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[t._v('\\"')]),t._v('\n }\n }]\n }\n }\n }\n }"')]),t._v("\n"),a("span",{pre:!0,attrs:{class:"token keyword"}},[t._v("fi")]),t._v("\n")])])]),a("h2",{attrs:{id:"enable-automatic-tls-certificate-provisioning-for-knative"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#enable-automatic-tls-certificate-provisioning-for-knative"}},[t._v("#")]),t._v(" Enable automatic TLS certificate provisioning for Knative")]),t._v(" "),a("p",[t._v("Install "),a("code",[t._v("networking-certmanager")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("kubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--filename")]),t._v(" https://github.com/knative/serving/releases/download/"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${KNATIVE_VERSION}")]),t._v("/serving-cert-manager.yaml\n")])])]),a("p",[t._v("Update your "),a("code",[t._v("config-certmanager")]),t._v(" ConfigMap in the "),a("code",[t._v("knative-serving")]),t._v(" namespace to\ndefine your new ClusterIssuer configuration and your your DNS provider:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<<")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("EOF"),a("span",{pre:!0,attrs:{class:"token bash punctuation"}},[t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" kubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-f")]),t._v(" -")]),t._v("\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: config-certmanager\n namespace: knative-serving\n labels:\n networking.knative.dev/certificate-provider: cert-manager\ndata:\n issuerRef: |\n kind: ClusterIssuer\n name: letsencrypt-"),a("span",{pre:!0,attrs:{class:"token variable"}},[t._v("${LETSENCRYPT_ENVIRONMENT}")]),t._v("-dns\n solverConfig: |\n dns01:\n provider: aws-route53\nEOF")]),t._v("\n")])])]),a("p",[t._v("Update the "),a("code",[t._v("config-network")]),t._v(" ConfigMap in the "),a("code",[t._v("knative-serving")]),t._v(" namespace to enable\n"),a("code",[t._v("autoTLS")]),t._v(":")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("cat")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("<<")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token string"}},[t._v("EOF"),a("span",{pre:!0,attrs:{class:"token bash punctuation"}},[t._v(" "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" kubectl apply "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-f")]),t._v(" -")]),t._v("\napiVersion: v1\nkind: ConfigMap\nmetadata:\n name: config-network\n namespace: knative-serving\ndata:\n autoTLS: Enabled\n httpProtocol: Enabled\nEOF")]),t._v("\n")])])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/27.2df1edf6.js b/assets/js/27.2df1edf6.js new file mode 100644 index 0000000..a4f32c9 --- /dev/null +++ b/assets/js/27.2df1edf6.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[27],{308:function(a,e,s){a.exports=s.p+"assets/img/podinfo.d8c508a4.png"},327:function(a,e,s){"use strict";s.r(e);var t=s(8),n=Object(t.a)({},(function(){var a=this,e=a._self._c;return e("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[e("h1",{attrs:{id:"build-and-run-container-image-using-knative-tekton"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#build-and-run-container-image-using-knative-tekton"}},[a._v("#")]),a._v(" Build and run container image using Knative + Tekton")]),a._v(" "),e("p",[a._v("Set the necessary variables:")]),a._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GIT_REPOSITORY")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"git@gitlab.'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(':myuser/my-podinfo.git"')]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GIT_REVISION")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"3.1.0"')]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GIT_REPO_SSH_KEY")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"tmp/id_rsa_gitlab"')]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("CONTAINER_REGISTRY")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"harbor.'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('/library/my-podinfo"')]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("CONTAINER_REGISTRY_USERNAME")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"robot\\'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$myrobot")]),a._v('"')]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("CONTAINER_REGISTRY_PASSWORD")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${HARBOR_ROBOT_TOKEN}")]),a._v('"')]),a._v("\n\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GIT_PROJECT_NAME")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" $"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("GIT_REPOSITORY"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token function"}},[a._v("sed")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"s@.*/\\(.*\\).git@'),e("span",{pre:!0,attrs:{class:"token entity",title:"\\1"}},[a._v("\\1")]),a._v('@; s/\\./\\-/"')]),a._v(" "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("CONTAINER_REGISTRY_SERVER")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" $CONTAINER_REGISTRY "),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token function"}},[a._v("awk")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-F")]),a._v(" / "),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"{ print \\'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$1")]),a._v(' }"')]),a._v(" "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("CONTAINER_REGISTRY_SERVER_MODIFIED")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" $CONTAINER_REGISTRY "),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token function"}},[a._v("awk")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-F")]),a._v(" / "),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"{ gsub(/\\./,'),e("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("-"),e("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("); print \\"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$1")]),a._v(' }"')]),a._v(" "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GIT_SSH_SERVER")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" $GIT_REPOSITORY "),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token function"}},[a._v("awk")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-F")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[@:]"')]),a._v(" "),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"{ print \\'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$2")]),a._v('}"')]),a._v(" "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("GIT_SSH_SERVER_MODIFIED")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" $GIT_REPOSITORY "),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token function"}},[a._v("awk")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-F")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"[@:]"')]),a._v(" "),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"{ gsub(/\\./,'),e("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("-"),e("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("); print \\"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$2")]),a._v(' }"')]),a._v(" "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n")])])]),e("p",[a._v("Create secret for Harbor registry to let Tekton pipeline to upload the container\nimage:")]),a._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[a._v("kubectl create secret docker-registry "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${CONTAINER_REGISTRY_SERVER_MODIFIED}")]),a._v("-docker-config "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --docker-server"),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${CONTAINER_REGISTRY_SERVER}")]),a._v('"')]),a._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --docker-username"),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${CONTAINER_REGISTRY_USERNAME}")]),a._v('"')]),a._v(" "),e("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --docker-password"),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${CONTAINER_REGISTRY_PASSWORD}")]),a._v('"')]),a._v("\n")])])]),e("p",[a._v("Create secret for AWS user to allow Tekton pipeline to push binary to S3:")]),a._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[a._v("kubectl create secret generic user-aws-access-keys --from-literal"),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("access_key"),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$USER_AWS_ACCESS_KEY_ID")]),a._v(" --from-literal"),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("secret_key"),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$USER_AWS_SECRET_ACCESS_KEY")]),a._v("\n")])])]),e("p",[a._v("Create + start Tekton pipeline (and it's components) to build the container\nimage:")]),a._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[e("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("<<")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token string"}},[a._v("EOF"),e("span",{pre:!0,attrs:{class:"token bash punctuation"}},[a._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" kubectl apply "),e("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-f")]),a._v(" -")]),a._v("\napiVersion: v1\nkind: Secret\ntype: kubernetes.io/ssh-auth\nmetadata:\n name: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_SSH_SERVER_MODIFIED}")]),a._v("-ssh-key\n annotations:\n tekton.dev/git-0: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_SSH_SERVER}")]),a._v("\ndata:\n ssh-privatekey: "),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("base64 "),e("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-w")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),a._v(" $"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("GIT_REPO_SSH_KEY"),e("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n---\napiVersion: v1\nkind: ServiceAccount\nmetadata:\n name: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_SSH_SERVER_MODIFIED}")]),a._v("-build-bot\nsecrets:\n - name: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_SSH_SERVER_MODIFIED}")]),a._v("-ssh-key\n---\napiVersion: tekton.dev/v1alpha1\nkind: PipelineResource\nmetadata:\n name: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_PROJECT_NAME}")]),a._v("-project-git\n namespace: default\nspec:\n type: git\n params:\n - name: url\n value: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_REPOSITORY}")]),a._v("\n - name: revision\n value: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_REVISION}")]),a._v("\n---\napiVersion: tekton.dev/v1alpha1\nkind: PipelineResource\nmetadata:\n name: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_PROJECT_NAME}")]),a._v("-project-image\nspec:\n type: image\n params:\n - name: url\n value: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${CONTAINER_REGISTRY}")]),a._v(":"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_REVISION}")]),a._v("\n---\napiVersion: tekton.dev/v1alpha1\nkind: Task\nmetadata:\n name: build-docker-image-from-git-task\nspec:\n inputs:\n resources:\n - name: docker-source\n type: git\n params:\n - name: pathToDockerFile\n description: The path to the dockerfile to build\n default: /workspace/docker-source/Dockerfile\n - name: pathToContext\n description:\n The build context used by Kaniko\n (https://github.com/GoogleContainerTools/kaniko#kaniko-build-contexts)\n default: /workspace/docker-source\n outputs:\n resources:\n - name: builtImage\n type: image\n volumes:\n - name: docker-config\n secret:\n secretName: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${CONTAINER_REGISTRY_SERVER_MODIFIED}")]),a._v("-docker-config\n items:\n - key: .dockerconfigjson\n path: config.json\n - name: shared-storage\n emptyDir: {}\n steps:\n - name: build-and-tar\n image: gcr.io/kaniko-project/executor\n command:\n - /kaniko/executor\n args:\n - --dockerfile=\\"),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("inputs.params.pathToDockerFile"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n - --destination=\\"),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("outputs.resources.builtImage.url"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n - --context=\\"),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("inputs.params.pathToContext"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n - --single-snapshot\n - --tarPath=/shared-storage/"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),e("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v('-app-build.tar\n - --no-push\n volumeMounts:\n - name: docker-config\n mountPath: /builder/home/.docker/\n - name: shared-storage\n mountPath: /shared-storage\n - name: upload-container-content-s3\n image: atlassian/pipelines-awscli\n command: ["sh", "-x", "-c", "ls -la /shared-storage/ ; aws s3 cp /shared-storage/'),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),e("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-app-build.tar s3://"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),e("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v('-kops-k8s/"]\n env:\n - name: AWS_DEFAULT_REGION\n value: "eu-central-1"\n - name: AWS_ACCESS_KEY_ID\n valueFrom:\n secretKeyRef:\n name: user-aws-access-keys\n key: access_key\n - name: AWS_SECRET_ACCESS_KEY\n valueFrom:\n secretKeyRef:\n name: user-aws-access-keys\n key: secret_key\n volumeMounts:\n - name: shared-storage\n mountPath: /shared-storage\n - name: build-and-push\n image: gcr.io/kaniko-project/executor\n env:\n - name: "DOCKER_CONFIG"\n value: "/builder/home/.docker/"\n command:\n - /kaniko/executor\n args:\n - --dockerfile=\\'),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("inputs.params.pathToDockerFile"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n - --destination=\\"),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("outputs.resources.builtImage.url"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n - --context=\\"),e("span",{pre:!0,attrs:{class:"token variable"}},[e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("inputs.params.pathToContext"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n - --single-snapshot\n - --skip-tls-verify\n volumeMounts:\n - name: docker-config\n mountPath: /builder/home/.docker/\n---\napiVersion: tekton.dev/v1alpha1\nkind: Pipeline\nmetadata:\n name: build-docker-image-from-git-pipeline\nspec:\n resources:\n - name: docker-source\n type: git\n - name: builtImage\n type: image\n tasks:\n - name: build-docker-image-from-git-task-run\n taskRef:\n name: build-docker-image-from-git-task\n params:\n - name: pathToDockerFile\n value: Dockerfile\n - name: pathToContext\n value: /workspace/docker-source/\n resources:\n inputs:\n - name: docker-source\n resource: docker-source\n outputs:\n - name: builtImage\n resource: builtImage\n---\napiVersion: tekton.dev/v1alpha1\nkind: PipelineRun\nmetadata:\n name: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_PROJECT_NAME}")]),a._v("-build-docker-image-from-git-pipelinerun\nspec:\n serviceAccount: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_SSH_SERVER_MODIFIED}")]),a._v("-build-bot\n pipelineRef:\n name: build-docker-image-from-git-pipeline\n resources:\n - name: docker-source\n resourceRef:\n name: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_PROJECT_NAME}")]),a._v("-project-git\n - name: builtImage\n resourceRef:\n name: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_PROJECT_NAME}")]),a._v("-project-image\nEOF")]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[a._v("5")]),a._v("\n")])])]),e("p",[a._v("Wait for container build process will complete:")]),a._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[a._v("kubectl "),e("span",{pre:!0,attrs:{class:"token function"}},[a._v("wait")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--timeout")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("10m "),e("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--for")]),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("condition"),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("Succeeded pipelineruns/"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_PROJECT_NAME}")]),a._v("-build-docker-image-from-git-pipelinerun\n")])])]),e("p",[a._v("Output:")]),a._v(" "),e("div",{staticClass:"language-text extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[a._v("pipelinerun.tekton.dev/my-podinfo-build-docker-image-from-git-pipelinerun condition met\n")])])]),e("p",[a._v("Start the application:")]),a._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[e("span",{pre:!0,attrs:{class:"token function"}},[a._v("cat")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("<<")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token string"}},[a._v("EOF"),e("span",{pre:!0,attrs:{class:"token bash punctuation"}},[a._v(" "),e("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" kubectl apply "),e("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-f")]),a._v(" -")]),a._v("\napiVersion: serving.knative.dev/v1alpha1\nkind: Service\nmetadata:\n name: my-podinfo\n namespace: default\nspec:\n template:\n spec:\n containers:\n - image: "),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${CONTAINER_REGISTRY}")]),a._v(":"),e("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${GIT_REVISION}")]),a._v("\n ports:\n - name: http1\n containerPort: 9898\nEOF")]),a._v("\n"),e("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),e("span",{pre:!0,attrs:{class:"token number"}},[a._v("20")]),a._v("\n")])])]),e("p",[a._v("Check the status of the application:")]),a._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[a._v("kubectl get pod,ksvc,configuration,revision,route,deployment\n")])])]),e("p",[a._v("Output:")]),a._v(" "),e("div",{staticClass:"language-text extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[a._v("NAME READY STATUS RESTARTS AGE\npod/my-podinfo-build-docker-image-from-git-pipelinerun-build--msbcv-pod-d6861e 0/6 Completed 0 7m56s\npod/my-podinfo-vpw78-deployment-bbb89db58-vmnhb 2/2 Running 0 21s\n\nNAME URL LATESTCREATED LATESTREADY READY REASON\nservice.serving.knative.dev/my-podinfo http://my-podinfo.default.mylabs.dev my-podinfo-vpw78 my-podinfo-vpw78 True\n\nNAME LATESTCREATED LATESTREADY READY REASON\nconfiguration.serving.knative.dev/my-podinfo my-podinfo-vpw78 my-podinfo-vpw78 True\n\nNAME CONFIG NAME K8S SERVICE NAME GENERATION READY REASON\nrevision.serving.knative.dev/my-podinfo-vpw78 my-podinfo my-podinfo-vpw78 1 True\n\nNAME URL READY REASON\nroute.serving.knative.dev/my-podinfo http://my-podinfo.default.mylabs.dev True\n\nNAME READY UP-TO-DATE AVAILABLE AGE\ndeployment.extensions/my-podinfo-vpw78-deployment 1/1 1 1 21s\n")])])]),e("p",[a._v("Open "),e("a",{attrs:{href:"https://my-podinfo.default.mylabs.dev",target:"_blank",rel:"noopener noreferrer"}},[a._v("https://my-podinfo.default.mylabs.dev"),e("OutboundLink")],1),a._v("\nto see the application:")]),a._v(" "),e("p",[a._v("When you close the web browser - after some time without handling traffic\nthe number of running pods should drop to zero:")]),a._v(" "),e("div",{staticClass:"language-bash extra-class"},[e("pre",{pre:!0,attrs:{class:"language-bash"}},[e("code",[a._v("kubectl get deployments,pods\n")])])]),e("p",[a._v("Output:")]),a._v(" "),e("div",{staticClass:"language-text extra-class"},[e("pre",{pre:!0,attrs:{class:"language-text"}},[e("code",[a._v("NAME READY UP-TO-DATE AVAILABLE AGE\ndeployment.extensions/my-podinfo-vpw78-deployment 1/1 1 1 22s\n\nNAME READY STATUS RESTARTS AGE\npod/my-podinfo-build-docker-image-from-git-pipelinerun-build--msbcv-pod-d6861e 0/6 Completed 0 7m57s\npod/my-podinfo-vpw78-deployment-bbb89db58-vmnhb 2/2 Running 0 22s\n")])])]),e("p",[a._v("If you open the URL again the pod should be started again and application will\nhandle the traffic - this takes about 3 seconds.")]),a._v(" "),e("p",[a._v("You can try to open the web browser with the URL "),e("a",{attrs:{href:"https://my-podinfo.default.mylabs.dev",target:"_blank",rel:"noopener noreferrer"}},[a._v("https://my-podinfo.default.mylabs.dev"),e("OutboundLink")],1),a._v("\nagain and test it.")]),a._v(" "),e("p",[e("img",{attrs:{src:s(308),alt:"podinfo",title:"podinfo"}})])])}),[],!1,null,null,null);e.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/28.8647f919.js b/assets/js/28.8647f919.js new file mode 100644 index 0000000..6947cf8 --- /dev/null +++ b/assets/js/28.8647f919.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[28],{309:function(t,s,a){t.exports=a.p+"assets/img/podinfo_http_https.799760ac.png"},328:function(t,s,a){"use strict";a.r(s);var e=a(8),n=Object(e.a)({},(function(){var t=this,s=t._self._c;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"knative-operations"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#knative-operations"}},[t._v("#")]),t._v(" Knative operations")]),t._v(" "),s("p",[t._v("Create service "),s("code",[t._v("my-podinfo-2")]),t._v(" with image:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("kn "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("service")]),t._v(" create my-podinfo-2 "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--port")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("9898")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--image")]),t._v(" harbor.mylabs.dev/library/my-podinfo:3.1.0\n"),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("sleep")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("30")]),t._v("\n")])])]),s("p",[t._v("Output:")]),t._v(" "),s("div",{staticClass:"language-text extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("Creating service 'my-podinfo-2' in namespace 'default':\n\n 0.205s The Route is still working to reflect the latest desired specification.\n 0.230s Configuration \"my-podinfo-2\" is waiting for a Revision to become ready.\n 7.132s ...\n 7.417s Ingress has not yet been reconciled.\n 9.415s Ready to serve.\n\nService 'my-podinfo-2' created with latest revision 'my-podinfo-2-fzhhd-1' and URL:\nhttp://my-podinfo-2.default.mylabs.dev\n")])])]),s("p",[t._v("Check if the application is really working:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-k")]),t._v(" http://my-podinfo-2.default.mylabs.dev https://my-podinfo-2.default.mylabs.dev\n")])])]),s("p",[t._v("Output:")]),t._v(" "),s("div",{staticClass:"language-json extra-class"},[s("pre",{pre:!0,attrs:{class:"language-json"}},[s("code",[s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"hostname"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"my-podinfo-2-fzhhd-1-deployment-566757c497-xvc2m"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"version"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"3.1.0"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"revision"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"5fb970b526dd40f9a94085fd237f0a2c3bd65520"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"color"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"blue"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"message"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"greetings from podinfo v3.1.0"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"goos"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"linux"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"goarch"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"amd64"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"runtime"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"go1.12.14"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"num_goroutine"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"6"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"num_cpu"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"2"')]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("{")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"hostname"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"my-podinfo-2-fzhhd-1-deployment-566757c497-xvc2m"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"version"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"3.1.0"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"revision"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"5fb970b526dd40f9a94085fd237f0a2c3bd65520"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"color"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"blue"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"message"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"greetings from podinfo v3.1.0"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"goos"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"linux"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"goarch"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"amd64"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"runtime"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"go1.12.14"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"num_goroutine"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"6"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v(",")]),t._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[t._v('"num_cpu"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v(":")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v('"2"')]),t._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("}")]),t._v("\n")])])]),s("p",[t._v("Set hard limit of concurrent requests to be processed by a single replica:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("kn "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("service")]),t._v(" update my-podinfo-2 --concurrency-limit"),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("1")]),t._v("\n")])])]),s("p",[t._v("Output:")]),t._v(" "),s("div",{staticClass:"language-text extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("Updating Service 'my-podinfo-2' in namespace 'default':\n\n 3.050s Traffic is not yet migrated to the latest revision.\n 3.104s Ingress has not yet been reconciled.\n 4.689s Ready to serve.\n\nService 'my-podinfo-2' updated with latest revision 'my-podinfo-2-hfqhc-2' and URL:\nhttp://my-podinfo-2.default.mylabs.dev\n")])])]),s("p",[t._v("Check the pods:")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("kubectl get pods\n")])])]),s("p",[t._v("Output:")]),t._v(" "),s("div",{staticClass:"language-text extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("NAME READY STATUS RESTARTS AGE\nmy-podinfo-2-fzhhd-1-deployment-566757c497-xvc2m 2/2 Running 0 48s\nmy-podinfo-2-hfqhc-2-deployment-864c8985c-jz59h 2/2 Running 0 5s\nmy-podinfo-build-docker-image-from-git-pipelinerun-build--msbcv-pod-d6861e 0/6 Completed 0 22m\n")])])]),s("p",[s("img",{attrs:{src:a(309),alt:"podinfo - http/https",title:"podinfo - http/https"}})])])}),[],!1,null,null,null);s.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/29.36e9fab6.js b/assets/js/29.36e9fab6.js new file mode 100644 index 0000000..4a2fcb7 --- /dev/null +++ b/assets/js/29.36e9fab6.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[29],{319:function(t,r,a){"use strict";a.r(r);var e=a(8),n=Object(e.a)({},(function(){var t=this,r=t._self._c;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"kubernetes-knative-gitlab-harbor"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#kubernetes-knative-gitlab-harbor"}},[t._v("#")]),t._v(" Kubernetes + Knative + GitLab + Harbor")]),t._v(" "),r("p",[r("a",{attrs:{href:"https://github.com/ruzickap/k8s-knative-gitlab-harbor",target:"_blank",rel:"noopener noreferrer"}},[r("img",{attrs:{src:"https://github.com/ruzickap/k8s-knative-gitlab-harbor/workflows/vuepress-build/badge.svg",alt:"Build Status"}}),r("OutboundLink")],1)]),t._v(" "),r("ul",[r("li",[t._v("Demo GitHub repository: "),r("a",{attrs:{href:"https://github.com/ruzickap/k8s-knative-gitlab-harbor",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://github.com/ruzickap/k8s-knative-gitlab-harbor"),r("OutboundLink")],1)]),t._v(" "),r("li",[t._v("Demo Web Pages: "),r("a",{attrs:{href:"https://ruzickap.github.io/k8s-knative-gitlab-harbor",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://ruzickap.github.io/k8s-knative-gitlab-harbor"),r("OutboundLink")],1)]),t._v(" "),r("li",[t._v("Asciinema: "),r("a",{attrs:{href:"https://asciinema.org/a/290547",target:"_blank",rel:"noopener noreferrer"}},[t._v("https://asciinema.org/a/290547"),r("OutboundLink")],1)])]),t._v(" "),r("h2",{attrs:{id:"requirements"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#requirements"}},[t._v("#")]),t._v(" Requirements")]),t._v(" "),r("ul",[r("li",[r("a",{attrs:{href:"https://aws.amazon.com/cli/",target:"_blank",rel:"noopener noreferrer"}},[t._v("awscli"),r("OutboundLink")],1)]),t._v(" "),r("li",[r("a",{attrs:{href:"https://github.com/kubernetes-sigs/aws-iam-authenticator",target:"_blank",rel:"noopener noreferrer"}},[t._v("AWS IAM Authenticator for Kubernetes"),r("OutboundLink")],1)]),t._v(" "),r("li",[r("a",{attrs:{href:"https://aws.amazon.com/account/",target:"_blank",rel:"noopener noreferrer"}},[t._v("AWS account"),r("OutboundLink")],1)]),t._v(" "),r("li",[r("a",{attrs:{href:"https://kubernetes.io/docs/tasks/tools/install-kubectl/",target:"_blank",rel:"noopener noreferrer"}},[t._v("kubectl"),r("OutboundLink")],1)]),t._v(" "),r("li",[r("a",{attrs:{href:"https://github.com/kubernetes/kops",target:"_blank",rel:"noopener noreferrer"}},[t._v("kops"),r("OutboundLink")],1)]),t._v(" "),r("li",[t._v("Kubernetes, Docker, Linux, AWS knowledge required")])]),t._v(" "),r("h2",{attrs:{id:"content"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#content"}},[t._v("#")]),t._v(" Content")]),t._v(" "),r("ul",[r("li",[r("RouterLink",{attrs:{to:"/part-01/"}},[t._v('Part 01 - Create "kops" cluster')])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/part-02/"}},[t._v("Part 02 - Install Helm")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/part-03/"}},[t._v("Part 03 - Istio + cert-manager + kubed installation")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/part-04/"}},[t._v("Part 04 - Harbor installation")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/part-05/"}},[t._v("Part 05 - GitLab installation")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/part-06/"}},[t._v("Part 06 - Knative installation")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/part-07/"}},[t._v("Part 07 - Build and run container image using Knative + Tekton")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/part-08/"}},[t._v("Part 08 - Automated deployment with Tekton")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/part-09/"}},[t._v("Part 09 - Knative operations")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/part-10/"}},[t._v("Part 10 - Clean-up")])],1)]),t._v(" "),r("h2",{attrs:{id:"asciinema"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#asciinema"}},[t._v("#")]),t._v(" Asciinema")]),t._v(" "),r("p",[r("a",{attrs:{href:"https://asciinema.org/a/290547",target:"_blank",rel:"noopener noreferrer"}},[r("img",{attrs:{src:"https://asciinema.org/a/290547.svg",alt:"asciicast"}}),r("OutboundLink")],1)])])}),[],!1,null,null,null);r.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/3.6b4152e0.js b/assets/js/3.6b4152e0.js new file mode 100644 index 0000000..65c4181 --- /dev/null +++ b/assets/js/3.6b4152e0.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[3,18,19],{246:function(t,e,n){"use strict";n.d(e,"d",(function(){return r})),n.d(e,"a",(function(){return s})),n.d(e,"i",(function(){return a})),n.d(e,"f",(function(){return l})),n.d(e,"g",(function(){return u})),n.d(e,"h",(function(){return c})),n.d(e,"b",(function(){return p})),n.d(e,"e",(function(){return d})),n.d(e,"k",(function(){return h})),n.d(e,"l",(function(){return f})),n.d(e,"c",(function(){return g})),n.d(e,"j",(function(){return m}));n(92);const r=/#.*$/,i=/\.(md|html)$/,s=/\/$/,a=/^[a-z]+:/i;function o(t){return decodeURI(t).replace(r,"").replace(i,"")}function l(t){return a.test(t)}function u(t){return/^mailto:/.test(t)}function c(t){return/^tel:/.test(t)}function p(t){if(l(t))return t;const e=t.match(r),n=e?e[0]:"",i=o(t);return s.test(i)?t:i+".html"+n}function d(t,e){const n=decodeURIComponent(t.hash),i=function(t){const e=t.match(r);if(e)return e[0]}(e);if(i&&n!==i)return!1;return o(t.path)===o(e)}function h(t,e,n){if(l(e))return{type:"external",path:e};n&&(e=function(t,e,n){const r=t.charAt(0);if("/"===r)return t;if("?"===r||"#"===r)return e+t;const i=e.split("/");n&&i[i.length-1]||i.pop();const s=t.replace(/^\//,"").split("/");for(let t=0;tfunction t(e,n,r,i=1){if("string"==typeof e)return h(n,e,r);if(Array.isArray(e))return Object.assign(h(n,e[0],r),{title:e[1]});{const s=e.children||[];return 0===s.length&&e.path?Object.assign(h(n,e.path,r),{title:e.title}):{type:"group",path:e.path,title:e.title,sidebarDepth:e.sidebarDepth,initialOpenGroupIndex:e.initialOpenGroupIndex,children:s.map(e=>t(e,n,r,i+1)),collapsable:!1!==e.collapsable}}}(t,i,n)):[]}return[]}function b(t){const e=g(t.headers||[]);return[{type:"group",collapsable:!1,title:t.title,path:null,children:e.map(e=>({type:"auto",title:e.title,basePath:t.path,path:t.path+"#"+e.slug,children:e.children||[]}))}]}function g(t){let e;return(t=t.map(t=>Object.assign({},t))).forEach(t=>{2===t.level?e=t:e&&(e.children||(e.children=[])).push(t)}),t.filter(t=>2===t.level)}function m(t){return Object.assign(t,{type:t.items&&t.items.length?"links":"link"})}},247:function(t,e,n){},249:function(t,e,n){"use strict";n.r(e);var r={name:"DropdownTransition",methods:{setHeight(t){t.style.height=t.scrollHeight+"px"},unsetHeight(t){t.style.height=""}}},i=(n(250),n(8)),s=Object(i.a)(r,(function(){return(0,this._self._c)("transition",{attrs:{name:"dropdown"},on:{enter:this.setHeight,"after-enter":this.unsetHeight,"before-leave":this.setHeight}},[this._t("default")],2)}),[],!1,null,null,null);e.default=s.exports},250:function(t,e,n){"use strict";n(247)},252:function(t,e,n){},257:function(t,e,n){},259:function(t,e,n){"use strict";n(252)},260:function(t,e,n){"use strict";n.r(e);var r=n(273),i=n(262),s=n(246);function a(t,e){if("group"===e.type){const n=e.path&&Object(s.e)(t,e.path),r=e.children.some(e=>"group"===e.type?a(t,e):"page"===e.type&&Object(s.e)(t,e.path));return n||r}return!1}var o={name:"SidebarLinks",components:{SidebarGroup:r.default,SidebarLink:i.default},props:["items","depth","sidebarDepth","initialOpenGroupIndex"],data(){return{openGroupIndex:this.initialOpenGroupIndex||0}},watch:{$route(){this.refreshIndex()}},created(){this.refreshIndex()},methods:{refreshIndex(){const t=function(t,e){for(let n=0;n-1&&(this.openGroupIndex=t)},toggleGroup(t){this.openGroupIndex=t===this.openGroupIndex?-1:t},isActive(t){return Object(s.e)(this.$route,t.regularPath)}}},l=n(8),u=Object(l.a)(o,(function(){var t=this,e=t._self._c;return t.items.length?e("ul",{staticClass:"sidebar-links"},t._l(t.items,(function(n,r){return e("li",{key:r},["group"===n.type?e("SidebarGroup",{attrs:{item:n,open:r===t.openGroupIndex,collapsable:n.collapsable||n.collapsible,depth:t.depth},on:{toggle:function(e){return t.toggleGroup(r)}}}):e("SidebarLink",{attrs:{"sidebar-depth":t.sidebarDepth,item:n}})],1)})),0):t._e()}),[],!1,null,null,null);e.default=u.exports},262:function(t,e,n){"use strict";n.r(e);var r=n(246);function i(t,e,n,r,i){const s={props:{to:e,activeClass:"",exactActiveClass:""},class:{active:r,"sidebar-link":!0}};return i>2&&(s.style={"padding-left":i+"rem"}),t("RouterLink",s,n)}function s(t,e,n,a,o,l=1){return!e||l>o?null:t("ul",{class:"sidebar-sub-headers"},e.map(e=>{const u=Object(r.e)(a,n+"#"+e.slug);return t("li",{class:"sidebar-sub-header"},[i(t,n+"#"+e.slug,e.title,u,e.level-1),s(t,e.children,n,a,o,l+1)])}))}var a={functional:!0,props:["item","sidebarDepth"],render(t,{parent:{$page:e,$site:n,$route:a,$themeConfig:o,$themeLocaleConfig:l},props:{item:u,sidebarDepth:c}}){const p=Object(r.e)(a,u.path),d="auto"===u.type?p||u.children.some(t=>Object(r.e)(a,u.basePath+"#"+t.slug)):p,h="external"===u.type?function(t,e,n){return t("a",{attrs:{href:e,target:"_blank",rel:"noopener noreferrer"},class:{"sidebar-link":!0}},[n,t("OutboundLink")])}(t,u.path,u.title||u.path):i(t,u.path,u.title||u.path,d),f=[e.frontmatter.sidebarDepth,c,l.sidebarDepth,o.sidebarDepth,1].find(t=>void 0!==t),b=l.displayAllHeaders||o.displayAllHeaders;if("auto"===u.type)return[h,s(t,u.children,u.basePath,a,f)];if((d||b)&&u.headers&&!r.d.test(u.path)){return[h,s(t,Object(r.c)(u.headers),u.path,a,f)]}return h}},o=(n(259),n(8)),l=Object(o.a)(a,void 0,void 0,!1,null,null,null);e.default=l.exports},270:function(t,e,n){"use strict";n(257)},273:function(t,e,n){"use strict";n.r(e);var r=n(246),i={name:"SidebarGroup",components:{DropdownTransition:n(249).default},props:["item","open","collapsable","depth"],beforeCreate(){this.$options.components.SidebarLinks=n(260).default},methods:{isActive:r.e}},s=(n(270),n(8)),a=Object(s.a)(i,(function(){var t=this,e=t._self._c;return e("section",{staticClass:"sidebar-group",class:[{collapsable:t.collapsable,"is-sub-group":0!==t.depth},"depth-"+t.depth]},[t.item.path?e("RouterLink",{staticClass:"sidebar-heading clickable",class:{open:t.open,active:t.isActive(t.$route,t.item.path)},attrs:{to:t.item.path},nativeOn:{click:function(e){return t.$emit("toggle")}}},[e("span",[t._v(t._s(t.item.title))]),t._v(" "),t.collapsable?e("span",{staticClass:"arrow",class:t.open?"down":"right"}):t._e()]):e("p",{staticClass:"sidebar-heading",class:{open:t.open},on:{click:function(e){return t.$emit("toggle")}}},[e("span",[t._v(t._s(t.item.title))]),t._v(" "),t.collapsable?e("span",{staticClass:"arrow",class:t.open?"down":"right"}):t._e()]),t._v(" "),e("DropdownTransition",[t.open||!t.collapsable?e("SidebarLinks",{staticClass:"sidebar-group-items",attrs:{items:t.item.children,"sidebar-depth":t.item.sidebarDepth,"initial-open-group-index":t.item.initialOpenGroupIndex,depth:t.depth+1}}):t._e()],1)],1)}),[],!1,null,null,null);e.default=a.exports}}]); \ No newline at end of file diff --git a/assets/js/30.f81551c9.js b/assets/js/30.f81551c9.js new file mode 100644 index 0000000..6513022 --- /dev/null +++ b/assets/js/30.f81551c9.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{320:function(a,s,t){"use strict";t.r(s);var e=t(8),r=Object(e.a)({},(function(){var a=this,s=a._self._c;return s("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[s("h1",{attrs:{id:"create-k8s-cluster"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#create-k8s-cluster"}},[a._v("#")]),a._v(" Create k8s cluster")]),a._v(" "),s("p",[a._v("Before starting with the main content, it's necessary to provision\nthe Kubernetes in AWS.")]),a._v(" "),s("p",[a._v("Use the "),s("code",[a._v("MY_DOMAIN")]),a._v(" variable containing domain and "),s("code",[a._v("LETSENCRYPT_ENVIRONMENT")]),a._v("\nvariable.\nThe "),s("code",[a._v("LETSENCRYPT_ENVIRONMENT")]),a._v(" variable should be one of:")]),a._v(" "),s("ul",[s("li",[s("p",[s("code",[a._v("staging")]),a._v(" - Let’s Encrypt will create testing certificate (not valid)")])]),a._v(" "),s("li",[s("p",[s("code",[a._v("production")]),a._v(" - Let’s Encrypt will create valid certificate (use with care)")])])]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("MY_DOMAIN")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":-")]),a._v("mylabs.dev}")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("LETSENCRYPT_ENVIRONMENT")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":-")]),a._v("staging}")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" | "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),a._v('"')]),a._v("\n")])])]),s("h2",{attrs:{id:"prepare-the-local-working-environment"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#prepare-the-local-working-environment"}},[a._v("#")]),a._v(" Prepare the local working environment")]),a._v(" "),s("div",{staticClass:"custom-block tip"},[s("p",{staticClass:"custom-block-title"},[a._v("TIP")]),a._v(" "),s("p",[a._v("You can skip these steps if you have all the required software already\ninstalled.")])]),a._v(" "),s("p",[a._v("Install necessary software:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-x")]),a._v(" /usr/bin/apt "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("apt")]),a._v(" update "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-qq")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("DEBIAN_FRONTEND")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("noninteractive "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("apt-get")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-y")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-qq")]),a._v(" awscli "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" docker.io gettext-base "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("git")]),a._v(" jq openssh-client "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("wget")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(">")]),a._v(" /dev/null\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])]),s("p",[a._v("Install "),s("a",{attrs:{href:"https://github.com/kubernetes/kubectl",target:"_blank",rel:"noopener noreferrer"}},[a._v("kubectl"),s("OutboundLink")],1),a._v(" binary:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-x")]),a._v(" /usr/local/bin/kubectl "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-s")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-Lo")]),a._v(" /usr/local/bin/kubectl https://storage.googleapis.com/kubernetes-release/release/"),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-s")]),a._v(" https://storage.googleapis.com/kubernetes-release/release/stable.txt"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("/bin/linux/amd64/kubectl\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("chmod")]),a._v(" a+x /usr/local/bin/kubectl\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])]),s("p",[a._v("Install "),s("a",{attrs:{href:"https://github.com/kubernetes/kops",target:"_blank",rel:"noopener noreferrer"}},[a._v("kops"),s("OutboundLink")],1),a._v(":")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-x")]),a._v(" /usr/local/bin/kops "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-LO")]),a._v(" https://github.com/kubernetes/kops/releases/download/"),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-s")]),a._v(" https://api.github.com/repos/kubernetes/kops/releases/latest "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" jq "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-r")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v("'.tag_name'")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("/kops-linux-amd64\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("chmod")]),a._v(" +x kops-linux-amd64\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("mv")]),a._v(" kops-linux-amd64 /usr/local/bin/kops\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])]),s("p",[a._v("Install "),s("code",[a._v("kn")]),a._v(" client for Knative:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-x")]),a._v(" /usr/local/bin/kn "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-s")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-L")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"https://github.com/knative/client/releases/download/v0.11.0/kn-linux-amd64"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-o")]),a._v(" /usr/local/bin/kn\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("chmod")]),a._v(" a+x /usr/local/bin/kn\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])]),s("p",[a._v("Install "),s("code",[a._v("tkn")]),a._v(" client for Tekton:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-x")]),a._v(" /usr/local/bin/tkn "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-s")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-L")]),a._v(" https://github.com/tektoncd/cli/releases/download/v0.6.0/tkn_0.6.0_Linux_x86_64.tar.gz "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("tar")]),a._v(" xzf - "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-C")]),a._v(" /tmp/\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("mv")]),a._v(" /tmp/tkn /usr/local/bin/\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])]),s("p",[a._v("Install "),s("a",{attrs:{href:"https://hub.github.com/",target:"_blank",rel:"noopener noreferrer"}},[a._v("hub"),s("OutboundLink")],1),a._v(":")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-x")]),a._v(" /usr/local/bin/hub "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("curl")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-s")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-L")]),a._v(" https://github.com/github/hub/releases/download/v2.13.0/hub-linux-amd64-2.13.0.tgz "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("tar")]),a._v(" xzf - "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-C")]),a._v(" /tmp/\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("mv")]),a._v(" /tmp/hub-linux-amd64-2.13.0/bin/hub /usr/local/bin/\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])]),s("h2",{attrs:{id:"configure-aws"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#configure-aws"}},[a._v("#")]),a._v(" Configure AWS")]),a._v(" "),s("p",[a._v("Authorize to AWS using AWS CLI: "),s("a",{attrs:{href:"https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html",target:"_blank",rel:"noopener noreferrer"}},[a._v("Configuring the AWS CLI"),s("OutboundLink")],1)]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("aws configure\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("..")]),a._v(".\n")])])]),s("p",[a._v("Create DNS zone:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("aws route53 create-hosted-zone "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--name")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" --caller-reference "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n")])])]),s("p",[a._v("Use your domain registrar to change the nameservers for your zone (for example\n"),s("code",[a._v("mylabs.dev")]),a._v(") to use the Amazon Route 53 nameservers. Here is the way how you\ncan find out the the Route 53 nameservers:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("aws route53 get-hosted-zone "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--id")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("aws route53 list-hosted-zones "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--query")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"HostedZones[?Name==\\'),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),a._v("$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("MY_DOMAIN"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("."),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v('].Id"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--output")]),a._v(" text"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--query")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"DelegationSet.NameServers"')]),a._v("\n")])])]),s("p",[a._v("Create policy allowing the cert-manager to change Route 53 settings. This will\nallow cert-manager to generate wildcard SSL certificates by Let's Encrypt\ncertificate authority.")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("test")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-d")]),a._v(" tmp "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("||")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("mkdir")]),a._v(" tmp\nenvsubst "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("<")]),a._v(" files/user_policy.json "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(">")]),a._v(" tmp/user_policy.json\n\naws iam create-policy "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --policy-name "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s-"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--description")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Policy for '),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s-"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --policy-document file://tmp/user_policy.json "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" jq\n")])])]),s("p",[a._v("Output:")]),a._v(" "),s("div",{staticClass:"language-json extra-class"},[s("pre",{pre:!0,attrs:{class:"language-json"}},[s("code",[s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"Policy"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"PolicyName"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"pruzicka-k8s-mylabs.dev"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"PolicyId"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"xxxxxxxxxxxxxxxxxxxx"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"Arn"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"arn:aws:iam::822044714040:policy/pruzicka-k8s-mylabs.dev"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"Path"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"/"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"DefaultVersionId"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"v1"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"AttachmentCount"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"PermissionsBoundaryUsageCount"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("0")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"IsAttachable"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token boolean"}},[a._v("true")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"CreateDate"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"2019-12-27T09:41:14Z"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"UpdateDate"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"2019-12-27T09:41:14Z"')]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),s("p",[a._v("Create user which will use the policy above:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("aws iam create-user --user-name "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s-"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" jq "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("POLICY_ARN")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("aws iam list-policies "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--query")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Policies[?PolicyName==\\'),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),a._v("$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("-k8s-$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("MY_DOMAIN"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v('].{ARN:Arn}"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--output")]),a._v(" text"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\naws iam attach-user-policy --user-name "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s-"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('"')]),a._v(" --policy-arn "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$POLICY_ARN")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\naws iam create-access-key --user-name "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s-"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(">")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$HOME")]),a._v("/.aws/"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s-"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("USER_AWS_ACCESS_KEY_ID")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("awk")]),a._v(" -F"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v('" '),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"/AccessKeyId/ { print \\'),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$4")]),a._v(' }"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$HOME")]),a._v("/.aws/$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("-k8s-$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("MY_DOMAIN"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("USER_AWS_SECRET_ACCESS_KEY")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("awk")]),a._v(" -F"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v('" '),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"/SecretAccessKey/ { print \\'),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$4")]),a._v(' }"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$HOME")]),a._v("/.aws/$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("-k8s-$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("MY_DOMAIN"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v("\n")])])]),s("p",[a._v("Output:")]),a._v(" "),s("div",{staticClass:"language-json extra-class"},[s("pre",{pre:!0,attrs:{class:"language-json"}},[s("code",[s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"User"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"Path"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"/"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"UserName"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"pruzicka-k8s-mylabs.dev"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"UserId"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"xxxxxxxxxxxxxxxxxxxx"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"Arn"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"arn:aws:iam::822044714040:user/pruzicka-k8s-mylabs.dev"')]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(",")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"CreateDate"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"2019-12-27T09:41:27Z"')]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),s("p",[a._v("The "),s("code",[a._v("AccessKeyId")]),a._v(" and "),s("code",[a._v("SecretAccessKey")]),a._v(" is need for creating the "),s("code",[a._v("ClusterIssuer")]),a._v("\ndefinition for "),s("code",[a._v("cert-manager")]),a._v(".")]),a._v(" "),s("h2",{attrs:{id:"create-k8s-in-aws"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#create-k8s-in-aws"}},[a._v("#")]),a._v(" Create K8s in AWS")]),a._v(" "),s("p",[s("img",{attrs:{src:"https://raw.githubusercontent.com/aws-samples/eks-workshop/65b766c494a5b4f5420b2912d8373c4957163541/static/images/3-service-animated.gif",alt:"Architecture",title:"Architecture"}})]),a._v(" "),s("p",[a._v("Generate SSH keys if not exists:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("test")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-f")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$HOME")]),a._v("/.ssh/id_rsa "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("||")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("(")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("install")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-m")]),a._v(" 0700 "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-d")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$HOME")]),a._v("/.ssh "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" ssh-keygen "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-b")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("2048")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-t")]),a._v(" rsa "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-f")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$HOME")]),a._v("/.ssh/id_rsa "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-q")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-N")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('""')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(")")]),a._v("\n")])])]),s("p",[a._v("Clone the "),s("code",[a._v("k8s-knative-gitlab-harbor")]),a._v(" Git repository if it wasn't done already:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("!")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-d")]),a._v(" .git "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("git")]),a._v(" clone "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--quiet")]),a._v(" https://github.com/ruzickap/k8s-k8s-knative-gitlab-harbor "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("cd")]),a._v(" k8s-knative-gitlab-harbor\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])]),s("p",[a._v("Create S3 bucket where the kops will store cluster status:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("aws s3api create-bucket "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--bucket")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-kops-k8s "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--region")]),a._v(" eu-central-1 --create-bucket-configuration "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("LocationConstraint")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("eu-central-1 "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" jq\n")])])]),s("p",[a._v("Output:")]),a._v(" "),s("div",{staticClass:"language-json extra-class"},[s("pre",{pre:!0,attrs:{class:"language-json"}},[s("code",[s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token property"}},[a._v('"Location"')]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v(":")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"http://pruzicka-kops-k8s.s3.amazonaws.com/"')]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("\n")])])]),s("p",[a._v("Create Kubernetes cluster in AWS by using "),s("a",{attrs:{href:"https://github.com/kubernetes/kops",target:"_blank",rel:"noopener noreferrer"}},[a._v("kops"),s("OutboundLink")],1),a._v(":")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("kops create cluster "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--name")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s."),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--state")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("s3://"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-kops-k8s "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--zones")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("eu-central-1a "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--networking")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("amazon-vpc-routed-eni "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --node-count"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("5")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --node-size"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("t3.large "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --node-volume-size"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("20")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --master-count"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("1")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --master-size"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("t3.small "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --master-volume-size"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("10")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --dns-zone"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --cloud-labels "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Owner='),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v(',Environment=Test,Division=Services"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n --ssh-public-key "),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$HOME")]),a._v("/.ssh/id_rsa.pub "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--yes")]),a._v("\n")])])]),s("p",[a._v("Output:")]),a._v(" "),s("div",{staticClass:"language-text extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("...\nI1227 10:42:09.459809 15782 executor.go:103] Tasks: 91 done / 91 total; 0 can run\nI1227 10:42:09.459901 15782 dns.go:155] Pre-creating DNS records\nI1227 10:42:10.791005 15782 update_cluster.go:294] Exporting kubecfg for cluster\nkops has set your kubectl context to pruzicka-k8s.mylabs.dev\n\nCluster changes have been applied to the cloud.\n\n\nChanges may require instances to restart: kops rolling-update cluster\n")])])]),s("p",[a._v("Wait for cluster to be up and running:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("200")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("while")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),a._v("kops validate cluster "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--state")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("s3://$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("-kops-k8s "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-o")]),a._v(" yaml "),s("span",{pre:!0,attrs:{class:"token operator"}},[s("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[a._v("2")]),a._v(">")]),s("span",{pre:!0,attrs:{class:"token file-descriptor important"}},[a._v("&1")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("|")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("grep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-q")]),a._v(" failures"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("do")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("5")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-n")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v(".")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("done")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v("\n")])])]),s("p",[a._v("Store "),s("code",[a._v("kubeconfig")]),a._v(" in current directory:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("kops "),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" kubecfg "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s."),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--state")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("s3://"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-kops-k8s "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--kubeconfig")]),a._v(" kubeconfig.conf\n")])])]),s("p",[a._v("Check if the new Kubernetes cluster is available:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("KUBECONFIG")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("$PWD")]),a._v("/kubeconfig.conf\nkubectl get nodes "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-o")]),a._v(" wide\n")])])]),s("p",[a._v("Output:")]),a._v(" "),s("div",{staticClass:"language-text extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME\nip-172-20-37-106.eu-central-1.compute.internal Ready master 2m23s v1.15.6 172.20.37.106 35.159.31.183 Debian GNU/Linux 9 (stretch) 4.9.0-11-amd64 docker://18.6.3\nip-172-20-37-122.eu-central-1.compute.internal Ready node 56s v1.15.6 172.20.37.122 3.120.151.131 Debian GNU/Linux 9 (stretch) 4.9.0-11-amd64 docker://18.6.3\nip-172-20-37-204.eu-central-1.compute.internal Ready node 32s v1.15.6 172.20.37.204 18.196.187.216 Debian GNU/Linux 9 (stretch) 4.9.0-11-amd64 docker://18.6.3\nip-172-20-47-14.eu-central-1.compute.internal Ready node 67s v1.15.6 172.20.47.14 18.196.173.69 Debian GNU/Linux 9 (stretch) 4.9.0-11-amd64 docker://18.6.3\nip-172-20-47-61.eu-central-1.compute.internal Ready node 53s v1.15.6 172.20.47.61 18.184.73.151 Debian GNU/Linux 9 (stretch) 4.9.0-11-amd64 docker://18.6.3\nip-172-20-59-57.eu-central-1.compute.internal Ready node 83s v1.15.6 172.20.59.57 54.93.48.121 Debian GNU/Linux 9 (stretch) 4.9.0-11-amd64 docker://18.6.3\n")])])]),s("p",[a._v("In case of using "),s("code",[a._v("staging")]),a._v(' environment add "Let\'s Encrypt testing" '),s("a",{attrs:{href:"https://letsencrypt.org/certs/fakelerootx1.pem",target:"_blank",rel:"noopener noreferrer"}},[a._v("fakelerootx1.pem"),s("OutboundLink")],1),a._v("\nas trusted certificate authority:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("wget")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-q")]),a._v(" https://letsencrypt.org/certs/fakelerootx1.pem "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-O")]),a._v(" tmp/fakelerootx1.pem\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("if")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("[")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${LETSENCRYPT_ENVIRONMENT}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"staging"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("]")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("then")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("mkdir")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-pv")]),a._v(" /etc/docker/certs.d/harbor."),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("/\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("cp")]),a._v(" tmp/fakelerootx1.pem /etc/docker/certs.d/harbor."),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("/ca.crt\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("for")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token for-or-select variable"}},[a._v("EXTERNAL_IP")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("in")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("kubectl get nodes "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--output")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("jsonpath"),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"{.items[*].status.addresses[?(@.type=='),s("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v("ExternalIP"),s("span",{pre:!0,attrs:{class:"token entity",title:'\\"'}},[a._v('\\"')]),a._v(')].address}"')]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v(";")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("do")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("ssh")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-q")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-o")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("StrictHostKeyChecking")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("no "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-l")]),a._v(" admin "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${EXTERNAL_IP}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"sudo mkdir -p /etc/docker/certs.d/harbor.'),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("/ && sudo wget -q https://letsencrypt.org/certs/fakelerootx1.pem -O /etc/docker/certs.d/harbor."),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('/ca.crt"')]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("done")]),a._v("\n "),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("echo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"*** Done"')]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token keyword"}},[a._v("fi")]),a._v("\n")])])])])}),[],!1,null,null,null);s.default=r.exports}}]); \ No newline at end of file diff --git a/assets/js/31.aa5de726.js b/assets/js/31.aa5de726.js new file mode 100644 index 0000000..dceb26d --- /dev/null +++ b/assets/js/31.aa5de726.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[31],{322:function(t,a,e){"use strict";e.r(a);var s=e(8),n=Object(s.a)({},(function(){var t=this,a=t._self._c;return a("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[a("h1",{attrs:{id:"install-helm"}},[a("a",{staticClass:"header-anchor",attrs:{href:"#install-helm"}},[t._v("#")]),t._v(" Install Helm")]),t._v(" "),a("p",[t._v("Install "),a("a",{attrs:{href:"https://helm.sh/",target:"_blank",rel:"noopener noreferrer"}},[t._v("Helm"),a("OutboundLink")],1),t._v(" binary:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[a("span",{pre:!0,attrs:{class:"token function"}},[t._v("curl")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("-s")]),t._v(" https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 "),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("bash")]),t._v("\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-text extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v("Downloading https://get.helm.sh/helm-v3.0.2-linux-amd64.tar.gz\nPreparing to install helm into /usr/local/bin\nhelm installed into /usr/local/bin/helm\n")])])]),a("p",[t._v('Add the "stable" repository:')]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("helm repo "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("add")]),t._v(" stable https://kubernetes-charts.storage.googleapis.com/\nhelm repo update\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-text extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('"stable" has been added to your repositories\nHang tight while we grab the latest from your chart repositories...\n...Successfully got an update from the "stable" chart repository\nUpdate Complete. ⎈ Happy Helming!⎈\n')])])]),a("p",[t._v("Install kube2iam to restrict pod's access:")]),t._v(" "),a("div",{staticClass:"language-bash extra-class"},[a("pre",{pre:!0,attrs:{class:"language-bash"}},[a("code",[t._v("helm "),a("span",{pre:!0,attrs:{class:"token function"}},[t._v("install")]),t._v(" kube2iam stable/kube2iam "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--namespace")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("kube-system "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("host.iptables")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("true "),a("span",{pre:!0,attrs:{class:"token punctuation"}},[t._v("\\")]),t._v("\n "),a("span",{pre:!0,attrs:{class:"token parameter variable"}},[t._v("--set")]),t._v(" "),a("span",{pre:!0,attrs:{class:"token assign-left variable"}},[t._v("rbac.create")]),a("span",{pre:!0,attrs:{class:"token operator"}},[t._v("=")]),t._v("true\n")])])]),a("p",[t._v("Output:")]),t._v(" "),a("div",{staticClass:"language-text extra-class"},[a("pre",{pre:!0,attrs:{class:"language-text"}},[a("code",[t._v('NAME: kube2iam\nLAST DEPLOYED: Fri Dec 27 10:48:20 2019\nNAMESPACE: kube-system\nSTATUS: deployed\nREVISION: 1\nTEST SUITE: None\nNOTES:\nTo verify that kube2iam has started, run:\n\n kubectl --namespace=kube-system get pods -l "app.kubernetes.io/name=kube2iam,app.kubernetes.io/instance=kube2iam"\n\nAdd an iam.amazonaws.com/role annotation to your pods with the role you want them to assume.\n\n https://github.com/jtblin/kube2iam#kubernetes-annotation\n\nUse `curl` to verify the pod\'s role from within:\n\n curl http://169.254.169.254/latest/meta-data/iam/security-credentials/\n')])])])])}),[],!1,null,null,null);a.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/32.22ccabcf.js b/assets/js/32.22ccabcf.js new file mode 100644 index 0000000..515f21a --- /dev/null +++ b/assets/js/32.22ccabcf.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[32],{329:function(a,s,t){"use strict";t.r(s);var e=t(8),n=Object(e.a)({},(function(){var a=this,s=a._self._c;return s("ContentSlotsDistributor",{attrs:{"slot-key":a.$parent.slotKey}},[s("h1",{attrs:{id:"clean-up"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#clean-up"}},[a._v("#")]),a._v(" Clean-up")]),a._v(" "),s("p",[s("img",{attrs:{src:"https://raw.githubusercontent.com/aws-samples/eks-workshop/65b766c494a5b4f5420b2912d8373c4957163541/static/images/cleanup.svg?sanitize=true",alt:"Clean-up",title:"Clean-up"}})]),a._v(" "),s("p",[a._v("Configure "),s("code",[a._v("kubeconfig")]),a._v(":")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("MY_DOMAIN")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"mylabs.dev"')]),a._v("\nkops "),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" kubecfg "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s."),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--state")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("s3://"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-kops-k8s "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--kubeconfig")]),a._v(" /tmp/kubeconfig.conf\n"),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("export")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("KUBECONFIG")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("/tmp/kubeconfig.conf\n")])])]),s("p",[a._v("Remove DNS records:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("kubectl delete gateways.networking.istio.io "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--all")]),a._v(" --all-namespaces "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\nkubectl delete pod "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-n")]),a._v(" external-dns "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--all")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\n"),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sleep")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token number"}},[a._v("15")]),a._v("\n")])])]),s("p",[a._v("Output:")]),a._v(" "),s("div",{staticClass:"language-text extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v('gateway.networking.istio.io "el-getting-started-listener-gateway" deleted\ngateway.networking.istio.io "gitlab-gateway" deleted\ngateway.networking.istio.io "harbor-gateway" deleted\ngateway.networking.istio.io "istio-autogenerated-k8s-ingress" deleted\ngateway.networking.istio.io "istio-services-gateway" deleted\ngateway.networking.istio.io "knative-services-gateway" deleted\ngateway.networking.istio.io "cluster-local-gateway" deleted\ngateway.networking.istio.io "knative-ingress-gateway" deleted\npod "external-dns-685b847795-mrchv" deleted\n')])])]),s("p",[a._v("Delete GitHub repositories:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("hub delete "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-y")]),a._v(" ruzickap/podinfo\n")])])]),s("p",[a._v("Cleanup + Remove Helm:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("test")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-d")]),a._v(" /home/"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("/.helm "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("rm")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-rf")]),a._v(" /home/"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("/.helm\n"),s("span",{pre:!0,attrs:{class:"token builtin class-name"}},[a._v("test")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-d")]),a._v(" /home/"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("/.config/helm "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("rm")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-rf")]),a._v(" /home/"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("/.config/helm\n")])])]),s("p",[a._v("Cleanup + Remove "),s("code",[a._v("tmp")]),a._v(" directory:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("rm")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-rf")]),a._v(" tmp\n")])])]),s("p",[a._v("Docker certificate cleanup if exists:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("sudo")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("rm")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("-rf")]),a._v(" /etc/docker/certs.d/harbor."),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n")])])]),s("p",[a._v("Remove K8s cluster:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("kops delete cluster "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--name")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s."),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--yes")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--state")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),a._v("s3://"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-kops-k8s\n")])])]),s("p",[a._v("Output:")]),a._v(" "),s("div",{staticClass:"language-text extra-class"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[a._v("...\nDeleted kubectl config for pruzicka-k8s.mylabs.de\n")])])]),s("p",[a._v("Remove S3 bucket used for storing the configuration by kops:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[a._v("aws s3 "),s("span",{pre:!0,attrs:{class:"token function"}},[a._v("rm")]),a._v(" s3://"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-kops-k8s/"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-app-build.tar\naws s3api delete-bucket "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--bucket")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-kops-k8s "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--region")]),a._v(" eu-central-1\n")])])]),s("p",[a._v("Clean Policy, User, Access Key in AWS:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token comment"}},[a._v('# aws route53 delete-hosted-zone --id $(aws route53 list-hosted-zones --query "HostedZones[?Name==\\`${MY_DOMAIN}.\\`].Id" --output text)')]),a._v("\n\n"),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("POLICY_ARN")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("aws iam list-policies "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--query")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"Policies[?PolicyName==\\'),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")]),a._v("$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("-k8s-$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("MY_DOMAIN"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("`")])]),a._v('].{ARN:Arn}"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--output")]),a._v(" text"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\naws iam detach-user-policy --user-name "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"'),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s-"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v('"')]),a._v(" --policy-arn "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${POLICY_ARN}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\naws iam delete-policy --policy-arn "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${POLICY_ARN}")]),a._v("\n\n"),s("span",{pre:!0,attrs:{class:"token assign-left variable"}},[a._v("USER_ACCESS_KEYS")]),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("=")]),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("$(")]),a._v("aws iam list-access-keys --user-name $"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v("-k8s-$"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("{")]),a._v("MY_DOMAIN"),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("}")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--query")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[a._v('"AccessKeyMetadata[].AccessKeyId"')]),a._v(" "),s("span",{pre:!0,attrs:{class:"token parameter variable"}},[a._v("--output")]),a._v(" text"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v(")")])]),a._v(" "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&&")]),a._v(" "),s("span",{pre:!0,attrs:{class:"token punctuation"}},[a._v("\\")]),a._v("\naws iam delete-access-key --user-name "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s-"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v(" --access-key-id "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${USER_ACCESS_KEYS}")]),a._v("\n\naws iam delete-user --user-name "),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${"),s("span",{pre:!0,attrs:{class:"token environment constant"}},[a._v("USER")]),a._v("}")]),a._v("-k8s-"),s("span",{pre:!0,attrs:{class:"token variable"}},[a._v("${MY_DOMAIN}")]),a._v("\n")])])]),s("p",[a._v("Remove other files:")]),a._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[a._v("rm")]),a._v(" demo-magic.sh kubeconfig.conf README.sh "),s("span",{pre:!0,attrs:{class:"token operator"}},[a._v("&>")]),a._v(" /dev/null\n")])])])])}),[],!1,null,null,null);s.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/4.1a6ad45d.js b/assets/js/4.1a6ad45d.js new file mode 100644 index 0000000..81d6e20 --- /dev/null +++ b/assets/js/4.1a6ad45d.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{284:function(t,e,n){},298:function(t,e,n){"use strict";n(284)},318:function(t,e,n){"use strict";n.r(e);var i={functional:!0,props:{type:{type:String,default:"tip"},text:String,vertical:{type:String,default:"top"}},render:(t,{props:e,slots:n})=>t("span",{class:["badge",e.type],style:{verticalAlign:e.vertical}},e.text||n().default)},p=(n(298),n(8)),l=Object(p.a)(i,void 0,void 0,!1,null,"15b7b770",null);e.default=l.exports}}]); \ No newline at end of file diff --git a/assets/js/5.4b4e299e.js b/assets/js/5.4b4e299e.js new file mode 100644 index 0000000..ccdfff1 --- /dev/null +++ b/assets/js/5.4b4e299e.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{285:function(t,e,a){},299:function(t,e,a){"use strict";a(285)},314:function(t,e,a){"use strict";a.r(e);var s={name:"CodeBlock",props:{title:{type:String,required:!0},active:{type:Boolean,default:!1}},mounted(){this.$parent&&this.$parent.loadTabs&&this.$parent.loadTabs()}},i=(a(299),a(8)),n=Object(i.a)(s,(function(){return(0,this._self._c)("div",{staticClass:"theme-code-block",class:{"theme-code-block__active":this.active}},[this._t("default")],2)}),[],!1,null,"759a7d02",null);e.default=n.exports}}]); \ No newline at end of file diff --git a/assets/js/6.88072c68.js b/assets/js/6.88072c68.js new file mode 100644 index 0000000..6a3e20e --- /dev/null +++ b/assets/js/6.88072c68.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{286:function(e,t,a){},300:function(e,t,a){"use strict";a(286)},315:function(e,t,a){"use strict";a.r(t);var o={name:"CodeGroup",data:()=>({codeTabs:[],activeCodeTabIndex:-1}),watch:{activeCodeTabIndex(e){this.activateCodeTab(e)}},mounted(){this.loadTabs()},methods:{changeCodeTab(e){this.activeCodeTabIndex=e},loadTabs(){this.codeTabs=(this.$slots.default||[]).filter(e=>Boolean(e.componentOptions)).map((e,t)=>(""===e.componentOptions.propsData.active&&(this.activeCodeTabIndex=t),{title:e.componentOptions.propsData.title,elm:e.elm})),-1===this.activeCodeTabIndex&&this.codeTabs.length>0&&(this.activeCodeTabIndex=0),this.activateCodeTab(0)},activateCodeTab(e){this.codeTabs.forEach(e=>{e.elm&&e.elm.classList.remove("theme-code-block__active")}),this.codeTabs[e].elm&&this.codeTabs[e].elm.classList.add("theme-code-block__active")}}},s=(a(300),a(8)),c=Object(s.a)(o,(function(){var e=this,t=e._self._c;return t("ClientOnly",[t("div",{staticClass:"theme-code-group"},[t("div",{staticClass:"theme-code-group__nav"},[t("ul",{staticClass:"theme-code-group__ul"},e._l(e.codeTabs,(function(a,o){return t("li",{key:a.title,staticClass:"theme-code-group__li"},[t("button",{staticClass:"theme-code-group__nav-tab",class:{"theme-code-group__nav-tab-active":o===e.activeCodeTabIndex},on:{click:function(t){return e.changeCodeTab(o)}}},[e._v("\n "+e._s(a.title)+"\n ")])])})),0)]),e._v(" "),e._t("default"),e._v(" "),e.codeTabs.length<1?t("pre",{staticClass:"pre-blank"},[e._v("// Make sure to add code blocks to your code group")]):e._e()],2)])}),[],!1,null,"deefee04",null);t.default=c.exports}}]); \ No newline at end of file diff --git a/assets/js/7.f09a9532.js b/assets/js/7.f09a9532.js new file mode 100644 index 0000000..f31a02c --- /dev/null +++ b/assets/js/7.f09a9532.js @@ -0,0 +1 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{316:function(t,e,s){"use strict";s.r(e);const o=["There's nothing here.","How did we get here?","That's a Four-Oh-Four.","Looks like we've got some broken links."];var n={methods:{getMsg:()=>o[Math.floor(Math.random()*o.length)]}},h=s(8),i=Object(h.a)(n,(function(){var t=this._self._c;return t("div",{staticClass:"theme-container"},[t("div",{staticClass:"theme-default-content"},[t("h1",[this._v("404")]),this._v(" "),t("blockquote",[this._v(this._s(this.getMsg()))]),this._v(" "),t("RouterLink",{attrs:{to:"/"}},[this._v("\n Take me home.\n ")])],1)])}),[],!1,null,null,null);e.default=i.exports}}]); \ No newline at end of file diff --git a/assets/js/app.a36226c4.js b/assets/js/app.a36226c4.js new file mode 100644 index 0000000..f42cd89 --- /dev/null +++ b/assets/js/app.a36226c4.js @@ -0,0 +1,16 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[0],[]]);!function(t){function e(e){for(var r,a,s=e[0],c=e[1],u=e[2],f=0,p=[];f=e||n<0||m&&t-u>=i}function w(){var t=d();if(_(t))return x(t);s=setTimeout(w,function(t){var n=e-(t-c);return m?p(n,i-(t-u)):n}(t))}function x(t){return s=void 0,g&&r?y(t):(r=o=void 0,a)}function O(){var t=d(),n=_(t);if(r=arguments,o=this,c=t,n){if(void 0===s)return b(c);if(m)return s=setTimeout(w,e),y(c)}return void 0===s&&(s=setTimeout(w,e)),a}return e=v(e)||0,h(n)&&(l=!!n.leading,i=(m="maxWait"in n)?f(v(n.maxWait)||0,e):i,g="trailing"in n?!!n.trailing:g),O.cancel=function(){void 0!==s&&clearTimeout(s),u=0,r=c=o=s=void 0},O.flush=function(){return void 0===s?a:x(d())},O}},function(t,e,n){var r,o; +/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress + * @license MIT */void 0===(o="function"==typeof(r=function(){var t,e,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'

'};function o(t,e,n){return tn?n:t}function i(t){return 100*(-1+t)}n.configure=function(t){var e,n;for(e in t)void 0!==(n=t[e])&&t.hasOwnProperty(e)&&(r[e]=n);return this},n.status=null,n.set=function(t){var e=n.isStarted();t=o(t,r.minimum,1),n.status=1===t?null:t;var c=n.render(!e),u=c.querySelector(r.barSelector),l=r.speed,f=r.easing;return c.offsetWidth,a((function(e){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(u,function(t,e,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+i(t)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+i(t)+"%,0)"}:{"margin-left":i(t)+"%"}).transition="all "+e+"ms "+n,o}(t,l,f)),1===t?(s(c,{transition:"none",opacity:1}),c.offsetWidth,setTimeout((function(){s(c,{transition:"all "+l+"ms linear",opacity:0}),setTimeout((function(){n.remove(),e()}),l)}),l)):setTimeout(e,l)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var t=function(){setTimeout((function(){n.status&&(n.trickle(),t())}),r.trickleSpeed)};return r.trickle&&t(),this},n.done=function(t){return t||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(t){var e=n.status;return e?("number"!=typeof t&&(t=(1-e)*o(Math.random()*e,.1,.95)),e=o(e+t,0,.994),n.set(e)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},t=0,e=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===e&&n.start(),t++,e++,r.always((function(){0==--e?(t=0,n.done()):n.set((t-e)/t)})),this):this},n.render=function(t){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var e=document.createElement("div");e.id="nprogress",e.innerHTML=r.template;var o,a=e.querySelector(r.barSelector),c=t?"-100":i(n.status||0),l=document.querySelector(r.parent);return s(a,{transition:"all 0 linear",transform:"translate3d("+c+"%,0,0)"}),r.showSpinner||(o=e.querySelector(r.spinnerSelector))&&p(o),l!=document.body&&u(l,"nprogress-custom-parent"),l.appendChild(e),e},n.remove=function(){l(document.documentElement,"nprogress-busy"),l(document.querySelector(r.parent),"nprogress-custom-parent");var t=document.getElementById("nprogress");t&&p(t)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var t=document.body.style,e="WebkitTransform"in t?"Webkit":"MozTransform"in t?"Moz":"msTransform"in t?"ms":"OTransform"in t?"O":"";return e+"Perspective"in t?"translate3d":e+"Transform"in t?"translate":"margin"};var a=function(){var t=[];function e(){var n=t.shift();n&&n(e)}return function(n){t.push(n),1==t.length&&e()}}(),s=function(){var t=["Webkit","O","Moz","ms"],e={};function n(n){return n=n.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(t,e){return e.toUpperCase()})),e[n]||(e[n]=function(e){var n=document.body.style;if(e in n)return e;for(var r,o=t.length,i=e.charAt(0).toUpperCase()+e.slice(1);o--;)if((r=t[o]+i)in n)return r;return e}(n))}function r(t,e,r){e=n(e),t.style[e]=r}return function(t,e){var n,o,i=arguments;if(2==i.length)for(n in e)void 0!==(o=e[n])&&e.hasOwnProperty(n)&&r(t,n,o);else r(t,i[1],i[2])}}();function c(t,e){return("string"==typeof t?t:f(t)).indexOf(" "+e+" ")>=0}function u(t,e){var n=f(t),r=n+e;c(n,e)||(t.className=r.substring(1))}function l(t,e){var n,r=f(t);c(t,e)&&(n=r.replace(" "+e+" "," "),t.className=n.substring(1,n.length-1))}function f(t){return(" "+(t.className||"")+" ").replace(/\s+/gi," ")}function p(t){t&&t.parentNode&&t.parentNode.removeChild(t)}return n})?r.call(e,n,e,t):r)||(t.exports=o)},function(t,e,n){"use strict";var r=n(0),o=n(46).f,i=n(13),a=n(94),s=n(34),c=n(61),u=n(122);t.exports=function(t,e){var n,l,f,p,d,h=t.target,v=t.global,m=t.stat;if(n=v?r:m?r[h]||s(h,{}):r[h]&&r[h].prototype)for(l in e){if(p=e[l],f=t.dontCallGetSet?(d=o(n,l))&&d.value:n[l],!u(v?l:h+(m?".":"#")+l,t.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(t.sham||f&&f.sham)&&i(p,"sham",!0),a(n,l,p,t)}}},function(t,e,n){"use strict";var r=n(26),o=Function.prototype.call;t.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},function(t,e,n){"use strict";var r=n(3);t.exports=!r((function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}))},function(t,e,n){"use strict";t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){"use strict";var r=n(47),o=n(29);t.exports=function(t){return r(o(t))}},function(t,e,n){"use strict";var r=n(48),o=TypeError;t.exports=function(t){if(r(t))throw new o("Can't call method on "+t);return t}},function(t,e,n){"use strict";var r=n(0),o=n(1),i=function(t){return o(t)?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t]):r[t]&&r[t][e]}},function(t,e,n){"use strict";var r=n(1),o=n(104),i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+" is not a function")}},function(t,e,n){"use strict";var r=n(0),o=n(55),i=n(9),a=n(57),s=n(53),c=n(52),u=r.Symbol,l=o("wks"),f=c?u.for||u:u&&u.withoutSetter||a;t.exports=function(t){return i(l,t)||(l[t]=s&&i(u,t)?u[t]:f("Symbol."+t)),l[t]}},function(t,e,n){"use strict";var r=n(56),o=n(0),i=n(34),a=t.exports=o["__core-js_shared__"]||i("__core-js_shared__",{});(a.versions||(a.versions=[])).push({version:"3.36.1",mode:r?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.36.1/LICENSE",source:"https://github.com/zloirock/core-js"})},function(t,e,n){"use strict";var r=n(0),o=Object.defineProperty;t.exports=function(t,e){try{o(r,t,{value:e,configurable:!0,writable:!0})}catch(n){r[t]=e}return e}},function(t,e,n){"use strict";var r=n(29),o=Object;t.exports=function(t){return o(r(t))}},function(t,e,n){"use strict";var r=n(119);t.exports=function(t){return r(t.length)}},function(t,e,n){var r=n(146),o=n(11),i=Object.prototype,a=i.hasOwnProperty,s=i.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(t){return o(t)&&a.call(t,"callee")&&!s.call(t,"callee")};t.exports=c},function(t,e,n){var r=n(10)(n(7),"Map");t.exports=r},function(t,e){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},function(t,e,n){var r=n(166),o=n(173),i=n(175),a=n(176),s=n(177);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t<=9007199254740991}},function(t,e,n){var r=n(4),o=n(44),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,a=/^\w*$/;t.exports=function(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!o(t))||(a.test(t)||!i.test(t)||null!=e&&t in Object(e))}},function(t,e,n){var r=n(12),o=n(11);t.exports=function(t){return"symbol"==typeof t||o(t)&&"[object Symbol]"==r(t)}},function(t,e){t.exports=function(t){return t}},function(t,e,n){"use strict";var r=n(5),o=n(25),i=n(100),a=n(27),s=n(28),c=n(49),u=n(9),l=n(58),f=Object.getOwnPropertyDescriptor;e.f=r?f:function(t,e){if(t=s(t),e=c(e),l)try{return f(t,e)}catch(t){}if(u(t,e))return a(!o(i.f,t,e),t[e])}},function(t,e,n){"use strict";var r=n(2),o=n(3),i=n(16),a=Object,s=r("".split);t.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(t){return"String"===i(t)?s(t,""):a(t)}:a},function(t,e,n){"use strict";t.exports=function(t){return null==t}},function(t,e,n){"use strict";var r=n(101),o=n(50);t.exports=function(t){var e=r(t,"string");return o(e)?e:e+""}},function(t,e,n){"use strict";var r=n(30),o=n(1),i=n(51),a=n(52),s=Object;t.exports=a?function(t){return"symbol"==typeof t}:function(t){var e=r("Symbol");return o(e)&&i(e.prototype,s(t))}},function(t,e,n){"use strict";var r=n(2);t.exports=r({}.isPrototypeOf)},function(t,e,n){"use strict";var r=n(53);t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(t,e,n){"use strict";var r=n(54),o=n(3),i=n(0).String;t.exports=!!Object.getOwnPropertySymbols&&!o((function(){var t=Symbol("symbol detection");return!i(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},function(t,e,n){"use strict";var r,o,i=n(0),a=n(102),s=i.process,c=i.Deno,u=s&&s.versions||c&&c.version,l=u&&u.v8;l&&(o=(r=l.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),t.exports=o},function(t,e,n){"use strict";var r=n(33);t.exports=function(t,e){return r[t]||(r[t]=e||{})}},function(t,e,n){"use strict";t.exports=!1},function(t,e,n){"use strict";var r=n(2),o=0,i=Math.random(),a=r(1..toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+a(++o+i,36)}},function(t,e,n){"use strict";var r=n(5),o=n(3),i=n(106);t.exports=!r&&!o((function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},function(t,e,n){"use strict";var r=n(6),o=String,i=TypeError;t.exports=function(t){if(r(t))return t;throw new i(o(t)+" is not an object")}},function(t,e,n){"use strict";t.exports={}},function(t,e,n){"use strict";var r=n(9),o=n(113),i=n(46),a=n(15);t.exports=function(t,e,n){for(var s=o(e),c=a.f,u=i.f,l=0;ll))return!1;var p=c.get(t),d=c.get(e);if(p&&d)return p==e&&d==t;var h=-1,v=!0,m=2&n?new r:void 0;for(c.set(t,e),c.set(e,t);++h-1&&t%1==0&&t]/;t.exports=function(t){var e,n=""+t,o=r.exec(n);if(!o)return n;var i="",a=0,s=0;for(a=o.index;a1?1:s,n=.5*(1-Math.cos(Math.PI*a)),r=e.startX+(e.x-e.startX)*n,o=e.startY+(e.y-e.startY)*n,e.method.call(e.scrollable,r,o),r===e.x&&o===e.y||t.requestAnimationFrame(d.bind(t,e))}function h(n,r,a){var c,u,l,f,p=i();n===e.body?(c=t,u=t.scrollX||t.pageXOffset,l=t.scrollY||t.pageYOffset,f=o.scroll):(c=n,u=n.scrollLeft,l=n.scrollTop,f=s),d({scrollable:c,method:f,startTime:p,startX:u,startY:l,x:r,y:a})}}}}()},function(t,e,n){"use strict";var r=n(24),o=n(35),i=n(36),a=n(141),s=n(143);r({target:"Array",proto:!0,arity:1,forced:n(3)((function(){return 4294967297!==[].push.call({length:4294967296},1)}))||!function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(t){return t instanceof TypeError}}()},{push:function(t){var e=o(this),n=i(e),r=arguments.length;s(n+r);for(var c=0;c79&&a<83||!i("reduce")},{reduce:function(t){var e=arguments.length;return o(this,t,e,e>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,i=o&&!r.call({1:2},1);e.f=i?function(t){var e=o(this,t);return!!e&&e.enumerable}:r},function(t,e,n){"use strict";var r=n(25),o=n(6),i=n(50),a=n(103),s=n(105),c=n(32),u=TypeError,l=c("toPrimitive");t.exports=function(t,e){if(!o(t)||i(t))return t;var n,c=a(t,l);if(c){if(void 0===e&&(e="default"),n=r(c,t,e),!o(n)||i(n))return n;throw new u("Can't convert object to primitive value")}return void 0===e&&(e="number"),s(t,e)}},function(t,e,n){"use strict";t.exports="undefined"!=typeof navigator&&String(navigator.userAgent)||""},function(t,e,n){"use strict";var r=n(31),o=n(48);t.exports=function(t,e){var n=t[e];return o(n)?void 0:r(n)}},function(t,e,n){"use strict";var r=String;t.exports=function(t){try{return r(t)}catch(t){return"Object"}}},function(t,e,n){"use strict";var r=n(25),o=n(1),i=n(6),a=TypeError;t.exports=function(t,e){var n,s;if("string"===e&&o(n=t.toString)&&!i(s=r(n,t)))return s;if(o(n=t.valueOf)&&!i(s=r(n,t)))return s;if("string"!==e&&o(n=t.toString)&&!i(s=r(n,t)))return s;throw new a("Can't convert object to primitive value")}},function(t,e,n){"use strict";var r=n(0),o=n(6),i=r.document,a=o(i)&&o(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},function(t,e,n){"use strict";var r=n(5),o=n(3);t.exports=r&&o((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},function(t,e,n){"use strict";var r=n(5),o=n(9),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,s=o(i,"name"),c=s&&"something"===function(){}.name,u=s&&(!r||r&&a(i,"name").configurable);t.exports={EXISTS:s,PROPER:c,CONFIGURABLE:u}},function(t,e,n){"use strict";var r=n(2),o=n(1),i=n(33),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(t){return a(t)}),t.exports=i.inspectSource},function(t,e,n){"use strict";var r,o,i,a=n(111),s=n(0),c=n(6),u=n(13),l=n(9),f=n(33),p=n(112),d=n(60),h=s.TypeError,v=s.WeakMap;if(a||f.state){var m=f.state||(f.state=new v);m.get=m.get,m.has=m.has,m.set=m.set,r=function(t,e){if(m.has(t))throw new h("Object already initialized");return e.facade=t,m.set(t,e),e},o=function(t){return m.get(t)||{}},i=function(t){return m.has(t)}}else{var g=p("state");d[g]=!0,r=function(t,e){if(l(t,g))throw new h("Object already initialized");return e.facade=t,u(t,g,e),e},o=function(t){return l(t,g)?t[g]:{}},i=function(t){return l(t,g)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!c(e)||(n=o(e)).type!==t)throw new h("Incompatible receiver, "+t+" required");return n}}}},function(t,e,n){"use strict";var r=n(0),o=n(1),i=r.WeakMap;t.exports=o(i)&&/native code/.test(String(i))},function(t,e,n){"use strict";var r=n(55),o=n(57),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},function(t,e,n){"use strict";var r=n(30),o=n(2),i=n(114),a=n(121),s=n(59),c=o([].concat);t.exports=r("Reflect","ownKeys")||function(t){var e=i.f(s(t)),n=a.f;return n?c(e,n(t)):e}},function(t,e,n){"use strict";var r=n(115),o=n(120).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},function(t,e,n){"use strict";var r=n(2),o=n(9),i=n(28),a=n(116).indexOf,s=n(60),c=r([].push);t.exports=function(t,e){var n,r=i(t),u=0,l=[];for(n in r)!o(s,n)&&o(r,n)&&c(l,n);for(;e.length>u;)o(r,n=e[u++])&&(~a(l,n)||c(l,n));return l}},function(t,e,n){"use strict";var r=n(28),o=n(117),i=n(36),a=function(t){return function(e,n,a){var s=r(e),c=i(s);if(0===c)return!t&&-1;var u,l=o(a,c);if(t&&n!=n){for(;c>l;)if((u=s[l++])!=u)return!0}else for(;c>l;l++)if((t||l in s)&&s[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},function(t,e,n){"use strict";var r=n(62),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},function(t,e,n){"use strict";var r=Math.ceil,o=Math.floor;t.exports=Math.trunc||function(t){var e=+t;return(e>0?o:r)(e)}},function(t,e,n){"use strict";var r=n(62),o=Math.min;t.exports=function(t){var e=r(t);return e>0?o(e,9007199254740991):0}},function(t,e,n){"use strict";t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(t,e,n){"use strict";e.f=Object.getOwnPropertySymbols},function(t,e,n){"use strict";var r=n(3),o=n(1),i=/#|\.prototype\./,a=function(t,e){var n=c[s(t)];return n===l||n!==u&&(o(e)?r(e):!!e)},s=a.normalize=function(t){return String(t).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",l=a.POLYFILL="P";t.exports=a},function(t,e,n){"use strict";var r=n(31),o=n(35),i=n(47),a=n(36),s=TypeError,c="Reduce of empty array with no initial value",u=function(t){return function(e,n,u,l){var f=o(e),p=i(f),d=a(f);if(r(n),0===d&&u<2)throw new s(c);var h=t?d-1:0,v=t?-1:1;if(u<2)for(;;){if(h in p){l=p[h],h+=v;break}if(h+=v,t?h<0:d<=h)throw new s(c)}for(;t?h>=0:d>h;h+=v)h in p&&(l=n(l,p[h],h,f));return l}};t.exports={left:u(!1),right:u(!0)}},function(t,e,n){"use strict";var r=n(3);t.exports=function(t,e){var n=[][t];return!!n&&r((function(){n.call(null,e||function(){return 1},1)}))}},function(t,e,n){"use strict";var r=n(0),o=n(16);t.exports="process"===o(r.process)},function(t,e,n){"use strict";var r=n(24),o=n(0),i=n(127),a=n(128),s=o.WebAssembly,c=7!==new Error("e",{cause:7}).cause,u=function(t,e){var n={};n[t]=a(t,e,c),r({global:!0,constructor:!0,arity:1,forced:c},n)},l=function(t,e){if(s&&s[t]){var n={};n[t]=a("WebAssembly."+t,e,c),r({target:"WebAssembly",stat:!0,constructor:!0,arity:1,forced:c},n)}};u("Error",(function(t){return function(e){return i(t,this,arguments)}})),u("EvalError",(function(t){return function(e){return i(t,this,arguments)}})),u("RangeError",(function(t){return function(e){return i(t,this,arguments)}})),u("ReferenceError",(function(t){return function(e){return i(t,this,arguments)}})),u("SyntaxError",(function(t){return function(e){return i(t,this,arguments)}})),u("TypeError",(function(t){return function(e){return i(t,this,arguments)}})),u("URIError",(function(t){return function(e){return i(t,this,arguments)}})),l("CompileError",(function(t){return function(e){return i(t,this,arguments)}})),l("LinkError",(function(t){return function(e){return i(t,this,arguments)}})),l("RuntimeError",(function(t){return function(e){return i(t,this,arguments)}}))},function(t,e,n){"use strict";var r=n(26),o=Function.prototype,i=o.apply,a=o.call;t.exports="object"==typeof Reflect&&Reflect.apply||(r?a.bind(i):function(){return a.apply(i,arguments)})},function(t,e,n){"use strict";var r=n(30),o=n(9),i=n(13),a=n(51),s=n(63),c=n(61),u=n(132),l=n(133),f=n(134),p=n(137),d=n(138),h=n(5),v=n(56);t.exports=function(t,e,n,m){var g=m?2:1,y=t.split("."),b=y[y.length-1],_=r.apply(null,y);if(_){var w=_.prototype;if(!v&&o(w,"cause")&&delete w.cause,!n)return _;var x=r("Error"),O=e((function(t,e){var n=f(m?e:t,void 0),r=m?new _(t):new _;return void 0!==n&&i(r,"message",n),d(r,O,r.stack,2),this&&a(w,this)&&l(r,this,O),arguments.length>g&&p(r,arguments[g]),r}));if(O.prototype=w,"Error"!==b?s?s(O,x):c(O,x,{name:!0}):h&&"stackTraceLimit"in _&&(u(O,_,"stackTraceLimit"),u(O,_,"prepareStackTrace")),c(O,_),!v)try{w.name!==b&&i(w,"name",b),w.constructor=O}catch(t){}return O}}},function(t,e,n){"use strict";var r=n(2),o=n(31);t.exports=function(t,e,n){try{return r(o(Object.getOwnPropertyDescriptor(t,e)[n]))}catch(t){}}},function(t,e,n){"use strict";var r=n(131),o=String,i=TypeError;t.exports=function(t){if(r(t))return t;throw new i("Can't set "+o(t)+" as a prototype")}},function(t,e,n){"use strict";var r=n(6);t.exports=function(t){return r(t)||null===t}},function(t,e,n){"use strict";var r=n(15).f;t.exports=function(t,e,n){n in t||r(t,n,{configurable:!0,get:function(){return e[n]},set:function(t){e[n]=t}})}},function(t,e,n){"use strict";var r=n(1),o=n(6),i=n(63);t.exports=function(t,e,n){var a,s;return i&&r(a=e.constructor)&&a!==n&&o(s=a.prototype)&&s!==n.prototype&&i(t,s),t}},function(t,e,n){"use strict";var r=n(95);t.exports=function(t,e){return void 0===t?arguments.length<2?"":e:r(t)}},function(t,e,n){"use strict";var r=n(136),o=n(1),i=n(16),a=n(32)("toStringTag"),s=Object,c="Arguments"===i(function(){return arguments}());t.exports=r?i:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=s(t),a))?n:c?i(e):"Object"===(r=i(e))&&o(e.callee)?"Arguments":r}},function(t,e,n){"use strict";var r={};r[n(32)("toStringTag")]="z",t.exports="[object z]"===String(r)},function(t,e,n){"use strict";var r=n(6),o=n(13);t.exports=function(t,e){r(e)&&"cause"in e&&o(t,"cause",e.cause)}},function(t,e,n){"use strict";var r=n(13),o=n(139),i=n(140),a=Error.captureStackTrace;t.exports=function(t,e,n,s){i&&(a?a(t,e):r(t,"stack",o(n,s)))}},function(t,e,n){"use strict";var r=n(2),o=Error,i=r("".replace),a=String(new o("zxcasd").stack),s=/\n\s*at [^:]*:[^\n]*/,c=s.test(a);t.exports=function(t,e){if(c&&"string"==typeof t&&!o.prepareStackTrace)for(;e--;)t=i(t,s,"");return t}},function(t,e,n){"use strict";var r=n(3),o=n(27);t.exports=!r((function(){var t=new Error("a");return!("stack"in t)||(Object.defineProperty(t,"stack",o(1,7)),7!==t.stack)}))},function(t,e,n){"use strict";var r=n(5),o=n(142),i=TypeError,a=Object.getOwnPropertyDescriptor,s=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(t){return t instanceof TypeError}}();t.exports=s?function(t,e){if(o(t)&&!a(t,"length").writable)throw new i("Cannot set read only .length");return t.length=e}:function(t,e){return t.length=e}},function(t,e,n){"use strict";var r=n(16);t.exports=Array.isArray||function(t){return"Array"===r(t)}},function(t,e,n){"use strict";var r=TypeError;t.exports=function(t){if(t>9007199254740991)throw r("Maximum allowed index exceeded");return t}},function(t,e,n){var r=n(64),o=n(145);t.exports=function t(e,n,i,a,s){var c=-1,u=e.length;for(i||(i=o),s||(s=[]);++c0&&i(l)?n>1?t(l,n-1,i,a,s):r(s,l):a||(s[s.length]=l)}return s}},function(t,e,n){var r=n(14),o=n(37),i=n(4),a=r?r.isConcatSpreadable:void 0;t.exports=function(t){return i(t)||o(t)||!!(a&&t&&t[a])}},function(t,e,n){var r=n(12),o=n(11);t.exports=function(t){return o(t)&&"[object Arguments]"==r(t)}},function(t,e,n){var r=n(14),o=Object.prototype,i=o.hasOwnProperty,a=o.toString,s=r?r.toStringTag:void 0;t.exports=function(t){var e=i.call(t,s),n=t[s];try{t[s]=void 0;var r=!0}catch(t){}var o=a.call(t);return r&&(e?t[s]=n:delete t[s]),o}},function(t,e){var n=Object.prototype.toString;t.exports=function(t){return n.call(t)}},function(t,e,n){var r=n(150),o=n(206),i=n(45),a=n(4),s=n(216);t.exports=function(t){return"function"==typeof t?t:null==t?i:"object"==typeof t?a(t)?o(t[0],t[1]):r(t):s(t)}},function(t,e,n){var r=n(151),o=n(205),i=n(82);t.exports=function(t){var e=o(t);return 1==e.length&&e[0][2]?i(e[0][0],e[0][1]):function(n){return n===t||r(n,t,e)}}},function(t,e,n){var r=n(66),o=n(70);t.exports=function(t,e,n,i){var a=n.length,s=a,c=!i;if(null==t)return!s;for(t=Object(t);a--;){var u=n[a];if(c&&u[2]?u[1]!==t[u[0]]:!(u[0]in t))return!1}for(;++a-1}},function(t,e,n){var r=n(18);t.exports=function(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}},function(t,e,n){var r=n(17);t.exports=function(){this.__data__=new r,this.size=0}},function(t,e){t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},function(t,e){t.exports=function(t){return this.__data__.get(t)}},function(t,e){t.exports=function(t){return this.__data__.has(t)}},function(t,e,n){var r=n(17),o=n(38),i=n(40);t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!o||a.length<199)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new i(a)}return n.set(t,e),this.size=n.size,this}},function(t,e,n){var r=n(68),o=n(163),i=n(39),a=n(69),s=/^\[object .+?Constructor\]$/,c=Function.prototype,u=Object.prototype,l=c.toString,f=u.hasOwnProperty,p=RegExp("^"+l.call(f).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(r(t)?p:s).test(a(t))}},function(t,e,n){var r,o=n(164),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!i&&i in t}},function(t,e,n){var r=n(7)["__core-js_shared__"];t.exports=r},function(t,e){t.exports=function(t,e){return null==t?void 0:t[e]}},function(t,e,n){var r=n(167),o=n(17),i=n(38);t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},function(t,e,n){var r=n(168),o=n(169),i=n(170),a=n(171),s=n(172);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}},function(t,e,n){var r=n(72),o=n(228),i=n(233),a=n(73),s=n(234),c=n(41);t.exports=function(t,e,n){var u=-1,l=o,f=t.length,p=!0,d=[],h=d;if(n)p=!1,l=i;else if(f>=200){var v=e?null:s(t);if(v)return c(v);p=!1,l=a,h=new r}else h=e?[]:d;t:for(;++u-1}},function(t,e,n){var r=n(230),o=n(231),i=n(232);t.exports=function(t,e,n){return e==e?i(t,e,n):r(t,o,n)}},function(t,e){t.exports=function(t,e,n,r){for(var o=t.length,i=n+(r?1:-1);r?i--:++i=0&&Math.floor(e)===e&&isFinite(t)}function v(t){return a(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function m(t){return null==t?"":Array.isArray(t)||p(t)&&t.toString===f?JSON.stringify(t,g,2):String(t)}function g(t,e){return e&&e.__v_isRef?e.value:e}function y(t){var e=parseFloat(t);return isNaN(e)?t:e}function b(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(r,1)}}var x=Object.prototype.hasOwnProperty;function O(t,e){return x.call(t,e)}function S(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var C=/-(\w)/g,$=S((function(t){return t.replace(C,(function(t,e){return e?e.toUpperCase():""}))})),k=S((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),E=/\B([A-Z])/g,j=S((function(t){return t.replace(E,"-$1").toLowerCase()}));var T=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function A(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function P(t,e){for(var n in e)t[n]=e[n];return t}function L(t){for(var e={},n=0;n0,Q=G&&G.indexOf("edge/")>0;G&&G.indexOf("android");var tt=G&&/iphone|ipad|ipod|ios/.test(G);G&&/chrome\/\d+/.test(G),G&&/phantomjs/.test(G);var et,nt=G&&G.match(/firefox\/(\d+)/),rt={}.watch,ot=!1;if(X)try{var it={};Object.defineProperty(it,"passive",{get:function(){ot=!0}}),window.addEventListener("test-passive",null,it)}catch(t){}var at=function(){return void 0===et&&(et=!X&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),et},st=X&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function ct(t){return"function"==typeof t&&/native code/.test(t.toString())}var ut,lt="undefined"!=typeof Symbol&&ct(Symbol)&&"undefined"!=typeof Reflect&&ct(Reflect.ownKeys);ut="undefined"!=typeof Set&&ct(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var ft=null;function pt(t){void 0===t&&(t=null),t||ft&&ft._scope.off(),ft=t,t&&t._scope.on()}var dt=function(){function t(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1}return Object.defineProperty(t.prototype,"child",{get:function(){return this.componentInstance},enumerable:!1,configurable:!0}),t}(),ht=function(t){void 0===t&&(t="");var e=new dt;return e.text=t,e.isComment=!0,e};function vt(t){return new dt(void 0,void 0,void 0,String(t))}function mt(t){var e=new dt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}"function"==typeof SuppressedError&&SuppressedError;var gt=0,yt=[],bt=function(){function t(){this._pending=!1,this.id=gt++,this.subs=[]}return t.prototype.addSub=function(t){this.subs.push(t)},t.prototype.removeSub=function(t){this.subs[this.subs.indexOf(t)]=null,this._pending||(this._pending=!0,yt.push(this))},t.prototype.depend=function(e){t.target&&t.target.addDep(this)},t.prototype.notify=function(t){var e=this.subs.filter((function(t){return t}));for(var n=0,r=e.length;n0&&(Gt((u=t(u,"".concat(n||"","_").concat(r)))[0])&&Gt(f)&&(p[l]=vt(f.text+u[0].text),u.shift()),p.push.apply(p,u)):c(u)?Gt(f)?p[l]=vt(f.text+u):""!==u&&p.push(vt(u)):Gt(u)&&Gt(f)?p[l]=vt(f.text+u.text):(s(e._isVList)&&a(u.tag)&&i(u.key)&&a(n)&&(u.key="__vlist".concat(n,"_").concat(r,"__")),p.push(u)));return p}(t):void 0}function Gt(t){return a(t)&&a(t.text)&&!1===t.isComment}function Jt(t,e){var n,r,i,s,c=null;if(o(t)||"string"==typeof t)for(c=new Array(t.length),n=0,r=t.length;n0,s=e?!!e.$stable:!a,c=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(s&&o&&o!==r&&c===o.$key&&!a&&!o.$hasNormal)return o;for(var u in i={},e)e[u]&&"$"!==u[0]&&(i[u]=me(t,n,u,e[u]))}else i={};for(var l in n)l in i||(i[l]=ge(n,l));return e&&Object.isExtensible(e)&&(e._normalized=i),W(i,"$stable",s),W(i,"$key",c),W(i,"$hasNormal",a),i}function me(t,e,n,r){var i=function(){var e=ft;pt(t);var n=arguments.length?r.apply(null,arguments):r({}),i=(n=n&&"object"==typeof n&&!o(n)?[n]:Xt(n))&&n[0];return pt(e),n&&(!i||1===n.length&&i.isComment&&!he(i))?void 0:n};return r.proxy&&Object.defineProperty(e,n,{get:i,enumerable:!0,configurable:!0}),i}function ge(t,e){return function(){return t[e]}}function ye(t){return{get attrs(){if(!t._attrsProxy){var e=t._attrsProxy={};W(e,"_v_attr_proxy",!0),be(e,t.$attrs,r,t,"$attrs")}return t._attrsProxy},get listeners(){t._listenersProxy||be(t._listenersProxy={},t.$listeners,r,t,"$listeners");return t._listenersProxy},get slots(){return function(t){t._slotsProxy||we(t._slotsProxy={},t.$scopedSlots);return t._slotsProxy}(t)},emit:T(t.$emit,t),expose:function(e){e&&Object.keys(e).forEach((function(n){return Ut(t,e,n)}))}}}function be(t,e,n,r,o){var i=!1;for(var a in e)a in t?e[a]!==n[a]&&(i=!0):(i=!0,_e(t,a,r,o));for(var a in t)a in e||(i=!0,delete t[a]);return i}function _e(t,e,n,r){Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){return n[r][e]}})}function we(t,e){for(var n in e)t[n]=e[n];for(var n in t)n in e||delete t[n]}var xe=null;function Oe(t,e){return(t.__esModule||lt&&"Module"===t[Symbol.toStringTag])&&(t=t.default),l(t)?e.extend(t):t}function Se(t){if(o(t))for(var e=0;edocument.createEvent("Event").timeStamp&&(un=function(){return ln.now()})}var fn=function(t,e){if(t.post){if(!e.post)return 1}else if(e.post)return-1;return t.id-e.id};function pn(){var t,e;for(cn=un(),an=!0,en.sort(fn),sn=0;snsn&&en[n].id>t.id;)n--;en.splice(n+1,0,t)}else en.push(t);on||(on=!0,De(pn))}}function hn(t,e){if(t){for(var n=Object.create(null),r=lt?Reflect.ownKeys(t):Object.keys(t),o=0;o-1)if(i&&!O(o,"default"))a=!1;else if(""===a||a===j(t)){var c=Mn(String,o.type);(c<0||s-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!d(t)&&t.test(e)}function Jn(t,e){var n=t.cache,r=t.keys,o=t._vnode,i=t.$vnode;for(var a in n){var s=n[a];if(s){var c=s.name;c&&!e(c)&&Zn(n,a,r,o)}}i.componentOptions.children=void 0}function Zn(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,w(n,e)}Kn.prototype._init=function(t){var e=this;e._uid=qn++,e._isVue=!0,e.__v_skip=!0,e._scope=new Bt(!0),e._scope.parent=void 0,e._scope._vm=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=Tn(Wn(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._provided=n?n._provided:Object.create(null),t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Xe(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,o=n&&n.context;t.$slots=pe(e._renderChildren,o),t.$scopedSlots=n?ve(t.$parent,n.data.scopedSlots,t.$slots):r,t._c=function(e,n,r,o){return Ce(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return Ce(t,e,n,r,o,!0)};var i=n&&n.data;Pt(t,"$attrs",i&&i.attrs||r,null,!0),Pt(t,"$listeners",e._parentListeners||r,null,!0)}(e),tn(e,"beforeCreate",void 0,!1),function(t){var e=hn(t.$options.inject,t);e&&(Et(!1),Object.keys(e).forEach((function(n){Pt(t,n,e[n])})),Et(!0))}(e),Dn(e),function(t){var e=t.$options.provide;if(e){var n=u(e)?e.call(t):e;if(!l(n))return;for(var r=Ft(t),o=lt?Reflect.ownKeys(n):Object.keys(n),i=0;i1?A(n):n;for(var r=A(arguments,1),o='event handler for "'.concat(t,'"'),i=0,a=n.length;iparseInt(this.max)&&Zn(t,e[0],e,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Zn(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){Jn(t,(function(t){return Gn(e,t)}))})),this.$watch("exclude",(function(e){Jn(t,(function(t){return!Gn(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Se(t),n=e&&e.componentOptions;if(n){var r=Xn(n),o=this.include,i=this.exclude;if(o&&(!r||!Gn(o,r))||i&&r&&Gn(i,r))return e;var a=this.cache,s=this.keys,c=null==e.key?n.Ctor.cid+(n.tag?"::".concat(n.tag):""):e.key;a[c]?(e.componentInstance=a[c].componentInstance,w(s,c),s.push(c)):(this.vnodeToCache=e,this.keyToCache=c),e.data.keepAlive=!0}return e||t&&t[0]}}};!function(t){var e={get:function(){return F}};Object.defineProperty(t,"config",e),t.util={warn:On,extend:P,mergeOptions:Tn,defineReactive:Pt},t.set=Lt,t.delete=zt,t.nextTick=De,t.observable=function(t){return At(t),t},t.options=Object.create(null),H.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,P(t.options.components,tr),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=A(arguments,1);return n.unshift(this),u(t.install)?t.install.apply(t,n):u(t)&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=Tn(this.options,t),this}}(t),Yn(t),function(t){H.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&p(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&u(n)&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(Kn),Object.defineProperty(Kn.prototype,"$isServer",{get:at}),Object.defineProperty(Kn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Kn,"FunctionalRenderContext",{value:vn}),Kn.version="2.7.16";var er=b("style,class"),nr=b("input,textarea,option,select,progress"),rr=b("contenteditable,draggable,spellcheck"),or=b("events,caret,typing,plaintext-only"),ir=b("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),ar="http://www.w3.org/1999/xlink",sr=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},cr=function(t){return sr(t)?t.slice(6,t.length):""},ur=function(t){return null==t||!1===t};function lr(t){for(var e=t.data,n=t,r=t;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=fr(r.data,e));for(;a(n=n.parent);)n&&n.data&&(e=fr(e,n.data));return function(t,e){if(a(t)||a(e))return pr(t,dr(e));return""}(e.staticClass,e.class)}function fr(t,e){return{staticClass:pr(t.staticClass,e.staticClass),class:a(t.class)?[t.class,e.class]:e.class}}function pr(t,e){return t?e?t+" "+e:t:e||""}function dr(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,o=t.length;r-1?Ir(t,e,n):ir(e)?ur(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):rr(e)?t.setAttribute(e,function(t,e){return ur(e)||"false"===e?"false":"contenteditable"===t&&or(e)?e:"true"}(e,n)):sr(e)?ur(n)?t.removeAttributeNS(ar,cr(e)):t.setAttributeNS(ar,e,n):Ir(t,e,n)}function Ir(t,e,n){if(ur(n))t.removeAttribute(e);else{if(J&&!Z&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var Nr={create:Rr,update:Rr};function Dr(t,e){var n=e.elm,r=e.data,o=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=lr(e),c=n._transitionClasses;a(c)&&(s=pr(s,dr(c))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var Ur,Hr={create:Dr,update:Dr};function Br(t,e,n){var r=Ur;return function o(){var i=e.apply(null,arguments);null!==i&&qr(t,o,n,r)}}var Fr=Ae&&!(nt&&Number(nt[1])<=53);function Vr(t,e,n,r){if(Fr){var o=cn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}Ur.addEventListener(t,e,ot?{capture:n,passive:r}:n)}function qr(t,e,n,r){(r||Ur).removeEventListener(t,e._wrapper||e,n)}function Wr(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},r=t.data.on||{};Ur=e.elm||t.elm,function(t){if(a(t.__r)){var e=J?"change":"input";t[e]=[].concat(t.__r,t[e]||[]),delete t.__r}a(t.__c)&&(t.change=[].concat(t.__c,t.change||[]),delete t.__c)}(n),Wt(n,r,Vr,qr,Br,e.context),Ur=void 0}}var Kr,Yr={create:Wr,update:Wr,destroy:function(t){return Wr(t,Sr)}};function Xr(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,o=e.elm,c=t.data.domProps||{},u=e.data.domProps||{};for(n in(a(u.__ob__)||s(u._v_attr_proxy))&&(u=e.data.domProps=P({},u)),c)n in u||(o[n]="");for(n in u){if(r=u[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===c[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var l=i(r)?"":String(r);Gr(o,l)&&(o.value=l)}else if("innerHTML"===n&&mr(o.tagName)&&i(o.innerHTML)){(Kr=Kr||document.createElement("div")).innerHTML="".concat(r,"");for(var f=Kr.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;f.firstChild;)o.appendChild(f.firstChild)}else if(r!==c[n])try{o[n]=r}catch(t){}}}}function Gr(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(a(r)){if(r.number)return y(n)!==y(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var Jr={create:Xr,update:Xr},Zr=S((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function Qr(t){var e=to(t.style);return t.staticStyle?P(t.staticStyle,e):e}function to(t){return Array.isArray(t)?L(t):"string"==typeof t?Zr(t):t}var eo,no=/^--/,ro=/\s*!important$/,oo=function(t,e,n){if(no.test(e))t.style.setProperty(e,n);else if(ro.test(n))t.style.setProperty(j(e),n.replace(ro,""),"important");else{var r=ao(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(uo).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" ".concat(t.getAttribute("class")||""," ");n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function fo(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(uo).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" ".concat(t.getAttribute("class")||""," "),r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function po(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&P(e,ho(t.name||"v")),P(e,t),e}return"string"==typeof t?ho(t):void 0}}var ho=S((function(t){return{enterClass:"".concat(t,"-enter"),enterToClass:"".concat(t,"-enter-to"),enterActiveClass:"".concat(t,"-enter-active"),leaveClass:"".concat(t,"-leave"),leaveToClass:"".concat(t,"-leave-to"),leaveActiveClass:"".concat(t,"-leave-active")}})),vo=X&&!Z,mo="transition",go="transitionend",yo="animation",bo="animationend";vo&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(mo="WebkitTransition",go="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(yo="WebkitAnimation",bo="webkitAnimationEnd"));var _o=X?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function wo(t){_o((function(){_o(t)}))}function xo(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),lo(t,e))}function Oo(t,e){t._transitionClasses&&w(t._transitionClasses,e),fo(t,e)}function So(t,e,n){var r=$o(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s="transition"===o?go:bo,c=0,u=function(){t.removeEventListener(s,l),n()},l=function(e){e.target===t&&++c>=a&&u()};setTimeout((function(){c0&&(n="transition",l=a,f=i.length):"animation"===e?u>0&&(n="animation",l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?"transition":"animation":null)?"transition"===n?i.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:"transition"===n&&Co.test(r[mo+"Property"])}}function ko(t,e){for(;t.length1}function Lo(t,e){!0!==e.data.show&&jo(e)}var zo=function(t){var e,n,r={},u=t.modules,l=t.nodeOps;for(e=0;eh?_(t,i(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&x(e,f,h)}(f,v,g,n,u):a(g)?(a(t.text)&&l.setTextContent(f,""),_(f,null,g,0,g.length-1,n)):a(v)?x(v,0,v.length-1):a(t.text)&&l.setTextContent(f,""):t.text!==e.text&&l.setTextContent(f,e.text),a(h)&&a(d=h.hook)&&a(d=d.postpatch)&&d(t,e)}}}function $(t,e,n){if(s(n)&&a(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(I(Do(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function No(t,e){return e.every((function(e){return!I(e,t)}))}function Do(t){return"_value"in t?t._value:t.value}function Uo(t){t.target.composing=!0}function Ho(t){t.target.composing&&(t.target.composing=!1,Bo(t.target,"input"))}function Bo(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function Fo(t){return!t.componentInstance||t.data&&t.data.transition?t:Fo(t.componentInstance._vnode)}var Vo={model:Ro,show:{bind:function(t,e,n){var r=e.value,o=(n=Fo(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,jo(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=Fo(n)).data&&n.data.transition?(n.data.show=!0,r?jo(n,(function(){t.style.display=t.__vOriginalDisplay})):To(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}}},qo={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Wo(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Wo(Se(e.children)):t}function Ko(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var r in o)e[$(r)]=o[r];return e}function Yo(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var Xo=function(t){return t.tag||he(t)},Go=function(t){return"show"===t.name},Jo={name:"transition",props:qo,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Xo)).length){0;var r=this.mode;0;var o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=Wo(o);if(!i)return o;if(this._leaving)return Yo(t,o);var a="__transition-".concat(this._uid,"-");i.key=null==i.key?i.isComment?a+"comment":a+i.tag:c(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=Ko(this),u=this._vnode,l=Wo(u);if(i.data.directives&&i.data.directives.some(Go)&&(i.data.show=!0),l&&l.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,l)&&!he(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=P({},s);if("out-in"===r)return this._leaving=!0,Kt(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Yo(t,o);if("in-out"===r){if(he(i))return u;var p,d=function(){p()};Kt(s,"afterEnter",d),Kt(s,"enterCancelled",d),Kt(f,"delayLeave",(function(t){p=t}))}}return o}}},Zo=P({tag:String,moveClass:String},qo);function Qo(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function ti(t){t.data.newPos=t.elm.getBoundingClientRect()}function ei(t){var e=t.data.pos,n=t.data.newPos,r=e.left-n.left,o=e.top-n.top;if(r||o){t.data.moved=!0;var i=t.elm.style;i.transform=i.WebkitTransform="translate(".concat(r,"px,").concat(o,"px)"),i.transitionDuration="0s"}}delete Zo.mode;var ni={Transition:Jo,TransitionGroup:{props:Zo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Je(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Ko(this),s=0;s-1?yr[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:yr[t]=/HTMLUnknownElement/.test(e.toString())},P(Kn.options.directives,Vo),P(Kn.options.components,ni),Kn.prototype.__patch__=X?zo:z,Kn.prototype.$mount=function(t,e){return function(t,e,n){var r;t.$el=e,t.$options.render||(t.$options.render=ht),tn(t,"beforeMount"),r=function(){t._update(t._render(),n)},new qe(t,r,z,{before:function(){t._isMounted&&!t._isDestroyed&&tn(t,"beforeUpdate")}},!0),n=!1;var o=t._preWatchers;if(o)for(var i=0;i=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(o.path||""),u=e&&e.path||"/",l=c.path?Oi(c.path,u,n||o.append):u,f=function(t,e,n){void 0===e&&(e={});var r,o=n||li;try{r=o(t||"")}catch(t){r={}}for(var i in e){var a=e[i];r[i]=Array.isArray(a)?a.map(ui):ui(a)}return r}(c.query,o.query,r&&r.options.parseQuery),p=o.hash||c.hash;return p&&"#"!==p.charAt(0)&&(p="#"+p),{_normalized:!0,path:l,query:f,hash:p}}var Vi,qi=function(){},Wi={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},custom:Boolean,exact:Boolean,exactPath:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,ariaCurrentValue:{type:String,default:"page"},event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,o=n.resolve(this.to,r,this.append),i=o.location,a=o.route,s=o.href,c={},u=n.options.linkActiveClass,l=n.options.linkExactActiveClass,f=null==u?"router-link-active":u,p=null==l?"router-link-exact-active":l,d=null==this.activeClass?f:this.activeClass,h=null==this.exactActiveClass?p:this.exactActiveClass,v=a.redirectedFrom?di(null,Fi(a.redirectedFrom),null,n):a;c[h]=yi(r,v,this.exactPath),c[d]=this.exact||this.exactPath?c[h]:function(t,e){return 0===t.path.replace(pi,"/").indexOf(e.path.replace(pi,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,v);var m=c[h]?this.ariaCurrentValue:null,g=function(t){Ki(t)&&(e.replace?n.replace(i,qi):n.push(i,qi))},y={click:Ki};Array.isArray(this.event)?this.event.forEach((function(t){y[t]=g})):y[this.event]=g;var b={class:c},_=!this.$scopedSlots.$hasNormal&&this.$scopedSlots.default&&this.$scopedSlots.default({href:s,route:a,navigate:g,isActive:c[d],isExactActive:c[h]});if(_){if(1===_.length)return _[0];if(_.length>1||!_.length)return 0===_.length?t():t("span",{},_)}if("a"===this.tag)b.on=y,b.attrs={href:s,"aria-current":m};else{var w=function t(e){var n;if(e)for(var r=0;r-1&&(s.params[p]=n.params[p]);return s.path=Bi(l.path,s.params),c(l,s,a)}if(s.path){s.params={};for(var d=0;d-1}function Sa(t,e){return Oa(t)&&t._isRouter&&(null==e||t.type===e)}function Ca(t,e,n){var r=function(o){o>=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function $a(t){return function(e,n,r){var o=!1,i=0,a=null;ka(t,(function(t,e,n,s){if("function"==typeof t&&void 0===t.cid){o=!0,i++;var c,u=Ta((function(e){var o;((o=e).__esModule||ja&&"Module"===o[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:Vi.extend(e),n.components[s]=e,--i<=0&&r()})),l=Ta((function(t){var e="Failed to resolve async component "+s+": "+t;a||(a=Oa(t)?t:new Error(e),r(a))}));try{c=t(u,l)}catch(t){l(t)}if(c)if("function"==typeof c.then)c.then(u,l);else{var f=c.component;f&&"function"==typeof f.then&&f.then(u,l)}}})),o||r()}}function ka(t,e){return Ea(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function Ea(t){return Array.prototype.concat.apply([],t)}var ja="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function Ta(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var Aa=function(t,e){this.router=t,this.base=function(t){if(!t)if(Yi){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=vi,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[],this.listeners=[]};function Pa(t,e,n,r){var o=ka(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=Vi.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return Ea(r?o.reverse():o)}function La(t,e){if(e)return function(){return t.apply(e,arguments)}}Aa.prototype.listen=function(t){this.cb=t},Aa.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},Aa.prototype.onError=function(t){this.errorCbs.push(t)},Aa.prototype.transitionTo=function(t,e,n){var r,o=this;try{r=this.router.match(t,this.current)}catch(t){throw this.errorCbs.forEach((function(e){e(t)})),t}var i=this.current;this.confirmTransition(r,(function(){o.updateRoute(r),e&&e(r),o.ensureURL(),o.router.afterHooks.forEach((function(t){t&&t(r,i)})),o.ready||(o.ready=!0,o.readyCbs.forEach((function(t){t(r)})))}),(function(t){n&&n(t),t&&!o.ready&&(Sa(t,ya.redirected)&&i===vi||(o.ready=!0,o.readyErrorCbs.forEach((function(e){e(t)}))))}))},Aa.prototype.confirmTransition=function(t,e,n){var r=this,o=this.current;this.pending=t;var i,a,s=function(t){!Sa(t)&&Oa(t)&&(r.errorCbs.length?r.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)},c=t.matched.length-1,u=o.matched.length-1;if(yi(t,o)&&c===u&&t.matched[c]===o.matched[u])return this.ensureURL(),t.hash&&aa(this.router,o,t,!1),s(((a=wa(i=o,t,ya.duplicated,'Avoided redundant navigation to current location: "'+i.fullPath+'".')).name="NavigationDuplicated",a));var l=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n0)){var e=this.router,n=e.options.scrollBehavior,r=va&&n;r&&this.listeners.push(ia());var o=function(){var n=t.current,o=Ra(t.base);t.current===vi&&o===t._startLocation||t.transitionTo(o,(function(t){r&&aa(e,t,n,!0)}))};window.addEventListener("popstate",o),this.listeners.push((function(){window.removeEventListener("popstate",o)}))}},e.prototype.go=function(t){window.history.go(t)},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){ma(Si(r.base+t.fullPath)),aa(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){ga(Si(r.base+t.fullPath)),aa(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.ensureURL=function(t){if(Ra(this.base)!==this.current.fullPath){var e=Si(this.base+this.current.fullPath);t?ma(e):ga(e)}},e.prototype.getCurrentLocation=function(){return Ra(this.base)},e}(Aa);function Ra(t){var e=window.location.pathname,n=e.toLowerCase(),r=t.toLowerCase();return!t||n!==r&&0!==n.indexOf(Si(r+"/"))||(e=e.slice(t.length)),(e||"/")+window.location.search+window.location.hash}var Ma=function(t){function e(e,n,r){t.call(this,e,n),r&&function(t){var e=Ra(t);if(!/^\/#/.test(e))return window.location.replace(Si(t+"/#"+e)),!0}(this.base)||Ia()}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.setupListeners=function(){var t=this;if(!(this.listeners.length>0)){var e=this.router.options.scrollBehavior,n=va&&e;n&&this.listeners.push(ia());var r=function(){var e=t.current;Ia()&&t.transitionTo(Na(),(function(r){n&&aa(t.router,r,e,!0),va||Ha(r.fullPath)}))},o=va?"popstate":"hashchange";window.addEventListener(o,r),this.listeners.push((function(){window.removeEventListener(o,r)}))}},e.prototype.push=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Ua(t.fullPath),aa(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this,o=this.current;this.transitionTo(t,(function(t){Ha(t.fullPath),aa(r.router,t,o,!1),e&&e(t)}),n)},e.prototype.go=function(t){window.history.go(t)},e.prototype.ensureURL=function(t){var e=this.current.fullPath;Na()!==e&&(t?Ua(e):Ha(e))},e.prototype.getCurrentLocation=function(){return Na()},e}(Aa);function Ia(){var t=Na();return"/"===t.charAt(0)||(Ha("/"+t),!1)}function Na(){var t=window.location.href,e=t.indexOf("#");return e<0?"":t=t.slice(e+1)}function Da(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function Ua(t){va?ma(Da(t)):window.location.hash=t}function Ha(t){va?ga(Da(t)):window.location.replace(Da(t))}var Ba=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){var t=e.current;e.index=n,e.updateRoute(r),e.router.afterHooks.forEach((function(e){e&&e(r,t)}))}),(function(t){Sa(t,ya.duplicated)&&(e.index=n)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(Aa),Fa=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=Ji(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!va&&!1!==t.fallback,this.fallback&&(e="hash"),Yi||(e="abstract"),this.mode=e,e){case"history":this.history=new za(this,t.base);break;case"hash":this.history=new Ma(this,t.base,this.fallback);break;case"abstract":this.history=new Ba(this,t.base);break;default:0}},Va={currentRoute:{configurable:!0}};Fa.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},Va.currentRoute.get=function(){return this.history&&this.history.current},Fa.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null),e.app||e.history.teardown()})),!this.app){this.app=t;var n=this.history;if(n instanceof za||n instanceof Ma){var r=function(t){n.setupListeners(),function(t){var r=n.current,o=e.options.scrollBehavior;va&&o&&"fullPath"in t&&aa(e,t,r,!1)}(t)};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Fa.prototype.beforeEach=function(t){return Wa(this.beforeHooks,t)},Fa.prototype.beforeResolve=function(t){return Wa(this.resolveHooks,t)},Fa.prototype.afterEach=function(t){return Wa(this.afterHooks,t)},Fa.prototype.onReady=function(t,e){this.history.onReady(t,e)},Fa.prototype.onError=function(t){this.history.onError(t)},Fa.prototype.push=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.push(t,e,n)}));this.history.push(t,e,n)},Fa.prototype.replace=function(t,e,n){var r=this;if(!e&&!n&&"undefined"!=typeof Promise)return new Promise((function(e,n){r.history.replace(t,e,n)}));this.history.replace(t,e,n)},Fa.prototype.go=function(t){this.history.go(t)},Fa.prototype.back=function(){this.go(-1)},Fa.prototype.forward=function(){this.go(1)},Fa.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},Fa.prototype.resolve=function(t,e,n){var r=Fi(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?Si(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},Fa.prototype.getRoutes=function(){return this.matcher.getRoutes()},Fa.prototype.addRoute=function(t,e){this.matcher.addRoute(t,e),this.history.current!==vi&&this.history.transitionTo(this.history.getCurrentLocation())},Fa.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==vi&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Fa.prototype,Va);var qa=Fa;function Wa(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Fa.install=function t(e){if(!t.installed||Vi!==e){t.installed=!0,Vi=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",wi),e.component("RouterLink",Wi);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},Fa.version="3.6.5",Fa.isNavigationFailure=Sa,Fa.NavigationFailureType=ya,Fa.START_LOCATION=vi,Yi&&window.Vue&&window.Vue.use(Fa);n(99);n(126),n(92);var Ka={"components/AlgoliaSearchBox":()=>Promise.all([n.e(0),n.e(13)]).then(n.bind(null,313)),"components/DropdownLink":()=>Promise.all([n.e(0),n.e(14)]).then(n.bind(null,261)),"components/DropdownTransition":()=>Promise.all([n.e(0),n.e(19)]).then(n.bind(null,249)),"components/Home":()=>Promise.all([n.e(0),n.e(16)]).then(n.bind(null,287)),"components/NavLink":()=>n.e(23).then(n.bind(null,248)),"components/NavLinks":()=>Promise.all([n.e(0),n.e(12)]).then(n.bind(null,272)),"components/Navbar":()=>Promise.all([n.e(0),n.e(1)]).then(n.bind(null,310)),"components/Page":()=>Promise.all([n.e(0),n.e(11)]).then(n.bind(null,288)),"components/PageEdit":()=>Promise.all([n.e(0),n.e(17)]).then(n.bind(null,274)),"components/PageNav":()=>Promise.all([n.e(0),n.e(15)]).then(n.bind(null,275)),"components/Sidebar":()=>Promise.all([n.e(0),n.e(10)]).then(n.bind(null,289)),"components/SidebarButton":()=>Promise.all([n.e(0),n.e(20)]).then(n.bind(null,290)),"components/SidebarGroup":()=>Promise.all([n.e(0),n.e(3)]).then(n.bind(null,273)),"components/SidebarLink":()=>Promise.all([n.e(0),n.e(18)]).then(n.bind(null,262)),"components/SidebarLinks":()=>Promise.all([n.e(0),n.e(3)]).then(n.bind(null,260)),"global-components/Badge":()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,318)),"global-components/CodeBlock":()=>Promise.all([n.e(0),n.e(5)]).then(n.bind(null,314)),"global-components/CodeGroup":()=>Promise.all([n.e(0),n.e(6)]).then(n.bind(null,315)),"layouts/404":()=>n.e(7).then(n.bind(null,316)),"layouts/Layout":()=>Promise.all([n.e(0),n.e(1),n.e(2)]).then(n.bind(null,317)),NotFound:()=>n.e(7).then(n.bind(null,316)),Layout:()=>Promise.all([n.e(0),n.e(1),n.e(2)]).then(n.bind(null,317))},Ya={"v-862b2260":()=>n.e(29).then(n.bind(null,319)),"v-3e0654b8":()=>n.e(30).then(n.bind(null,320)),"v-16284f9c":()=>n.e(21).then(n.bind(null,321)),"v-25a82b36":()=>n.e(31).then(n.bind(null,322)),"v-0d4a01b4":()=>n.e(24).then(n.bind(null,323)),"v-46e4a2a0":()=>n.e(25).then(n.bind(null,324)),"v-77a0f5a4":()=>n.e(26).then(n.bind(null,325)),"v-d9199bac":()=>n.e(22).then(n.bind(null,326)),"v-a85d48a8":()=>n.e(27).then(n.bind(null,327)),"v-7b1508a8":()=>n.e(28).then(n.bind(null,328)),"v-62fd777c":()=>n.e(32).then(n.bind(null,329))};function Xa(t){const e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}const Ga=/-(\w)/g,Ja=Xa(t=>t.replace(Ga,(t,e)=>e?e.toUpperCase():"")),Za=/\B([A-Z])/g,Qa=Xa(t=>t.replace(Za,"-$1").toLowerCase()),ts=Xa(t=>t.charAt(0).toUpperCase()+t.slice(1));function es(t,e){if(!e)return;if(t(e))return t(e);return e.includes("-")?t(ts(Ja(e))):t(ts(e))||t(Qa(e))}const ns=Object.assign({},Ka,Ya),rs=t=>ns[t],os=t=>Ya[t],is=t=>Ka[t],as=t=>Kn.component(t);function ss(t){return es(os,t)}function cs(t){return es(is,t)}function us(t){return es(rs,t)}function ls(t){return es(as,t)}function fs(...t){return Promise.all(t.filter(t=>t).map(async t=>{if(!ls(t)&&us(t)){const e=await us(t)();Kn.component(t,e.default)}}))}function ps(t,e){"undefined"!=typeof window&&window.__VUEPRESS__&&(window.__VUEPRESS__[t]=e)}var ds=n(89),hs=n.n(ds),vs=n(90),ms=n.n(vs),gs={created(){if(this.siteMeta=this.$site.headTags.filter(([t])=>"meta"===t).map(([t,e])=>e),this.$ssrContext){const e=this.getMergedMetaTags();this.$ssrContext.title=this.$title,this.$ssrContext.lang=this.$lang,this.$ssrContext.pageMeta=(t=e)?t.map(t=>{let e="{e+=` ${n}="${ms()(t[n])}"`}),e+">"}).join("\n "):"",this.$ssrContext.canonicalLink=bs(this.$canonicalUrl)}var t},mounted(){this.currentMetaTags=[...document.querySelectorAll("meta")],this.updateMeta(),this.updateCanonicalLink()},methods:{updateMeta(){document.title=this.$title,document.documentElement.lang=this.$lang;const t=this.getMergedMetaTags();this.currentMetaTags=_s(t,this.currentMetaTags)},getMergedMetaTags(){const t=this.$page.frontmatter.meta||[];return hs()([{name:"description",content:this.$description}],t,this.siteMeta,ws)},updateCanonicalLink(){ys(),this.$canonicalUrl&&document.head.insertAdjacentHTML("beforeend",bs(this.$canonicalUrl))}},watch:{$page(){this.updateMeta(),this.updateCanonicalLink()}},beforeDestroy(){_s(null,this.currentMetaTags),ys()}};function ys(){const t=document.querySelector("link[rel='canonical']");t&&t.remove()}function bs(t=""){return t?``:""}function _s(t,e){if(e&&[...e].filter(t=>t.parentNode===document.head).forEach(t=>document.head.removeChild(t)),t)return t.map(t=>{const e=document.createElement("meta");return Object.keys(t).forEach(n=>{e.setAttribute(n,t[n])}),document.head.appendChild(e),e})}function ws(t){for(const e of["name","property","itemprop"])if(t.hasOwnProperty(e))return t[e]+e;return JSON.stringify(t)}var xs=n(22),Os=n.n(xs),Ss={mounted(){window.addEventListener("scroll",this.onScroll)},methods:{onScroll:Os()((function(){this.setActiveHash()}),300),setActiveHash(){const t=[].slice.call(document.querySelectorAll(".sidebar-link")),e=[].slice.call(document.querySelectorAll(".header-anchor")).filter(e=>t.some(t=>t.hash===e.hash)),n=Math.max(window.pageYOffset,document.documentElement.scrollTop,document.body.scrollTop),r=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight),o=window.innerHeight+n;for(let t=0;t=i.parentElement.offsetTop+10&&(!a||n{this.$nextTick(()=>{this.$vuepress.$set("disableScrollBehavior",!1)})})}}}},beforeDestroy(){window.removeEventListener("scroll",this.onScroll)}},Cs=n(23),$s=n.n(Cs),ks={mounted(){$s.a.configure({showSpinner:!1}),this.$router.beforeEach((t,e,n)=>{t.path===e.path||Kn.component(t.name)||$s.a.start(),n()}),this.$router.afterEach(()=>{$s.a.done(),this.isSidebarOpen=!1})}},Es=(n(237),Object.assign||function(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:{},r=window.Promise||function(t){function e(){}t(e,e)},o=function(t){var e=t.target;e!==C?-1!==b.indexOf(e)&&v({target:e}):h()},i=function(){if(!w&&S.original){var t=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;Math.abs(x-t)>O.scrollOffset&&setTimeout(h,150)}},a=function(t){var e=t.key||t.keyCode;"Escape"!==e&&"Esc"!==e&&27!==e||h()},s=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t;if(t.background&&(C.style.background=t.background),t.container&&t.container instanceof Object&&(e.container=Es({},O.container,t.container)),t.template){var n=Ts(t.template)?t.template:document.querySelector(t.template);e.template=n}return O=Es({},O,e),b.forEach((function(t){t.dispatchEvent(Rs("medium-zoom:update",{detail:{zoom:$}}))})),$},c=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t(Es({},O,e))},u=function(){for(var t=arguments.length,e=Array(t),n=0;n0?e.reduce((function(t,e){return[].concat(t,Ps(e))}),[]):b;return r.forEach((function(t){t.classList.remove("medium-zoom-image"),t.dispatchEvent(Rs("medium-zoom:detach",{detail:{zoom:$}}))})),b=b.filter((function(t){return-1===r.indexOf(t)})),$},f=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return b.forEach((function(r){r.addEventListener("medium-zoom:"+t,e,n)})),_.push({type:"medium-zoom:"+t,listener:e,options:n}),$},p=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return b.forEach((function(r){r.removeEventListener("medium-zoom:"+t,e,n)})),_=_.filter((function(n){return!(n.type==="medium-zoom:"+t&&n.listener.toString()===e.toString())})),$},d=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.target,n=function(){var t={width:document.documentElement.clientWidth,height:document.documentElement.clientHeight,left:0,top:0,right:0,bottom:0},e=void 0,n=void 0;if(O.container)if(O.container instanceof Object)e=(t=Es({},t,O.container)).width-t.left-t.right-2*O.margin,n=t.height-t.top-t.bottom-2*O.margin;else{var r=(Ts(O.container)?O.container:document.querySelector(O.container)).getBoundingClientRect(),o=r.width,i=r.height,a=r.left,s=r.top;t=Es({},t,{width:o,height:i,left:a,top:s})}e=e||t.width-2*O.margin,n=n||t.height-2*O.margin;var c=S.zoomedHd||S.original,u=As(c)?e:c.naturalWidth||e,l=As(c)?n:c.naturalHeight||n,f=c.getBoundingClientRect(),p=f.top,d=f.left,h=f.width,v=f.height,m=Math.min(Math.max(h,u),e)/h,g=Math.min(Math.max(v,l),n)/v,y=Math.min(m,g),b="scale("+y+") translate3d("+((e-h)/2-d+O.margin+t.left)/y+"px, "+((n-v)/2-p+O.margin+t.top)/y+"px, 0)";S.zoomed.style.transform=b,S.zoomedHd&&(S.zoomedHd.style.transform=b)};return new r((function(t){if(e&&-1===b.indexOf(e))t($);else{if(S.zoomed)t($);else{if(e)S.original=e;else{if(!(b.length>0))return void t($);var r=b;S.original=r[0]}if(S.original.dispatchEvent(Rs("medium-zoom:open",{detail:{zoom:$}})),x=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,w=!0,S.zoomed=zs(S.original),document.body.appendChild(C),O.template){var o=Ts(O.template)?O.template:document.querySelector(O.template);S.template=document.createElement("div"),S.template.appendChild(o.content.cloneNode(!0)),document.body.appendChild(S.template)}if(S.original.parentElement&&"PICTURE"===S.original.parentElement.tagName&&S.original.currentSrc&&(S.zoomed.src=S.original.currentSrc),document.body.appendChild(S.zoomed),window.requestAnimationFrame((function(){document.body.classList.add("medium-zoom--opened")})),S.original.classList.add("medium-zoom-image--hidden"),S.zoomed.classList.add("medium-zoom-image--opened"),S.zoomed.addEventListener("click",h),S.zoomed.addEventListener("transitionend",(function e(){w=!1,S.zoomed.removeEventListener("transitionend",e),S.original.dispatchEvent(Rs("medium-zoom:opened",{detail:{zoom:$}})),t($)})),S.original.getAttribute("data-zoom-src")){S.zoomedHd=S.zoomed.cloneNode(),S.zoomedHd.removeAttribute("srcset"),S.zoomedHd.removeAttribute("sizes"),S.zoomedHd.removeAttribute("loading"),S.zoomedHd.src=S.zoomed.getAttribute("data-zoom-src"),S.zoomedHd.onerror=function(){clearInterval(i),console.warn("Unable to reach the zoom image target "+S.zoomedHd.src),S.zoomedHd=null,n()};var i=setInterval((function(){S.zoomedHd.complete&&(clearInterval(i),S.zoomedHd.classList.add("medium-zoom-image--opened"),S.zoomedHd.addEventListener("click",h),document.body.appendChild(S.zoomedHd),n())}),10)}else if(S.original.hasAttribute("srcset")){S.zoomedHd=S.zoomed.cloneNode(),S.zoomedHd.removeAttribute("sizes"),S.zoomedHd.removeAttribute("loading");var a=S.zoomedHd.addEventListener("load",(function(){S.zoomedHd.removeEventListener("load",a),S.zoomedHd.classList.add("medium-zoom-image--opened"),S.zoomedHd.addEventListener("click",h),document.body.appendChild(S.zoomedHd),n()}))}else n()}}}))},h=function(){return new r((function(t){if(!w&&S.original){w=!0,document.body.classList.remove("medium-zoom--opened"),S.zoomed.style.transform="",S.zoomedHd&&(S.zoomedHd.style.transform=""),S.template&&(S.template.style.transition="opacity 150ms",S.template.style.opacity=0),S.original.dispatchEvent(Rs("medium-zoom:close",{detail:{zoom:$}})),S.zoomed.addEventListener("transitionend",(function e(){S.original.classList.remove("medium-zoom-image--hidden"),document.body.removeChild(S.zoomed),S.zoomedHd&&document.body.removeChild(S.zoomedHd),document.body.removeChild(C),S.zoomed.classList.remove("medium-zoom-image--opened"),S.template&&document.body.removeChild(S.template),w=!1,S.zoomed.removeEventListener("transitionend",e),S.original.dispatchEvent(Rs("medium-zoom:closed",{detail:{zoom:$}})),S.original=null,S.zoomed=null,S.zoomedHd=null,S.template=null,t($)}))}else t($)}))},v=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.target;return S.original?h():d({target:e})},m=function(){return O},g=function(){return b},y=function(){return S.original},b=[],_=[],w=!1,x=0,O=n,S={original:null,zoomed:null,zoomedHd:null,template:null};"[object Object]"===Object.prototype.toString.call(e)?O=e:(e||"string"==typeof e)&&u(e),O=Es({margin:0,background:"#fff",scrollOffset:40,container:null,template:null},O);var C=Ls(O.background);document.addEventListener("click",o),document.addEventListener("keyup",a),document.addEventListener("scroll",i),window.addEventListener("resize",h);var $={open:d,close:h,toggle:v,update:s,clone:c,attach:u,detach:l,on:f,off:p,getOptions:m,getImages:g,getZoomedImage:y};return $},Is={data:()=>({zoom:null}),mounted(){this.updateZoom()},updated(){this.updateZoom()},methods:{updateZoom(){setTimeout(()=>{this.zoom&&this.zoom.detach(),this.zoom=Ms(".theme-default-content :not(a) > img",void 0)},1e3)}}},Ns=n(91),Ds=n.n(Ns),Us=(n(238),[gs,Ss,ks,Is,{mounted(){Ds.a.polyfill()}}]),Hs={name:"GlobalLayout",computed:{layout(){const t=this.getLayout();return ps("layout",t),Kn.component(t)}},methods:{getLayout(){if(this.$page.path){const t=this.$page.frontmatter.layout;return t&&(this.$vuepress.getLayoutAsyncComponent(t)||this.$vuepress.getVueComponent(t))?t:"Layout"}return"NotFound"}}},Bs=n(8),Fs=Object(Bs.a)(Hs,(function(){return(0,this._self._c)(this.layout,{tag:"component"})}),[],!1,null,null,null).exports;!function(t,e,n){switch(e){case"components":t[e]||(t[e]={}),Object.assign(t[e],n);break;case"mixins":t[e]||(t[e]=[]),t[e].push(...n);break;default:throw new Error("Unknown option name.")}}(Fs,"mixins",Us);const Vs=[{name:"v-862b2260",path:"/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-862b2260").then(n)}},{path:"/index.html",redirect:"/"},{name:"v-3e0654b8",path:"/part-01/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-3e0654b8").then(n)}},{path:"/part-01/index.html",redirect:"/part-01/"},{name:"v-16284f9c",path:"/part-04/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-16284f9c").then(n)}},{path:"/part-04/index.html",redirect:"/part-04/"},{name:"v-25a82b36",path:"/part-02/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-25a82b36").then(n)}},{path:"/part-02/index.html",redirect:"/part-02/"},{name:"v-0d4a01b4",path:"/part-03/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-0d4a01b4").then(n)}},{path:"/part-03/index.html",redirect:"/part-03/"},{name:"v-46e4a2a0",path:"/part-05/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-46e4a2a0").then(n)}},{path:"/part-05/index.html",redirect:"/part-05/"},{name:"v-77a0f5a4",path:"/part-06/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-77a0f5a4").then(n)}},{path:"/part-06/index.html",redirect:"/part-06/"},{name:"v-d9199bac",path:"/part-08/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-d9199bac").then(n)}},{path:"/part-08/index.html",redirect:"/part-08/"},{name:"v-a85d48a8",path:"/part-07/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-a85d48a8").then(n)}},{path:"/part-07/index.html",redirect:"/part-07/"},{name:"v-7b1508a8",path:"/part-09/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-7b1508a8").then(n)}},{path:"/part-09/index.html",redirect:"/part-09/"},{name:"v-62fd777c",path:"/part-10/",component:Fs,beforeEnter:(t,e,n)=>{fs("Layout","v-62fd777c").then(n)}},{path:"/part-10/index.html",redirect:"/part-10/"},{path:"*",component:Fs}],qs={title:"Kubernetes + Knative + GitLab + Harbor",description:"Kubernetes + Knative + GitLab + Harbor",base:"/k8s-knative-gitlab-harbor/",headTags:[["link",{rel:"icon",href:"https://kubernetes.io/images/favicon.png"}]],pages:[{title:"Kubernetes + Knative + GitLab + Harbor",frontmatter:{readingShow:"top"},regularPath:"/",relativePath:"README.md",key:"v-862b2260",path:"/",headers:[{level:2,title:"Requirements",slug:"requirements"},{level:2,title:"Content",slug:"content"},{level:2,title:"Asciinema",slug:"asciinema"}],lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Create k8s cluster",frontmatter:{readingShow:"top"},regularPath:"/part-01/",relativePath:"part-01/README.md",key:"v-3e0654b8",path:"/part-01/",headers:[{level:2,title:"Prepare the local working environment",slug:"prepare-the-local-working-environment"},{level:2,title:"Configure AWS",slug:"configure-aws"},{level:2,title:"Create K8s in AWS",slug:"create-k8s-in-aws"}],lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Install Harbor",frontmatter:{readingShow:"top"},regularPath:"/part-04/",relativePath:"part-04/README.md",key:"v-16284f9c",path:"/part-04/",lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Install Helm",frontmatter:{readingShow:"top"},regularPath:"/part-02/",relativePath:"part-02/README.md",key:"v-25a82b36",path:"/part-02/",lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Istio + Knative + cert-manager + kubed installation",frontmatter:{readingShow:"top"},regularPath:"/part-03/",relativePath:"part-03/README.md",key:"v-0d4a01b4",path:"/part-03/",headers:[{level:2,title:"Install cert-manager",slug:"install-cert-manager"},{level:3,title:"Create ClusterIssuer for Let's Encrypt",slug:"create-clusterissuer-for-let-s-encrypt"},{level:2,title:"Generate TLS certificate",slug:"generate-tls-certificate"},{level:2,title:"Install kubed",slug:"install-kubed"},{level:2,title:"Install Istio",slug:"install-istio"},{level:2,title:"Create DNS records",slug:"create-dns-records"}],lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Install GitLab",frontmatter:{readingShow:"top"},regularPath:"/part-05/",relativePath:"part-05/README.md",key:"v-46e4a2a0",path:"/part-05/",lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Install Knative",frontmatter:{readingShow:"top"},regularPath:"/part-06/",relativePath:"part-06/README.md",key:"v-77a0f5a4",path:"/part-06/",headers:[{level:2,title:"Enable automatic TLS certificate provisioning for Knative",slug:"enable-automatic-tls-certificate-provisioning-for-knative"}],lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Automated deployment with Tekton",frontmatter:{readingShow:"top"},regularPath:"/part-08/",relativePath:"part-08/README.md",key:"v-d9199bac",path:"/part-08/",headers:[{level:2,title:"Fork podinfo application",slug:"fork-podinfo-application"},{level:2,title:"Create Tekton Triggers configuration",slug:"create-tekton-triggers-configuration"},{level:3,title:"Configure webhook",slug:"configure-webhook"},{level:2,title:"Change the source code of the app",slug:"change-the-source-code-of-the-app"}],lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Build and run container image using Knative + Tekton",frontmatter:{readingShow:"top"},regularPath:"/part-07/",relativePath:"part-07/README.md",key:"v-a85d48a8",path:"/part-07/",lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Knative operations",frontmatter:{readingShow:"top"},regularPath:"/part-09/",relativePath:"part-09/README.md",key:"v-7b1508a8",path:"/part-09/",lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3},{title:"Clean-up",frontmatter:{readingShow:"top"},regularPath:"/part-10/",relativePath:"part-10/README.md",key:"v-62fd777c",path:"/part-10/",lastUpdated:"4/7/2024, 2:23:51 AM",lastUpdatedTimestamp:1712456631e3}],themeConfig:{displayAllHeaders:!0,lastUpdated:!0,repo:"ruzickap/k8s-knative-gitlab-harbor",docsDir:"docs",editLinks:!0,logo:"https://kubernetes.io/images/favicon.png",nav:[{text:"Home",link:"/"},{text:"Links",items:[{text:"GitLab",link:"https://gitlab.com"},{text:"Harbor",link:"https://goharbor.io"},{text:"Knative",link:"https://cloud.google.com/knative"}]}],sidebar:["/","/part-01/","/part-02/","/part-03/","/part-04/","/part-05/","/part-06/","/part-07/","/part-08/","/part-09/","/part-10/"]}};n(239);Kn.component("Badge",()=>Promise.all([n.e(0),n.e(4)]).then(n.bind(null,318))),Kn.component("CodeBlock",()=>Promise.all([n.e(0),n.e(5)]).then(n.bind(null,314))),Kn.component("CodeGroup",()=>Promise.all([n.e(0),n.e(6)]).then(n.bind(null,315)));n(240);var Ws={name:"BackToTop",props:{threshold:{type:Number,default:300}},data:()=>({scrollTop:null}),computed:{show(){return this.scrollTop>this.threshold}},mounted(){this.scrollTop=this.getScrollTop(),window.addEventListener("scroll",Os()(()=>{this.scrollTop=this.getScrollTop()},100))},methods:{getScrollTop:()=>window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,scrollToTop(){window.scrollTo({top:0,behavior:"smooth"}),this.scrollTop=0}}},Ks=(n(241),Object(Bs.a)(Ws,(function(){var t=this._self._c;return t("transition",{attrs:{name:"fade"}},[this.show?t("svg",{staticClass:"go-to-top",attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 49.484 28.284"},on:{click:this.scrollToTop}},[t("g",{attrs:{transform:"translate(-229 -126.358)"}},[t("rect",{attrs:{fill:"currentColor",width:"35",height:"5",rx:"2",transform:"translate(229 151.107) rotate(-45)"}}),this._v(" "),t("rect",{attrs:{fill:"currentColor",width:"35",height:"5",rx:"2",transform:"translate(274.949 154.642) rotate(-135)"}})])]):this._e()])}),[],!1,null,"5fd4ef0c",null).exports),Ys={name:"ReadingProgress",data:()=>({readingTop:0,readingHeight:1,progressStyle:null,transform:void 0,running:!1}),watch:{$readingShow(){this.progressStyle=this.getProgressStyle(),this.$readingShow&&window.addEventListener("scroll",this.base)}},mounted(){this.transform=this.getTransform(),this.progressStyle=this.getProgressStyle(),this.$readingShow&&window.addEventListener("scroll",this.base)},beforeDestroy(){this.$readingShow&&window.removeEventListener("scroll",this.base)},methods:{base(){this.running||(this.running=!0,requestAnimationFrame(this.getReadingBase))},getReadingBase(){this.readingHeight=this.getReadingHeight()-this.getScreenHeight(),this.readingTop=this.getReadingTop(),this.progressStyle=this.getProgressStyle(),this.running=!1},getReadingHeight:()=>Math.max(document.body.scrollHeight,document.body.offsetHeight,0),getScreenHeight:()=>Math.max(window.innerHeight,document.documentElement.clientHeight,0),getReadingTop:()=>Math.max(window.pageYOffset,document.documentElement.scrollTop,0),getTransform(){const t=document.createElement("div");return["transform","-webkit-transform","-moz-transform","-o-transform","-ms-transform"].find(e=>e in t.style)||void 0},getProgressStyle(){const t=this.readingTop/this.readingHeight;switch(this.$readingShow){case"top":case"bottom":return this.transform?`${this.transform}: scaleX(${t})`:`width: ${100*t}%`;case"left":case"right":return this.transform?`${this.transform}: scaleY(${t})`:`height: ${100*t}%`;default:return null}}}},Xs=(n(242),Object(Bs.a)(Ys,(function(){var t=this._self._c;return t("ClientOnly",[this.$readingShow?t("div",{staticClass:"reading-progress",class:this.$readingShow},[t("div",{staticClass:"progress",style:this.progressStyle})]):this._e()])}),[],!1,null,"3640397f",null).exports);function Gs(t){const e=document.documentElement.getBoundingClientRect(),n=t.getBoundingClientRect();return{x:n.left-e.left,y:n.top-e.top}}var Js=[{},({Vue:t})=>{t.mixin({computed:{$dataBlock(){return this.$options.__data__block__}}})},{},{},({Vue:t})=>{t.component("BackToTop",Ks)},({Vue:t})=>{t.component(Xs.name,Xs),t.mixin({computed:{$readingShow(){return this.$page.frontmatter.readingShow}}})},({Vue:t,router:e})=>{e.options.scrollBehavior=(e,n,r)=>{if(r)return window.scrollTo({top:r.y,behavior:"smooth"});if(!e.hash)return window.scrollTo({top:0,behavior:"smooth"});{if(t.$vuepress.$get("disableScrollBehavior"))return;const n=e.hash.slice(1),r=document.getElementById(n)||document.querySelector(`[name='${n}']`);if(r)return window.scrollTo({top:Gs(r).y,behavior:"smooth"})}}}],Zs=["BackToTop","ReadingProgress"];class Qs extends class{constructor(){this.store=new Kn({data:{state:{}}})}$get(t){return this.store.state[t]}$set(t,e){Kn.set(this.store.state,t,e)}$emit(...t){this.store.$emit(...t)}$on(...t){this.store.$on(...t)}}{}Object.assign(Qs.prototype,{getPageAsyncComponent:ss,getLayoutAsyncComponent:cs,getAsyncComponent:us,getVueComponent:ls});var tc={install(t){const e=new Qs;t.$vuepress=e,t.prototype.$vuepress=e}};function ec(t,e){const n=e.toLowerCase();return t.options.routes.some(t=>t.path.toLowerCase()===n)}var nc={props:{pageKey:String,slotKey:{type:String,default:"default"}},render(t){const e=this.pageKey||this.$parent.$page.key;return ps("pageKey",e),Kn.component(e)||Kn.component(e,ss(e)),Kn.component(e)?t(e):t("")}},rc={functional:!0,props:{slotKey:String,required:!0},render:(t,{props:e,slots:n})=>t("div",{class:["content__"+e.slotKey]},n()[e.slotKey])},oc={computed:{openInNewWindowTitle(){return this.$themeLocaleConfig.openNewWindowText||"(opens new window)"}}},ic=(n(243),n(244),Object(Bs.a)(oc,(function(){var t=this._self._c;return t("span",[t("svg",{staticClass:"icon outbound",attrs:{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",focusable:"false",x:"0px",y:"0px",viewBox:"0 0 100 100",width:"15",height:"15"}},[t("path",{attrs:{fill:"currentColor",d:"M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"}}),this._v(" "),t("polygon",{attrs:{fill:"currentColor",points:"45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"}})]),this._v(" "),t("span",{staticClass:"sr-only"},[this._v(this._s(this.openInNewWindowTitle))])])}),[],!1,null,null,null).exports),ac={functional:!0,render(t,{parent:e,children:n}){if(e._isMounted)return n;e.$once("hook:mounted",()=>{e.$forceUpdate()})}};Kn.config.productionTip=!1,Kn.use(qa),Kn.use(tc),Kn.mixin(function(t,e,n=Kn){!function(t){t.locales&&Object.keys(t.locales).forEach(e=>{t.locales[e].path=e});Object.freeze(t)}(e),n.$vuepress.$set("siteData",e);const r=new(t(n.$vuepress.$get("siteData"))),o=Object.getOwnPropertyDescriptors(Object.getPrototypeOf(r)),i={};return Object.keys(o).reduce((t,e)=>(e.startsWith("$")&&(t[e]=o[e].get),t),i),{computed:i}}(t=>class{setPage(t){this.__page=t}get $site(){return t}get $themeConfig(){return this.$site.themeConfig}get $frontmatter(){return this.$page.frontmatter}get $localeConfig(){const{locales:t={}}=this.$site;let e,n;for(const r in t)"/"===r?n=t[r]:0===this.$page.path.indexOf(r)&&(e=t[r]);return e||n||{}}get $siteTitle(){return this.$localeConfig.title||this.$site.title||""}get $canonicalUrl(){const{canonicalUrl:t}=this.$page.frontmatter;return"string"==typeof t&&t}get $title(){const t=this.$page,{metaTitle:e}=this.$page.frontmatter;if("string"==typeof e)return e;const n=this.$siteTitle,r=t.frontmatter.home?null:t.frontmatter.title||t.title;return n?r?r+" | "+n:n:r||"VuePress"}get $description(){const t=function(t){if(t){const e=t.filter(t=>"description"===t.name)[0];if(e)return e.content}}(this.$page.frontmatter.meta);return t||(this.$page.frontmatter.description||this.$localeConfig.description||this.$site.description||"")}get $lang(){return this.$page.frontmatter.lang||this.$localeConfig.lang||"en-US"}get $localePath(){return this.$localeConfig.path||"/"}get $themeLocaleConfig(){return(this.$site.themeConfig.locales||{})[this.$localePath]||{}}get $page(){return this.__page?this.__page:function(t,e){for(let n=0;nn||(t.hash?!Kn.$vuepress.$get("disableScrollBehavior")&&{selector:decodeURIComponent(t.hash)}:{x:0,y:0})});!function(t){t.beforeEach((e,n,r)=>{if(ec(t,e.path))r();else if(/(\/|\.html)$/.test(e.path))if(/\/$/.test(e.path)){const n=e.path.replace(/\/$/,"")+".html";ec(t,n)?r(n):r()}else r();else{const n=e.path+"/",o=e.path+".html";ec(t,o)?r(o):ec(t,n)?r(n):r()}})}(n);const r={};try{await Promise.all(Js.filter(t=>"function"==typeof t).map(e=>e({Vue:Kn,options:r,router:n,siteData:qs,isServer:t})))}catch(t){console.error(t)}return{app:new Kn(Object.assign(r,{router:n,render:t=>t("div",{attrs:{id:"app"}},[t("RouterView",{ref:"layout"}),t("div",{class:"global-ui"},Zs.map(e=>t(e)))])})),router:n}}(!1).then(({app:t,router:e})=>{e.onReady(()=>{t.$mount("#app")})})}]); \ No newline at end of file diff --git a/assets/js/vendors~docsearch.857e8e87.js b/assets/js/vendors~docsearch.857e8e87.js new file mode 100644 index 0000000..2268f29 --- /dev/null +++ b/assets/js/vendors~docsearch.857e8e87.js @@ -0,0 +1,3 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[9],{311:function(t,e,n){ +/*! docsearch 2.6.3 | © Algolia | github.com/algolia/docsearch */ +var r;"undefined"!=typeof self&&self,r=function(){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:r})},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=22)}([function(t,e,n){"use strict";var r,i=n(1);function s(t){return t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}t.exports={isArray:null,isFunction:null,isObject:null,bind:null,each:null,map:null,mixin:null,isMsie:function(t){if(void 0===t&&(t=navigator.userAgent),/(msie|trident)/i.test(t)){var e=t.match(/(msie |rv:)(\d+(.\d+)?)/i);if(e)return e[2]}return!1},escapeRegExChars:function(t){return t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},isNumber:function(t){return"number"==typeof t},toStr:function(t){return null==t?"":t+""},cloneDeep:function(t){var e=this.mixin({},t),n=this;return this.each(e,(function(t,r){t&&(n.isArray(t)?e[r]=[].concat(t):n.isObject(t)&&(e[r]=n.cloneDeep(t)))})),e},error:function(t){throw new Error(t)},every:function(t,e){var n=!0;return t?(this.each(t,(function(r,i){n&&(n=e.call(null,r,i,t)&&n)})),!!n):n},any:function(t,e){var n=!1;return t?(this.each(t,(function(r,i){if(e.call(null,r,i,t))return n=!0,!1})),n):n},getUniqueId:(r=0,function(){return r++}),templatify:function(t){if(this.isFunction(t))return t;var e=i.element(t);return"SCRIPT"===e.prop("tagName")?function(){return e.text()}:function(){return String(t)}},defer:function(t){setTimeout(t,0)},noop:function(){},formatPrefix:function(t,e){return e?"":t+"-"},className:function(t,e,n){return(n?"":".")+t+e},escapeHighlightedString:function(t,e,n){e=e||"";var r=document.createElement("div");r.appendChild(document.createTextNode(e)),n=n||"";var i=document.createElement("div");i.appendChild(document.createTextNode(n));var o=document.createElement("div");return o.appendChild(document.createTextNode(t)),o.innerHTML.replace(RegExp(s(r.innerHTML),"g"),e).replace(RegExp(s(i.innerHTML),"g"),n)}}},function(t,e,n){"use strict";t.exports={element:null}},function(t,e){var n=Object.prototype.hasOwnProperty,r=Object.prototype.toString;t.exports=function(t,e,i){if("[object Function]"!==r.call(e))throw new TypeError("iterator must be a function");var s=t.length;if(s===+s)for(var o=0;o was loaded but did not call our provided callback"),JSONPScriptError:s("JSONPScriptError"," + + diff --git a/part-01/index.html b/part-01/index.html new file mode 100644 index 0000000..2e0d4a0 --- /dev/null +++ b/part-01/index.html @@ -0,0 +1,181 @@ + + + + + + Create k8s cluster | Kubernetes + Knative + GitLab + Harbor + + + + + + + + + + + + diff --git a/part-02/index.html b/part-02/index.html new file mode 100644 index 0000000..f8b675b --- /dev/null +++ b/part-02/index.html @@ -0,0 +1,77 @@ + + + + + + Install Helm | Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

# Install Helm

Install Helm (opens new window) binary:

curl -s https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
+

Output:

Downloading https://get.helm.sh/helm-v3.0.2-linux-amd64.tar.gz
+Preparing to install helm into /usr/local/bin
+helm installed into /usr/local/bin/helm
+

Add the "stable" repository:

helm repo add stable https://kubernetes-charts.storage.googleapis.com/
+helm repo update
+

Output:

"stable" has been added to your repositories
+Hang tight while we grab the latest from your chart repositories...
+...Successfully got an update from the "stable" chart repository
+Update Complete. ⎈ Happy Helming!⎈
+

Install kube2iam to restrict pod's access:

helm install kube2iam stable/kube2iam --namespace=kube-system \
+  --set host.iptables=true \
+  --set rbac.create=true
+

Output:

NAME: kube2iam
+LAST DEPLOYED: Fri Dec 27 10:48:20 2019
+NAMESPACE: kube-system
+STATUS: deployed
+REVISION: 1
+TEST SUITE: None
+NOTES:
+To verify that kube2iam has started, run:
+
+  kubectl --namespace=kube-system get pods -l "app.kubernetes.io/name=kube2iam,app.kubernetes.io/instance=kube2iam"
+
+Add an iam.amazonaws.com/role annotation to your pods with the role you want them to assume.
+
+  https://github.com/jtblin/kube2iam#kubernetes-annotation
+
+Use `curl` to verify the pod's role from within:
+
+  curl http://169.254.169.254/latest/meta-data/iam/security-credentials/
+
+ + + diff --git a/part-03/index.html b/part-03/index.html new file mode 100644 index 0000000..54efebb --- /dev/null +++ b/part-03/index.html @@ -0,0 +1,383 @@ + + + + + + Istio + Knative + cert-manager + kubed installation | Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

# Istio + Knative + cert-manager + kubed installation

Before we move on with other tasks it is necessary to install Nginx Ingress. +It's also handy to install cert-manager for managing SSL certificates.

# Install cert-manager

cert-manager architecture:

cert-manager high level overview

Install the CRDs resources separately:

kubectl apply -f https://raw.githubusercontent.com/jetstack/cert-manager/release-0.10/deploy/manifests/00-crds.yaml
+sleep 5
+

Create the namespace for cert-manager and label it to disable resource +validation:

kubectl create namespace cert-manager
+kubectl label namespace cert-manager certmanager.k8s.io/disable-validation=true
+

Install the cert-manager Helm chart:

helm repo add jetstack https://charts.jetstack.io
+helm repo update
+helm install cert-manager --namespace cert-manager --wait jetstack/cert-manager --version v0.10.1
+

Output:

"jetstack" has been added to your repositories
+Hang tight while we grab the latest from your chart repositories...
+...Successfully got an update from the "jetstack" chart repository
+...Successfully got an update from the "stable" chart repository
+Update Complete. ⎈ Happy Helming!⎈
+NAME: cert-manager
+LAST DEPLOYED: Fri Dec 27 10:48:40 2019
+NAMESPACE: cert-manager
+STATUS: deployed
+REVISION: 1
+TEST SUITE: None
+NOTES:
+cert-manager has been deployed successfully!
+
+In order to begin issuing certificates, you will need to set up a ClusterIssuer
+or Issuer resource (for example, by creating a 'letsencrypt-staging' issuer).
+
+More information on the different types of issuers and how to configure them
+can be found in our documentation:
+
+https://docs.cert-manager.io/en/latest/reference/issuers.html
+
+For information on how to configure cert-manager to automatically provision
+Certificates for Ingress resources, take a look at the `ingress-shim`
+documentation:
+
+https://docs.cert-manager.io/en/latest/reference/ingress-shim.html
+

# Create ClusterIssuer for Let's Encrypt

Create ClusterIssuer for Route53 used by cert-manager. It will allow Let's +Encrypt to generate certificate. Route53 (DNS) method of requesting certificate +from Let's Encrypt must be used to create wildcard certificate *.mylabs.dev +(details here (opens new window)).

ACME DNS Challenge

(https://b3n.org/intranet-ssl-certificates-using-lets-encrypt-dns-01/ (opens new window))

export USER_AWS_SECRET_ACCESS_KEY_BASE64=$(echo -n "$USER_AWS_SECRET_ACCESS_KEY" | base64)
+cat << EOF | kubectl apply -f -
+apiVersion: v1
+kind: Secret
+metadata:
+  name: aws-user-secret-access-key-secret
+  namespace: cert-manager
+data:
+  secret-access-key: $USER_AWS_SECRET_ACCESS_KEY_BASE64
+---
+apiVersion: certmanager.k8s.io/v1alpha1
+kind: ClusterIssuer
+metadata:
+  name: letsencrypt-staging-dns
+  namespace: cert-manager
+spec:
+  acme:
+    server: https://acme-staging-v02.api.letsencrypt.org/directory
+    email: petr.ruzicka@gmail.com
+    privateKeySecretRef:
+      name: letsencrypt-staging-dns
+    dns01:
+      providers:
+      - name: aws-route53
+        route53:
+          accessKeyID: ${USER_AWS_ACCESS_KEY_ID}
+          region: eu-central-1
+          secretAccessKeySecretRef:
+            name: aws-user-secret-access-key-secret
+            key: secret-access-key
+---
+apiVersion: certmanager.k8s.io/v1alpha1
+kind: ClusterIssuer
+metadata:
+  name: letsencrypt-production-dns
+  namespace: cert-manager
+spec:
+  acme:
+    server: https://acme-v02.api.letsencrypt.org/directory
+    email: petr.ruzicka@gmail.com
+    privateKeySecretRef:
+      name: letsencrypt-production-dns
+    dns01:
+      providers:
+      - name: aws-route53
+        route53:
+          accessKeyID: ${USER_AWS_ACCESS_KEY_ID}
+          region: eu-central-1
+          secretAccessKeySecretRef:
+            name: aws-user-secret-access-key-secret
+            key: secret-access-key
+EOF
+

# Generate TLS certificate

Create certificate using cert-manager:

cat << EOF | kubectl apply -f -
+apiVersion: certmanager.k8s.io/v1alpha1
+kind: Certificate
+metadata:
+  name: ingress-cert-${LETSENCRYPT_ENVIRONMENT}
+  namespace: cert-manager
+spec:
+  secretName: ingress-cert-${LETSENCRYPT_ENVIRONMENT}
+  issuerRef:
+    kind: ClusterIssuer
+    name: letsencrypt-${LETSENCRYPT_ENVIRONMENT}-dns
+  commonName: "*.${MY_DOMAIN}"
+  dnsNames:
+  - "*.${MY_DOMAIN}"
+  acme:
+    config:
+    - dns01:
+        provider: aws-route53
+      domains:
+      - "*.${MY_DOMAIN}"
+EOF
+

(https://www.openshift.com/blog/self-serviced-end-to-end-encryption-approaches-for-applications-deployed-in-openshift (opens new window))

# Install kubed

It's necessary to copy the wildcard certificate across all "future" namespaces +and that's the reason why kubed (opens new window) needs to be +installed (for now). +kubed (opens new window) can synchronize ConfigMaps/Secrets (opens new window) +across Kubernetes namespaces/clusters.

Kubed - synchronize secret diagram:

Kubed - synchronize secret

Add kubed helm repository:

helm repo add appscode https://charts.appscode.com/stable/
+helm repo update
+

Install kubed:

helm install kubed appscode/kubed --version 0.11.0 --namespace kube-system --wait \
+  --set apiserver.enabled=false \
+  --set config.clusterName=my_k8s_cluster
+

Output:

NAME: kubed
+LAST DEPLOYED: Fri Dec 27 10:49:39 2019
+NAMESPACE: kube-system
+STATUS: deployed
+REVISION: 1
+TEST SUITE: None
+NOTES:
+To verify that Kubed has started, run:
+
+  kubectl --namespace=kube-system get deployments -l "release=kubed, app=kubed"
+

Annotate (mark) the cert-manager secret to be copied to other namespaces +if necessary:

kubectl annotate secret ingress-cert-${LETSENCRYPT_ENVIRONMENT} -n cert-manager kubed.appscode.com/sync="app=kubed"
+

# Install Istio

Add Istio helm chart repository:

export ISTIO_VERSION="1.3.6"
+helm repo add istio.io https://storage.googleapis.com/istio-release/releases/${ISTIO_VERSION}/charts/
+helm repo update
+

Install CRDs for Istio:

kubectl create namespace istio-system
+helm install istio-init istio.io/istio-init --wait --namespace istio-system --version ${ISTIO_VERSION}
+kubectl -n istio-system wait --for=condition=complete job --all
+

Output:

namespace/istio-system created
+NAME: istio-init
+LAST DEPLOYED: Fri Dec 27 10:49:56 2019
+NAMESPACE: istio-system
+STATUS: deployed
+REVISION: 1
+TEST SUITE: None
+job.batch/istio-init-crd-10-1.3.6 condition met
+job.batch/istio-init-crd-11-1.3.6 condition met
+job.batch/istio-init-crd-12-1.3.6 condition met
+

Label Istio namespace and which will trigger kubed to copy there the secret +with certificates signed by Let's Encrypt:

kubectl label namespace istio-system app=kubed
+

Install Istio:

(steps take from Knative page (opens new window))

helm install istio istio.io/istio --wait --namespace istio-system --version ${ISTIO_VERSION} \
+  --set gateways.istio-ingressgateway.autoscaleMax=1 \
+  --set gateways.istio-ingressgateway.autoscaleMin=1 \
+  --set gateways.istio-ingressgateway.ports[0].name=status-port \
+  --set gateways.istio-ingressgateway.ports[0].port=15020 \
+  --set gateways.istio-ingressgateway.ports[0].targetPort=15020 \
+  --set gateways.istio-ingressgateway.ports[1].name=http \
+  --set gateways.istio-ingressgateway.ports[1].nodePort=31380 \
+  --set gateways.istio-ingressgateway.ports[1].port=80 \
+  --set gateways.istio-ingressgateway.ports[1].targetPort=80 \
+  --set gateways.istio-ingressgateway.ports[2].name=https \
+  --set gateways.istio-ingressgateway.ports[2].nodePort=31390 \
+  --set gateways.istio-ingressgateway.ports[2].port=443 \
+  --set gateways.istio-ingressgateway.ports[3].name=ssh \
+  --set gateways.istio-ingressgateway.ports[3].nodePort=31400 \
+  --set gateways.istio-ingressgateway.ports[3].port=22 \
+  --set gateways.istio-ingressgateway.sds.enabled=true \
+  --set global.disablePolicyChecks=true \
+  --set global.k8sIngress.enableHttps=true \
+  --set global.k8sIngress.enabled=true \
+  --set global.proxy.autoInject=disabled \
+  --set grafana.datasources."datasources\.yaml".datasources[0].access=proxy \
+  --set grafana.datasources."datasources\.yaml".datasources[0].editable=true \
+  --set grafana.datasources."datasources\.yaml".datasources[0].isDefault=true \
+  --set grafana.datasources."datasources\.yaml".datasources[0].jsonData.timeInterval=5s \
+  --set grafana.datasources."datasources\.yaml".datasources[0].name=Prometheus \
+  --set grafana.datasources."datasources\.yaml".datasources[0].orgId=1 \
+  --set grafana.datasources."datasources\.yaml".datasources[0].type=prometheus \
+  --set grafana.datasources."datasources\.yaml".datasources[0].url=http://prometheus-system-np.knative-monitoring.svc.cluster.local:8080 \
+  --set grafana.enabled=true \
+  --set kiali.contextPath=/ \
+  --set kiali.createDemoSecret=true \
+  --set kiali.dashboard.grafanaURL=http://grafana.${MY_DOMAIN}/ \
+  --set kiali.dashboard.jaegerURL=http://jaeger.${MY_DOMAIN}/ \
+  --set kiali.enabled=true \
+  --set kiali.prometheusAddr=http://prometheus-system-np.knative-monitoring.svc.cluster.local:8080 \
+  --set mixer.adapters.prometheus.enabled=false \
+  --set pilot.traceSampling=100 \
+  --set prometheus.enabled=false \
+  --set sidecarInjectorWebhook.enableNamespacesByDefault=true \
+  --set sidecarInjectorWebhook.enabled=true \
+  --set tracing.enabled=true
+

Output:

NAME: istio
+LAST DEPLOYED: Fri Dec 27 10:50:54 2019
+NAMESPACE: istio-system
+STATUS: deployed
+REVISION: 1
+TEST SUITE: None
+NOTES:
+Thank you for installing Istio.
+
+Your release is named Istio.
+
+To get started running application with Istio, execute the following steps:
+1. Label namespace that application object will be deployed to by the following command (take default namespace as an example)
+
+  kubectl label namespace default istio-injection=enabled
+  kubectl get namespace -L istio-injection
+
+2. Deploy your applications
+
+  kubectl apply -f &lt;your-application>.yaml
+
+For more information on running Istio, visit:
+https://istio.io/
+

Let istio-ingressgateway to use cert-manager generated certificate via +SDS (opens new window). +Steps are taken from this URL: https://istio.io/docs/tasks/traffic-management/ingress/ingress-certmgr/ (opens new window).

kubectl -n istio-system patch gateway istio-autogenerated-k8s-ingress \
+  --type=json \
+  -p="[{"op": "replace", "path": "/spec/servers/1/tls", "value": {"credentialName": "ingress-cert-${LETSENCRYPT_ENVIRONMENT}", "mode": "SIMPLE", "privateKey": "sds", "serverCertificate": "sds"}}]"
+

Disable HTTP2 for gateway istio-autogenerated-k8s-ingress to be compatible +with Knative:

kubectl -n istio-system patch gateway istio-autogenerated-k8s-ingress --type=json \
+  -p="[{"op": "replace", "path": "/spec/servers/0/port", "value": {"name": "http", "number": "80", "protocol": "HTTP"}}]"
+

Allow the default namespace to use Istio injection:

kubectl label namespace default istio-injection=enabled
+

Configure the Istio services Jaeger (opens new window) and +Kiali (opens new window) to be visible externally:

cat << EOF | kubectl apply -f -
+apiVersion: networking.istio.io/v1alpha3
+kind: Gateway
+metadata:
+  name: istio-services-gateway
+  namespace: istio-system
+spec:
+  selector:
+    istio: ingressgateway
+  servers:
+  - port:
+      number: 80
+      name: http-istio-services
+      protocol: HTTP
+    hosts:
+    - grafana-istio.${MY_DOMAIN}
+    - jaeger-istio.${MY_DOMAIN}
+    - kiali-istio.${MY_DOMAIN}
+  - port:
+      number: 443
+      name: https-istio-services
+      protocol: HTTPS
+    hosts:
+    - grafana-istio.${MY_DOMAIN}
+    - jaeger-istio.${MY_DOMAIN}
+    - kiali-istio.${MY_DOMAIN}
+    tls:
+      credentialName: ingress-cert-${LETSENCRYPT_ENVIRONMENT}
+      mode: SIMPLE
+      privateKey: sds
+      serverCertificate: sds
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: grafana-istio-virtual-service
+  namespace: istio-system
+spec:
+  hosts:
+  - grafana-istio.${MY_DOMAIN}
+  gateways:
+  - istio-services-gateway
+  http:
+  - route:
+    - destination:
+        host: grafana.istio-system.svc.cluster.local
+        port:
+          number: 3000
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: jaeger-istio-virtual-service
+  namespace: istio-system
+spec:
+  hosts:
+  - jaeger-istio.${MY_DOMAIN}
+  gateways:
+  - istio-services-gateway
+  http:
+  - route:
+    - destination:
+        host: tracing.istio-system.svc.cluster.local
+        port:
+          number: 80
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: kiali-istio-virtual-service
+  namespace: istio-system
+spec:
+  hosts:
+  - kiali-istio.${MY_DOMAIN}
+  gateways:
+  - istio-services-gateway
+  http:
+  - route:
+    - destination:
+        host: kiali.istio-system.svc.cluster.local
+        port:
+          number: 20001
+EOF
+

# Create DNS records

Install external-dns (opens new window) and +let it manage mylabs.dev entries in Route 53 (Do not upgrade external-dns, +because it's not backward compatible and using different way of authentication +to Route53 using roles):

kubectl create namespace external-dns
+helm install external-dns stable/external-dns --namespace external-dns --version 2.10.1 --wait \
+  --set aws.credentials.accessKey="${USER_AWS_ACCESS_KEY_ID}" \
+  --set aws.credentials.secretKey="${USER_AWS_SECRET_ACCESS_KEY}" \
+  --set aws.region=eu-central-1 \
+  --set domainFilters={${MY_DOMAIN}} \
+  --set istioIngressGateways={istio-system/istio-ingressgateway} \
+  --set interval="10s" \
+  --set policy="sync" \
+  --set rbac.create=true \
+  --set sources="{istio-gateway,service}" \
+  --set txtOwnerId="${USER}-k8s.${MY_DOMAIN}"
+

Output:

namespace/external-dns created
+NAME: external-dns
+LAST DEPLOYED: Fri Dec 27 10:53:29 2019
+NAMESPACE: external-dns
+STATUS: deployed
+REVISION: 1
+TEST SUITE: None
+NOTES:
+** Please be patient while the chart is being deployed **
+
+To verify that external-dns has started, run:
+
+  kubectl --namespace=external-dns get pods -l "app.kubernetes.io/name=external-dns,app.kubernetes.io/instance=external-dns"
+

Architecture

You should be able to reach these URLs:

+ + + diff --git a/part-04/index.html b/part-04/index.html new file mode 100644 index 0000000..80b6c40 --- /dev/null +++ b/part-04/index.html @@ -0,0 +1,196 @@ + + + + + + Install Harbor | Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

# Install Harbor

Harbor logo

Label Harbor namespace and copy there the secret with certificates signed by +Let's Encrypt certificate:

kubectl create namespace harbor
+kubectl label namespace harbor app=kubed
+

Create Istio Gateways and VirtualServices to allow accessing Harbor from +"outside":

cat << EOF | kubectl apply -f -
+apiVersion: networking.istio.io/v1alpha3
+kind: Gateway
+metadata:
+  name: harbor-gateway
+  namespace: harbor
+spec:
+  selector:
+    istio: ingressgateway
+  servers:
+  - port:
+      number: 80
+      name: http-harbor
+      protocol: HTTP
+    hosts:
+    - harbor.${MY_DOMAIN}
+  - port:
+      number: 443
+      name: https-harbor
+      protocol: HTTPS
+    hosts:
+    - harbor.${MY_DOMAIN}
+    - notary.${MY_DOMAIN}
+    tls:
+      mode: PASSTHROUGH
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: harbor-http-virtual-service
+  namespace: harbor
+spec:
+  hosts:
+  - harbor.${MY_DOMAIN}
+  gateways:
+  - harbor-gateway
+  http:
+  - match:
+    - port: 80
+    route:
+    - destination:
+        host: harbor.harbor.svc.cluster.local
+        port:
+          number: 80
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: harbor-https-virtual-service
+  namespace: harbor
+spec:
+  hosts:
+  - harbor.${MY_DOMAIN}
+  gateways:
+  - harbor-gateway
+  tls:
+  - match:
+    - port: 443
+      sniHosts:
+      - harbor.${MY_DOMAIN}
+    route:
+    - destination:
+        host: harbor.harbor.svc.cluster.local
+        port:
+          number: 443
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: harbor-notary-virtual-service
+  namespace: harbor
+spec:
+  hosts:
+  - notary.${MY_DOMAIN}
+  gateways:
+  - harbor-gateway
+  tls:
+  - match:
+    - port: 443
+      sniHosts:
+      - notary.${MY_DOMAIN}
+    route:
+    - destination:
+        host: harbor.harbor.svc.cluster.local
+        port:
+          number: 4443
+EOF
+

Add Harbor Helm repository:

helm repo add harbor https://helm.goharbor.io
+helm repo update
+

Install Harbor using Helm:

helm install harbor harbor/harbor --namespace harbor --version v1.2.3 --wait \
+  --set expose.tls.enabled=true \
+  --set expose.tls.secretName=ingress-cert-${LETSENCRYPT_ENVIRONMENT} \
+  --set expose.type=clusterIP \
+  --set externalURL=https://harbor.${MY_DOMAIN} \
+  --set harborAdminPassword=admin \
+  --set persistence.enabled=false
+

Output:

NAME: harbor
+LAST DEPLOYED: Fri Dec 27 10:54:23 2019
+NAMESPACE: harbor
+STATUS: deployed
+REVISION: 1
+TEST SUITE: None
+NOTES:
+Please wait for several minutes for Harbor deployment to complete.
+Then you should be able to visit the Harbor portal at https://harbor.mylabs.dev.
+For more details, please visit https://github.com/goharbor/harbor.
+

Open the https://harbor.mylabs.dev (opens new window):

Harbor login page

Log in:

  • User: admin
  • Password: admin

You should see the Web UI:

Harbor

Create new robot account for library project:

HARBOR_ROBOT_TOKEN=$(curl -s -k -u "admin:admin" -X POST -H "Content-Type: application/json" "https://harbor.${MY_DOMAIN}/api/projects/1/robots" -d \
+"{
+  \"name\": \"myrobot\",
+  \"description\": \"Robot account with Push/Pull access to library project\",
+  \"access\": [
+    {
+      \"resource\": \"/project/1/repository\",
+      \"action\": \"push\"
+    }
+  ]
+}" | jq -r ".token")
+echo ${HARBOR_ROBOT_TOKEN}
+

Output:

eyJhbGciO .... oOFJvwidsQ
+

Enable automated vulnerability scan after each "image push" to the project +library:

curl -s -k -u "admin:admin" -X PUT "https://harbor.${MY_DOMAIN}/api/projects/1" -H  "Content-Type: application/json" -d \
+"{
+  \"metadata\": {
+    \"auto_scan\": \"true\"
+  }
+}"
+

Test Harbor functionality by uploading docker image (optional):

if [ ${LETSENCRYPT_ENVIRONMENT} = "staging" ]; then
+  export SSL_CERT_FILE=$PWD/tmp/fakelerootx1.pem
+fi
+
+docker pull gcr.io/kuar-demo/kuard-amd64:blue
+
+docker tag gcr.io/kuar-demo/kuard-amd64:blue harbor.${MY_DOMAIN}/library/kuard-amd64:blue
+echo $HARBOR_ROBOT_TOKEN | docker login --username "robot\$myrobot" --password-stdin harbor.${MY_DOMAIN}
+docker push harbor.${MY_DOMAIN}/library/kuard-amd64:blue
+
+docker tag gcr.io/kuar-demo/kuard-amd64:blue harbor.${MY_DOMAIN}/library/kuard-amd64:blue2
+echo admin | docker login --username admin --password-stdin harbor.${MY_DOMAIN}
+export DOCKER_CONTENT_TRUST=1
+export DOCKER_CONTENT_TRUST_SERVER=https://notary.${MY_DOMAIN}
+export DOCKER_CONTENT_TRUST_REPOSITORY_PASSPHRASE="mypassphrase123"
+export DOCKER_CONTENT_TRUST_ROOT_PASSPHRASE="rootpassphrase123"
+docker push harbor.${MY_DOMAIN}/library/kuard-amd64:blue2
+
+unset DOCKER_CONTENT_TRUST
+unset SSL_CERT_FILE
+
+ + + diff --git a/part-05/index.html b/part-05/index.html new file mode 100644 index 0000000..20564e8 --- /dev/null +++ b/part-05/index.html @@ -0,0 +1,324 @@ + + + + + + Install GitLab | Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

# Install GitLab

Add GitLab repository:

helm repo add gitlab https://charts.gitlab.io/
+helm repo update
+

Create gitlab namespaces with secrets needed for GitLab +(certificates and passwords):

kubectl create namespace gitlab
+kubectl create secret generic gitlab-initial-root-password --from-literal=password="admin123" -n gitlab
+kubectl create secret generic custom-ca --from-file=unique_name=tmp/fakelerootx1.pem -n gitlab
+

Create Istio Gateways and VirtualServices to allow accessing GitLab from +"outside":

cat << EOF | kubectl apply -f -
+apiVersion: networking.istio.io/v1alpha3
+kind: Gateway
+metadata:
+  name: gitlab-gateway
+  namespace: gitlab
+spec:
+  selector:
+    istio: ingressgateway
+  servers:
+  - port:
+      number: 22
+      name: ssh-gitlab
+      protocol: TCP
+    hosts:
+    - gitlab.${MY_DOMAIN}
+  - port:
+      number: 80
+      name: http-gitlab
+      protocol: HTTP
+    hosts:
+    - gitlab.${MY_DOMAIN}
+    - minio.${MY_DOMAIN}
+    tls:
+      httpsRedirect: true
+  - port:
+      number: 443
+      name: https-gitlab
+      protocol: HTTPS
+    hosts:
+    - gitlab.${MY_DOMAIN}
+    - minio.${MY_DOMAIN}
+    tls:
+      credentialName: ingress-cert-${LETSENCRYPT_ENVIRONMENT}
+      mode: SIMPLE
+      privateKey: sds
+      serverCertificate: sds
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: gitlab-ssh-virtual-service
+  namespace: gitlab
+spec:
+  hosts:
+  - gitlab.${MY_DOMAIN}
+  gateways:
+  - gitlab-gateway
+  tcp:
+  - match:
+    - port: 22
+    route:
+    - destination:
+        host: gitlab-gitlab-shell.gitlab.svc.cluster.local
+        port:
+          number: 22
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: gitlab-http-virtual-service
+  namespace: gitlab
+spec:
+  hosts:
+  - gitlab.${MY_DOMAIN}
+  gateways:
+  - gitlab-gateway
+  http:
+  - match:
+    - uri:
+        prefix: /admin/sidekiq
+    route:
+    - destination:
+        host: gitlab-unicorn.gitlab.svc.cluster.local
+        port:
+          number: 8080
+  - route:
+    - destination:
+        host: gitlab-unicorn.gitlab.svc.cluster.local
+        port:
+          number: 8181
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: gitlab-minio-virtual-service
+  namespace: gitlab
+spec:
+  hosts:
+  - minio.${MY_DOMAIN}
+  gateways:
+  - gitlab-gateway
+  http:
+  - route:
+    - destination:
+        host: gitlab-minio-svc.gitlab.svc.cluster.local
+        port:
+          number: 9000
+EOF
+

Install GitLab using Helm:

helm install gitlab gitlab/gitlab --namespace gitlab --wait --version 2.6.0 \
+  --set certmanager.install=false \
+  --set gitlab-runner.install=false \
+  --set gitlab.gitaly.persistence.size=1Gi \
+  --set gitlab.unicorn.ingress.enabled=false \
+  --set global.appConfig.cron_jobs.ci_archive_traces_cron_worker.cron="17 * * * *" \
+  --set global.appConfig.cron_jobs.expire_build_artifacts_worker.cron="50 * * * *" \
+  --set global.appConfig.cron_jobs.pipeline_schedule_worker.cron="19 * * * *" \
+  --set global.appConfig.cron_jobs.repository_archive_cache_worker.cron="0 * * * *" \
+  --set global.appConfig.cron_jobs.repository_check_worker.cron="20 * * * *" \
+  --set global.appConfig.cron_jobs.stuck_ci_jobs_worker.cron="0 * * * *" \
+  --set global.appConfig.gravatar.plainUrl="https://www.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon" \
+  --set global.appConfig.gravatar.sslUrl="https://secure.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon" \
+  --set global.certificates.customCAs[0].secret=custom-ca \
+  --set global.edition=ce \
+  --set global.hosts.domain=${MY_DOMAIN} \
+  --set global.ingress.configureCertmanager=false \
+  --set global.ingress.enabled=false \
+  --set global.initialRootPassword.secret=gitlab-initial-root-password \
+  --set minio.persistence.size=5Gi \
+  --set nginx-ingress.enabled=false \
+  --set postgresql.persistence.size=1Gi \
+  --set prometheus.install=false \
+  --set redis.persistence.size=1Gi \
+  --set registry.enabled=false
+

Output:

NAME: gitlab
+LAST DEPLOYED: Fri Dec 27 10:57:01 2019
+NAMESPACE: gitlab
+STATUS: deployed
+REVISION: 1
+NOTES:
+WARNING: Automatic TLS certificate generation with cert-manager is disabled and no TLS certificates were provided. Self-signed certificates were generated.
+
+You may retrieve the CA root for these certificates from the `gitlab-wildcard-tls-ca` secret, via the following command. It can then be imported to a web browser or system store.
+
+    kubectl get secret gitlab-wildcard-tls-ca -ojsonpath='{.data.cfssl_ca}' | base64 --decode > gitlab.mylabs.dev.ca.pem
+
+If you do not wish to use self-signed certificates, please set the following properties:
+  - global.ingress.tls.secretName
+  OR
+  - gitlab.unicorn.ingress.tls.secretName
+  - minio.ingress.tls.secretName
+

Try to access the GitLab using the URL https://gitlab.mylabs.dev (opens new window) +with following credentials:

  • Username: root
  • Password: admin123

Create Personal Access Token 1234567890 for user root:

UNICORN_POD=$(kubectl get pods -n gitlab -l=app=unicorn -o jsonpath="{.items[0].metadata.name}")
+echo ${UNICORN_POD}
+kubectl exec -n gitlab -it $UNICORN_POD -c unicorn -- /bin/bash -c "
+cd /srv/gitlab;
+bin/rails r \"
+token_digest = Gitlab::CryptoHelper.sha256 \\\"1234567890\\\";
+token=PersonalAccessToken.create!(name: \\\"Full Access\\\", scopes: [:api], user: User.where(id: 1).first, token_digest: token_digest);
+token.save!
+\";
+"
+

Output:

gitlab-unicorn-566c465dc4-4dwdz
+

Create new user myuser:

GITLAB_USER_ID=$(curl -s -k -X POST -H "Content-type: application/json" -H "PRIVATE-TOKEN: 1234567890" https://gitlab.${MY_DOMAIN}/api/v4/users -d \
+"{
+  \"name\": \"myuser\",
+  \"username\": \"myuser\",
+  \"password\": \"myuser_password\",
+  \"email\": \"myuser@${MY_DOMAIN}\",
+  \"skip_confirmation\": true
+}" | jq ".id")
+echo ${GITLAB_USER_ID}
+

Output:

2
+

Create a personal access token for user myuser:

kubectl exec -n gitlab -it $UNICORN_POD -c unicorn -- /bin/bash -c "
+cd /srv/gitlab;
+bin/rails r \"
+token_digest = Gitlab::CryptoHelper.sha256 \\\"0987654321\\\";
+token=PersonalAccessToken.create!(name: \\\"Full Access\\\", scopes: [:api], user: User.where(id: ${GITLAB_USER_ID}).first, token_digest: token_digest);
+token.save!
+\";
+"
+

Create Impersonation token for myuser:

GILAB_MYUSER_TOKEN=$(curl -s -k -X POST -H "Content-type: application/json" -H "PRIVATE-TOKEN: 1234567890" https://gitlab.${MY_DOMAIN}/api/v4/users/${GITLAB_USER_ID}/impersonation_tokens -d \
+"{
+  \"name\": \"mytoken\",
+  \"scopes\": [\"api\"]
+}" | jq -r ".token")
+echo ${GILAB_MYUSER_TOKEN}
+

Output:

t_dJwRNpVkdsxWzs3Yv3
+

Create SSH key which will be imported to GitLab:

ssh-keygen -t ed25519 -f tmp/id_rsa_gitlab -q -N "" -C "my_ssh_key@mylabs.dev"
+

Add ssh key to the myuser:

curl -sk -X POST -F "private_token=${GILAB_MYUSER_TOKEN}" https://gitlab.${MY_DOMAIN}/api/v4/user/keys -F "title=my_ssh_key" -F "key=$(cat tmp/id_rsa_gitlab.pub)" | jq
+

Output:

{
+  "id": 1,
+  "title": "my_ssh_key",
+  "key": "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKH2+gqsWrziaAmzGumc/frT0EBMSrXSP0MT/jRcKwtm my_ssh_key@mylabs.dev",
+  "created_at": "2019-12-27T10:01:45.403Z"
+}
+

Create new project:

PROJECT_ID=$(curl -s -k -X POST -H "Content-type: application/json" -H "PRIVATE-TOKEN: 1234567890" https://gitlab.${MY_DOMAIN}/api/v4/projects/user/${GITLAB_USER_ID} -d \
+"{
+  \"user_id\": \"${GITLAB_USER_ID}\",
+  \"name\": \"my-podinfo\",
+  \"description\": \"My Test Project\",
+  \"wiki_access_level\": \"disabled\",
+  \"issues_access_level\": \"disabled\",
+  \"builds_access_level\": \"disabled\",
+  \"snippets_access_level\": \"disabled\",
+  \"container-registry-enabled\": false,
+  \"visibility\": \"public\"
+}" | jq -r ".id")
+echo ${PROJECT_ID}
+

Output:

1
+

Clone the podinfo (opens new window) project and push +it to the newly created git repository my-podinfo:

export GIT_SSH_COMMAND="ssh -i $PWD/tmp/id_rsa_gitlab -o UserKnownHostsFile=/dev/null"
+git clone --bare https://github.com/stefanprodan/podinfo tmp/podinfo
+git -C tmp/podinfo push --mirror git@gitlab.${MY_DOMAIN}:myuser/my-podinfo.git
+rm -rf tmp/podinfo
+

Output:

loning into bare repository 'tmp/podinfo'...
+remote: Enumerating objects: 10, done.
+remote: Counting objects: 100% (10/10), done.
+remote: Compressing objects: 100% (10/10), done.
+remote: Total 5266 (delta 0), reused 3 (delta 0), pack-reused 5256
+Receiving objects: 100% (5266/5266), 9.52 MiB | 1.28 MiB/s, done.
+Resolving deltas: 100% (2342/2342), done.
+Warning: Permanently added 'gitlab.mylabs.dev,18.184.227.16' (ECDSA) to the list of known hosts.
+Enumerating objects: 5266, done.
+Counting objects: 100% (5266/5266), done.
+Delta compression using up to 4 threads
+Compressing objects: 100% (2544/2544), done.
+Writing objects: 100% (5266/5266), 9.52 MiB | 6.95 MiB/s, done.
+Total 5266 (delta 2342), reused 5266 (delta 2342)
+remote: Resolving deltas: 100% (2342/2342), done.
+remote:
+remote: To create a merge request for gh-pages, visit:
+remote:   https://gitlab.mylabs.dev/myuser/my-podinfo/merge_requests/new?merge_request%5Bsource_branch%5D=gh-pages
+remote:
+remote: To create a merge request for v0.x, visit:
+remote:   https://gitlab.mylabs.dev/myuser/my-podinfo/merge_requests/new?merge_request%5Bsource_branch%5D=v0.x
+remote:
+remote: To create a merge request for v1.x, visit:
+remote:   https://gitlab.mylabs.dev/myuser/my-podinfo/merge_requests/new?merge_request%5Bsource_branch%5D=v1.x
+remote:
+remote: To create a merge request for v3.x, visit:
+remote:   https://gitlab.mylabs.dev/myuser/my-podinfo/merge_requests/new?merge_request%5Bsource_branch%5D=v3.x
+remote:
+To gitlab.mylabs.dev:myuser/my-podinfo.git
+ * [new branch]      gh-pages -> gh-pages
+ * [new branch]      master -> master
+ * [new branch]      v0.x -> v0.x
+ * [new branch]      v1.x -> v1.x
+ * [new branch]      v3.x -> v3.x
+ * [new tag]         0.2.2 -> 0.2.2
+ * [new tag]         2.0.0 -> 2.0.0
+ * [new tag]         2.0.1 -> 2.0.1
+ * [new tag]         2.0.2 -> 2.0.2
+ * [new tag]         2.1.0 -> 2.1.0
+ * [new tag]         2.1.1 -> 2.1.1
+ * [new tag]         2.1.2 -> 2.1.2
+ * [new tag]         2.1.3 -> 2.1.3
+ * [new tag]         3.0.0 -> 3.0.0
+ * [new tag]         3.1.0 -> 3.1.0
+ * [new tag]         3.1.1 -> 3.1.1
+ * [new tag]         3.1.2 -> 3.1.2
+ * [new tag]         3.1.3 -> 3.1.3
+ * [new tag]         3.1.4 -> 3.1.4
+ * [new tag]         3.1.5 -> 3.1.5
+ * [new tag]         flux-floral-pine-16 -> flux-floral-pine-16
+ * [new tag]         flux-thawing-star-34 -> flux-thawing-star-34
+ * [new tag]         v0.4.0 -> v0.4.0
+ * [new tag]         v0.5.0 -> v0.5.0
+ * [new tag]         v1.0.0 -> v1.0.0
+ * [new tag]         v1.1.0 -> v1.1.0
+ * [new tag]         v1.1.1 -> v1.1.1
+ * [new tag]         v1.2.0 -> v1.2.0
+ * [new tag]         v1.2.1 -> v1.2.1
+ * [new tag]         v1.3.0 -> v1.3.0
+ * [new tag]         v1.3.1 -> v1.3.1
+ * [new tag]         v1.4.0 -> v1.4.0
+ * [new tag]         v1.4.1 -> v1.4.1
+ * [new tag]         v1.4.2 -> v1.4.2
+ * [new tag]         v1.6.0 -> v1.6.0
+ * [new tag]         v1.7.0 -> v1.7.0
+ * [new tag]         v1.8.0 -> v1.8.0
+

GitLab Screenshot:

GitLab

+ + + diff --git a/part-06/index.html b/part-06/index.html new file mode 100644 index 0000000..2dfc995 --- /dev/null +++ b/part-06/index.html @@ -0,0 +1,212 @@ + + + + + + Install Knative | Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

# Install Knative

Set Knative version variable:

export KNATIVE_VERSION="v0.11.0"
+

Install Knative:

kubectl apply --selector knative.dev/crd-install=true \
+   --filename https://github.com/knative/serving/releases/download/${KNATIVE_VERSION}/serving.yaml \
+   --filename https://github.com/knative/eventing/releases/download/${KNATIVE_VERSION}/release.yaml \
+   --filename https://github.com/knative/serving/releases/download/${KNATIVE_VERSION}/monitoring.yaml
+kubectl apply \
+   --filename https://github.com/knative/serving/releases/download/${KNATIVE_VERSION}/serving.yaml \
+   --filename https://github.com/knative/eventing/releases/download/${KNATIVE_VERSION}/release.yaml \
+   --filename https://github.com/knative/serving/releases/download/${KNATIVE_VERSION}/monitoring.yaml
+sleep 60
+

Install Tekton with Dashboard (do not increase Tekton version above 0.8.0):

kubectl apply --filename https://github.com/tektoncd/pipeline/releases/download/v0.8.0/release.yaml
+kubectl apply --filename https://github.com/tektoncd/dashboard/releases/download/v0.3.0/dashboard-latest-release.yaml
+

Install Tekton Triggers:

kubectl apply --filename https://github.com/tektoncd/triggers/releases/download/v0.1.0/release.yaml
+

Export Knative services (Prometheus (opens new window) and +Grafana (opens new window)) to be visible externally:

cat << EOF | kubectl apply -f -
+apiVersion: networking.istio.io/v1alpha3
+kind: Gateway
+metadata:
+  name: knative-services-gateway
+  namespace: knative-monitoring
+spec:
+  selector:
+    istio: ingressgateway
+  servers:
+  - port:
+      number: 80
+      name: http-knative-services
+      protocol: HTTP
+    hosts:
+    - knative-grafana.${MY_DOMAIN}
+    - knative-prometheus.${MY_DOMAIN}
+    - knative-tekton.${MY_DOMAIN}
+  - port:
+      number: 443
+      name: https-knative-services
+      protocol: HTTPS
+    hosts:
+    - knative-grafana.${MY_DOMAIN}
+    - knative-prometheus.${MY_DOMAIN}
+    - knative-tekton.${MY_DOMAIN}
+    tls:
+      credentialName: ingress-cert-${LETSENCRYPT_ENVIRONMENT}
+      mode: SIMPLE
+      privateKey: sds
+      serverCertificate: sds
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: grafana-virtual-service
+  namespace: knative-monitoring
+spec:
+  hosts:
+  - "knative-grafana.${MY_DOMAIN}"
+  gateways:
+  - knative-services-gateway
+  http:
+  - route:
+    - destination:
+        host: grafana.knative-monitoring.svc.cluster.local
+        port:
+          number: 30802
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: prometheus-virtual-service
+  namespace: knative-monitoring
+spec:
+  hosts:
+  - "knative-prometheus.${MY_DOMAIN}"
+  gateways:
+  - knative-services-gateway
+  http:
+  - route:
+    - destination:
+        host: prometheus-system-np.knative-monitoring.svc.cluster.local
+        port:
+          number: 8080
+---
+apiVersion: networking.istio.io/v1alpha3
+kind: VirtualService
+metadata:
+  name: tekton-virtual-service
+  namespace: knative-monitoring
+spec:
+  hosts:
+  - "knative-tekton.${MY_DOMAIN}"
+  gateways:
+  - knative-services-gateway
+  http:
+  - route:
+    - destination:
+        host: tekton-dashboard.tekton-pipelines.svc.cluster.local
+        port:
+          number: 9097
+EOF
+

Tekton Dashboard:

Tekton Dashboard

Set up a custom domain for Knative:

cat << EOF | kubectl apply -f -
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: config-domain
+  namespace: knative-serving
+data:
+  ${MY_DOMAIN}: ""
+EOF
+

Changing the controller deployment is needed if you are not using the valid +certificates (self-signed):

if [ ${LETSENCRYPT_ENVIRONMENT} = "staging" ]; then
+  kubectl --namespace knative-serving create secret generic customca --from-file=customca.crt=tmp/fakelerootx1.pem
+  kubectl patch deployment controller --namespace knative-serving --patch "
+    {
+        \"spec\": {
+            \"template\": {
+                \"spec\": {
+                    \"containers\": [{
+                        \"env\": [{
+                            \"name\": \"SSL_CERT_DIR\",
+                            \"value\": \"/etc/customca\"
+                        }],
+                        \"name\": \"controller\",
+                        \"volumeMounts\": [{
+                            \"mountPath\": \"/etc/customca\",
+                            \"name\": \"customca\"
+                        }]
+                    }],
+                    \"volumes\": [{
+                        \"name\": \"customca\",
+                        \"secret\": {
+                            \"defaultMode\": 420,
+                            \"secretName\": \"customca\"
+                        }
+                    }]
+                }
+            }
+        }
+    }"
+fi
+

# Enable automatic TLS certificate provisioning for Knative

Install networking-certmanager:

kubectl apply --filename https://github.com/knative/serving/releases/download/${KNATIVE_VERSION}/serving-cert-manager.yaml
+

Update your config-certmanager ConfigMap in the knative-serving namespace to +define your new ClusterIssuer configuration and your your DNS provider:

cat << EOF | kubectl apply -f -
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: config-certmanager
+  namespace: knative-serving
+  labels:
+    networking.knative.dev/certificate-provider: cert-manager
+data:
+  issuerRef: |
+    kind: ClusterIssuer
+    name: letsencrypt-${LETSENCRYPT_ENVIRONMENT}-dns
+  solverConfig: |
+    dns01:
+      provider: aws-route53
+EOF
+

Update the config-network ConfigMap in the knative-serving namespace to enable +autoTLS:

cat << EOF | kubectl apply -f -
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: config-network
+  namespace: knative-serving
+data:
+  autoTLS: Enabled
+  httpProtocol: Enabled
+EOF
+
+ + + diff --git a/part-07/index.html b/part-07/index.html new file mode 100644 index 0000000..c572421 --- /dev/null +++ b/part-07/index.html @@ -0,0 +1,282 @@ + + + + + + Build and run container image using Knative + Tekton | Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

# Build and run container image using Knative + Tekton

Set the necessary variables:

export GIT_REPOSITORY="git@gitlab.${MY_DOMAIN}:myuser/my-podinfo.git"
+export GIT_REVISION="3.1.0"
+export GIT_REPO_SSH_KEY="tmp/id_rsa_gitlab"
+export CONTAINER_REGISTRY="harbor.${MY_DOMAIN}/library/my-podinfo"
+export CONTAINER_REGISTRY_USERNAME="robot\$myrobot"
+export CONTAINER_REGISTRY_PASSWORD="${HARBOR_ROBOT_TOKEN}"
+
+export GIT_PROJECT_NAME=$( echo ${GIT_REPOSITORY} | sed "s@.*/\(.*\).git@\1@; s/\./\-/" )
+export CONTAINER_REGISTRY_SERVER=$( echo $CONTAINER_REGISTRY | awk -F / "{ print \$1 }" )
+export CONTAINER_REGISTRY_SERVER_MODIFIED=$( echo $CONTAINER_REGISTRY | awk -F / "{ gsub(/\./,\"-\"); print \$1 }" )
+export GIT_SSH_SERVER=$( echo $GIT_REPOSITORY | awk -F "[@:]" "{ print \$2}" )
+export GIT_SSH_SERVER_MODIFIED=$( echo $GIT_REPOSITORY | awk -F "[@:]" "{ gsub(/\./,\"-\"); print \$2 }" )
+

Create secret for Harbor registry to let Tekton pipeline to upload the container +image:

kubectl create secret docker-registry ${CONTAINER_REGISTRY_SERVER_MODIFIED}-docker-config \
+  --docker-server="${CONTAINER_REGISTRY_SERVER}" \
+  --docker-username="${CONTAINER_REGISTRY_USERNAME}" \
+  --docker-password="${CONTAINER_REGISTRY_PASSWORD}"
+

Create secret for AWS user to allow Tekton pipeline to push binary to S3:

kubectl create secret generic user-aws-access-keys --from-literal=access_key=$USER_AWS_ACCESS_KEY_ID --from-literal=secret_key=$USER_AWS_SECRET_ACCESS_KEY
+

Create + start Tekton pipeline (and it's components) to build the container +image:

cat << EOF | kubectl apply -f -
+apiVersion: v1
+kind: Secret
+type: kubernetes.io/ssh-auth
+metadata:
+  name: ${GIT_SSH_SERVER_MODIFIED}-ssh-key
+  annotations:
+    tekton.dev/git-0: ${GIT_SSH_SERVER}
+data:
+  ssh-privatekey: $(base64 -w 0 ${GIT_REPO_SSH_KEY})
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  name: ${GIT_SSH_SERVER_MODIFIED}-build-bot
+secrets:
+  - name: ${GIT_SSH_SERVER_MODIFIED}-ssh-key
+---
+apiVersion: tekton.dev/v1alpha1
+kind: PipelineResource
+metadata:
+  name: ${GIT_PROJECT_NAME}-project-git
+  namespace: default
+spec:
+  type: git
+  params:
+    - name: url
+      value: ${GIT_REPOSITORY}
+    - name: revision
+      value: ${GIT_REVISION}
+---
+apiVersion: tekton.dev/v1alpha1
+kind: PipelineResource
+metadata:
+  name: ${GIT_PROJECT_NAME}-project-image
+spec:
+  type: image
+  params:
+    - name: url
+      value: ${CONTAINER_REGISTRY}:${GIT_REVISION}
+---
+apiVersion: tekton.dev/v1alpha1
+kind: Task
+metadata:
+  name: build-docker-image-from-git-task
+spec:
+  inputs:
+    resources:
+      - name: docker-source
+        type: git
+    params:
+      - name: pathToDockerFile
+        description: The path to the dockerfile to build
+        default: /workspace/docker-source/Dockerfile
+      - name: pathToContext
+        description:
+          The build context used by Kaniko
+          (https://github.com/GoogleContainerTools/kaniko#kaniko-build-contexts)
+        default: /workspace/docker-source
+  outputs:
+    resources:
+      - name: builtImage
+        type: image
+  volumes:
+    - name: docker-config
+      secret:
+        secretName: ${CONTAINER_REGISTRY_SERVER_MODIFIED}-docker-config
+        items:
+          - key: .dockerconfigjson
+            path: config.json
+    - name: shared-storage
+      emptyDir: {}
+  steps:
+    - name: build-and-tar
+      image: gcr.io/kaniko-project/executor
+      command:
+        - /kaniko/executor
+      args:
+        - --dockerfile=\$(inputs.params.pathToDockerFile)
+        - --destination=\$(outputs.resources.builtImage.url)
+        - --context=\$(inputs.params.pathToContext)
+        - --single-snapshot
+        - --tarPath=/shared-storage/${USER}-app-build.tar
+        - --no-push
+      volumeMounts:
+        - name: docker-config
+          mountPath: /builder/home/.docker/
+        - name: shared-storage
+          mountPath: /shared-storage
+    - name: upload-container-content-s3
+      image: atlassian/pipelines-awscli
+      command: ["sh", "-x", "-c", "ls -la /shared-storage/ ; aws s3 cp /shared-storage/${USER}-app-build.tar s3://${USER}-kops-k8s/"]
+      env:
+        - name: AWS_DEFAULT_REGION
+          value: "eu-central-1"
+        - name: AWS_ACCESS_KEY_ID
+          valueFrom:
+            secretKeyRef:
+              name: user-aws-access-keys
+              key: access_key
+        - name: AWS_SECRET_ACCESS_KEY
+          valueFrom:
+            secretKeyRef:
+              name: user-aws-access-keys
+              key: secret_key
+      volumeMounts:
+        - name: shared-storage
+          mountPath: /shared-storage
+    - name: build-and-push
+      image: gcr.io/kaniko-project/executor
+      env:
+        - name: "DOCKER_CONFIG"
+          value: "/builder/home/.docker/"
+      command:
+        - /kaniko/executor
+      args:
+        - --dockerfile=\$(inputs.params.pathToDockerFile)
+        - --destination=\$(outputs.resources.builtImage.url)
+        - --context=\$(inputs.params.pathToContext)
+        - --single-snapshot
+        - --skip-tls-verify
+      volumeMounts:
+        - name: docker-config
+          mountPath: /builder/home/.docker/
+---
+apiVersion: tekton.dev/v1alpha1
+kind: Pipeline
+metadata:
+  name: build-docker-image-from-git-pipeline
+spec:
+  resources:
+  - name: docker-source
+    type: git
+  - name: builtImage
+    type: image
+  tasks:
+  - name: build-docker-image-from-git-task-run
+    taskRef:
+      name: build-docker-image-from-git-task
+    params:
+    - name: pathToDockerFile
+      value: Dockerfile
+    - name: pathToContext
+      value: /workspace/docker-source/
+    resources:
+      inputs:
+      - name: docker-source
+        resource: docker-source
+      outputs:
+      - name: builtImage
+        resource: builtImage
+---
+apiVersion: tekton.dev/v1alpha1
+kind: PipelineRun
+metadata:
+  name: ${GIT_PROJECT_NAME}-build-docker-image-from-git-pipelinerun
+spec:
+  serviceAccount: ${GIT_SSH_SERVER_MODIFIED}-build-bot
+  pipelineRef:
+    name: build-docker-image-from-git-pipeline
+  resources:
+    - name: docker-source
+      resourceRef:
+        name: ${GIT_PROJECT_NAME}-project-git
+    - name: builtImage
+      resourceRef:
+        name: ${GIT_PROJECT_NAME}-project-image
+EOF
+sleep 5
+

Wait for container build process will complete:

kubectl wait --timeout=10m --for=condition=Succeeded pipelineruns/${GIT_PROJECT_NAME}-build-docker-image-from-git-pipelinerun
+

Output:

pipelinerun.tekton.dev/my-podinfo-build-docker-image-from-git-pipelinerun condition met
+

Start the application:

cat << EOF | kubectl apply -f -
+apiVersion: serving.knative.dev/v1alpha1
+kind: Service
+metadata:
+  name: my-podinfo
+  namespace: default
+spec:
+  template:
+    spec:
+      containers:
+        - image: ${CONTAINER_REGISTRY}:${GIT_REVISION}
+          ports:
+          - name: http1
+            containerPort: 9898
+EOF
+sleep 20
+

Check the status of the application:

kubectl get pod,ksvc,configuration,revision,route,deployment
+

Output:

NAME                                                                             READY   STATUS      RESTARTS   AGE
+pod/my-podinfo-build-docker-image-from-git-pipelinerun-build--msbcv-pod-d6861e   0/6     Completed   0          7m56s
+pod/my-podinfo-vpw78-deployment-bbb89db58-vmnhb                                  2/2     Running     0          21s
+
+NAME                                     URL                                    LATESTCREATED      LATESTREADY        READY   REASON
+service.serving.knative.dev/my-podinfo   http://my-podinfo.default.mylabs.dev   my-podinfo-vpw78   my-podinfo-vpw78   True
+
+NAME                                           LATESTCREATED      LATESTREADY        READY   REASON
+configuration.serving.knative.dev/my-podinfo   my-podinfo-vpw78   my-podinfo-vpw78   True
+
+NAME                                            CONFIG NAME   K8S SERVICE NAME   GENERATION   READY   REASON
+revision.serving.knative.dev/my-podinfo-vpw78   my-podinfo    my-podinfo-vpw78   1            True
+
+NAME                                   URL                                    READY   REASON
+route.serving.knative.dev/my-podinfo   http://my-podinfo.default.mylabs.dev   True
+
+NAME                                                READY   UP-TO-DATE   AVAILABLE   AGE
+deployment.extensions/my-podinfo-vpw78-deployment   1/1     1            1           21s
+

Open https://my-podinfo.default.mylabs.dev (opens new window) +to see the application:

When you close the web browser - after some time without handling traffic +the number of running pods should drop to zero:

kubectl get deployments,pods
+

Output:

NAME                                                READY   UP-TO-DATE   AVAILABLE   AGE
+deployment.extensions/my-podinfo-vpw78-deployment   1/1     1            1           22s
+
+NAME                                                                             READY   STATUS      RESTARTS   AGE
+pod/my-podinfo-build-docker-image-from-git-pipelinerun-build--msbcv-pod-d6861e   0/6     Completed   0          7m57s
+pod/my-podinfo-vpw78-deployment-bbb89db58-vmnhb                                  2/2     Running     0          22s
+

If you open the URL again the pod should be started again and application will +handle the traffic - this takes about 3 seconds.

You can try to open the web browser with the URL https://my-podinfo.default.mylabs.dev (opens new window) +again and test it.

podinfo

+ + + diff --git a/part-08/index.html b/part-08/index.html new file mode 100644 index 0000000..29fc69d --- /dev/null +++ b/part-08/index.html @@ -0,0 +1,810 @@ + + + + + + Automated deployment with Tekton | Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

# Automated deployment with Tekton

Take a real example Podinfo (opens new window) +application and create full pipeline for it...

# Fork podinfo application

Fork the Podinfo (opens new window) repository +podinfo:

cd tmp
+hub clone "stefanprodan/podinfo"
+hub -C "podinfo" fork
+

Output:

Cloning into 'podinfo'...
+remote: Enumerating objects: 10, done.
+remote: Counting objects: 100% (10/10), done.
+remote: Compressing objects: 100% (10/10), done.
+remote: Total 5266 (delta 0), reused 3 (delta 0), pack-reused 5256
+Receiving objects: 100% (5266/5266), 9.52 MiB | 1.93 MiB/s, done.
+Resolving deltas: 100% (2342/2342), done.
+Updating ruzickap
+From https://github.com/stefanprodan/podinfo
+ * [new branch]      gh-pages   -> ruzickap/gh-pages
+ * [new branch]      master     -> ruzickap/master
+ * [new branch]      v0.x       -> ruzickap/v0.x
+ * [new branch]      v1.x       -> ruzickap/v1.x
+ * [new branch]      v3.x       -> ruzickap/v3.x
+new remote: ruzickap
+

# Create Tekton Triggers configuration

Create new namespace:

kubectl create namespace getting-started
+

Create the admin user, role and rolebinding:

cat << EOF | kubectl apply -f -
+kind: Role
+apiVersion: rbac.authorization.k8s.io/v1
+metadata:
+  name: tekton-triggers-admin
+  namespace: getting-started
+rules:
+- apiGroups:
+  - tekton.dev
+  resources:
+  - eventlisteners
+  - triggerbindings
+  - triggertemplates
+  - pipelineresources
+  verbs:
+  - get
+- apiGroups:
+  - tekton.dev
+  resources:
+  - pipelineruns
+  - pipelineresources
+  verbs:
+  - create
+- apiGroups:
+  - ""
+  resources:
+  - configmaps
+  verbs:
+  - get
+  - list
+  - watch
+- apiGroups:
+  - apps
+  resources:
+  - deployments
+  verbs:
+  - get
+  - list
+  - watch
+  - create
+  - patch
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  name: tekton-triggers-admin
+  namespace: getting-started
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+  name: tekton-triggers-admin-binding
+  namespace: getting-started
+subjects:
+  - kind: ServiceAccount
+    name: tekton-triggers-admin
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: Role
+  name: tekton-triggers-admin
+EOF
+

Create the create-webhook user, role and rolebinding:

cat << EOF | kubectl apply -f -
+kind: Role
+apiVersion: rbac.authorization.k8s.io/v1
+metadata:
+  name: tekton-triggers-createwebhook
+  namespace: getting-started
+rules:
+- apiGroups:
+  - ""
+  resources:
+  - secrets
+  verbs:
+  - get
+  - list
+  - create
+  - update
+  - delete
+- apiGroups:
+  - tekton.dev
+  resources:
+  - eventlisteners
+  verbs:
+  - get
+  - list
+  - create
+  - update
+  - delete
+- apiGroups:
+  - networking.istio.io
+  resources:
+  - virtualservices
+  - gateways
+  verbs:
+  - create
+  - get
+  - list
+  - delete
+  - update
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  name: tekton-triggers-createwebhook
+  namespace: getting-started
+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+  name: tekton-triggers-createwebhook
+  namespace: getting-started
+subjects:
+  - kind: ServiceAccount
+    name: tekton-triggers-createwebhook
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: Role
+  name: tekton-triggers-createwebhook
+EOF
+

Create secret for Harbor registry to let Tekton pipeline to upload the container +image:

kubectl create secret docker-registry -n getting-started harbor-docker-config \
+  --docker-server="${CONTAINER_REGISTRY_SERVER}" \
+  --docker-username="${CONTAINER_REGISTRY_USERNAME}" \
+  --docker-password="${CONTAINER_REGISTRY_PASSWORD}"
+

Install the Pipeline:

cat << \EOF | kubectl apply -f -
+apiVersion: tekton.dev/v1alpha1
+kind: Task
+metadata:
+  name: build-docker-image-from-git-task
+  namespace: getting-started
+spec:
+  inputs:
+    resources:
+      - name: docker-source
+        type: git
+    params:
+      - name: pathToDockerFile
+        description: The path to the dockerfile to build
+        default: /workspace/docker-source/Dockerfile
+      - name: pathToContext
+        description:
+          The build context used by Kaniko
+          (https://github.com/GoogleContainerTools/kaniko#kaniko-build-contexts)
+        default: /workspace/docker-source
+  outputs:
+    resources:
+      - name: image-source
+        type: image
+  volumes:
+    - name: docker-config
+      secret:
+        secretName: harbor-docker-config
+        items:
+          - key: .dockerconfigjson
+            path: config.json
+    - name: shared-storage
+      emptyDir: {}
+  steps:
+    - name: build
+      image: gcr.io/kaniko-project/executor
+      env:
+        - name: "DOCKER_CONFIG"
+          value: "/builder/home/.docker/"
+      command:
+        - /kaniko/executor
+      args:
+        - --dockerfile=$(inputs.params.pathToDockerFile)
+        - --destination=$(outputs.resources.image-source.url)
+        - --context=$(inputs.params.pathToContext)
+        - --skip-tls-verify
+      volumeMounts:
+        - name: docker-config
+          mountPath: /builder/home/.docker/
+---
+apiVersion: tekton.dev/v1alpha1
+kind: Task
+metadata:
+  name: deploy-locally
+  namespace: getting-started
+spec:
+  inputs:
+    resources:
+      - name: image-source
+        type: image
+  outputs:
+    resources:
+    - name: event-to-sink
+      type: cloudEvent
+  steps:
+    - name: run-kubectl
+      image: lachlanevenson/k8s-kubectl:latest
+      command:
+      - sh
+      args:
+      - -ce
+      - |
+        set -ex
+        kubectl run podinfo --image $(inputs.resources.image-source.url) -o yaml --dry-run | kubectl apply -f -
+---
+apiVersion: tekton.dev/v1alpha1
+kind: Pipeline
+metadata:
+  name: getting-started-pipeline
+  namespace: getting-started
+spec:
+  resources:
+  - name: docker-source
+    type: git
+  - name: image-source
+    type: image
+  - name: event-to-sink
+    type: cloudEvent
+  tasks:
+    - name: build-docker-image-from-git-task-run
+      taskRef:
+        name: build-docker-image-from-git-task
+      params:
+      - name: pathToDockerFile
+        value: Dockerfile
+      - name: pathToContext
+        value: /workspace/docker-source/
+      resources:
+        inputs:
+        - name: docker-source
+          resource: docker-source
+        outputs:
+        - name: image-source
+          resource: image-source
+    - name: deploy-locally
+      taskRef:
+        name: deploy-locally
+      resources:
+        inputs:
+          - name: image-source
+            resource: image-source
+            from:
+              - build-docker-image-from-git-task-run
+        outputs:
+          - name: event-to-sink
+            resource: event-to-sink
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: event-display
+  namespace: getting-started
+  labels:
+    app: event-display
+spec:
+  type: ClusterIP
+  ports:
+    - name: listener
+      port: 8080
+      protocol: TCP
+  selector:
+    app: event-display
+---
+  apiVersion: v1
+  kind: Pod
+  metadata:
+    name: event-display
+    namespace: getting-started
+    labels:
+      name: event-display
+  spec:
+    hostname: event-display
+    containers:
+    - image: gcr.io/knative-releases/github.com/knative/eventing-sources/cmd/event_display
+      name: web
+EOF
+

Install the TriggerTemplate, TriggerBinding and EventListener:

cat << EOF | kubectl apply -f -
+apiVersion: tekton.dev/v1alpha1
+kind: TriggerTemplate
+metadata:
+  name: getting-started-triggertemplate
+  namespace: getting-started
+spec:
+  params:
+    - name: gitrevision
+      description: The git revision
+      default: master
+    - name: gitrepositoryurl
+      description: The git repository url
+    - name: image_registry_url
+      description: The container registry url
+    - name: namespace
+      description: The namespace to create the resources
+  resourcetemplates:
+    - apiVersion: tekton.dev/v1alpha1
+      kind: PipelineResource
+      metadata:
+        name: source-repo-\$(uid)
+        namespace: \$(params.namespace)
+      spec:
+        type: git
+        params:
+        - name: revision
+          value: \$(params.gitrevision)
+        - name: url
+          value: \$(params.gitrepositoryurl)
+    - apiVersion: tekton.dev/v1alpha1
+      kind: PipelineResource
+      metadata:
+        name: image-source-\$(uid)
+        namespace: \$(params.namespace)
+      spec:
+        type: image
+        params:
+          - name: url
+            value: \$(params.image_registry_url)
+    - apiVersion: tekton.dev/v1alpha1
+      kind: PipelineResource
+      metadata:
+        name: event-to-sink-\$(uid)
+        namespace: \$(params.namespace)
+      spec:
+        type: cloudEvent
+        params:
+          - name: targetURI
+            value: http://event-display.getting-started.svc.cluster.local
+    - apiVersion: tekton.dev/v1alpha1
+      kind: PipelineRun
+      metadata:
+        name: getting-started-pipeline-run-\$(uid)
+        namespace: \$(params.namespace)
+      spec:
+        serviceAccount: tekton-triggers-admin
+        pipelineRef:
+          name: getting-started-pipeline
+        resources:
+          - name: docker-source
+            resourceRef:
+              name: source-repo-\$(uid)
+          - name: image-source
+            resourceRef:
+              name: image-source-\$(uid)
+          - name: event-to-sink
+            resourceRef:
+              name: event-to-sink-\$(uid)
+---
+apiVersion: tekton.dev/v1alpha1
+kind: TriggerBinding
+metadata:
+  name: getting-started-pipelinebinding
+  namespace: getting-started
+spec:
+  params:
+    - name: gitrevision
+      value: \$(body.head_commit.id)
+    - name: namespace
+      value: getting-started
+    - name: gitrepositoryurl
+      value: "https://github.com/\$(body.repository.full_name)"
+    - name: image_registry_url
+      value: "harbor.${MY_DOMAIN}/library/\$(body.repository.name)"
+---
+apiVersion: tekton.dev/v1alpha1
+kind: EventListener
+metadata:
+  name: getting-started-listener
+  namespace: getting-started
+spec:
+  serviceAccountName: tekton-triggers-admin
+  triggers:
+    - binding:
+        name: getting-started-pipelinebinding
+      template:
+        name: getting-started-triggertemplate
+EOF
+

# Configure webhook

Create Task which will create Istio Gateway and VirtualService to handle +incoming webhook form GitHub:

cat << \EOF2 | kubectl apply -f -
+apiVersion: tekton.dev/v1alpha1
+kind: Task
+metadata:
+  name: create-istio-gateway-virtualservice
+  namespace: getting-started
+spec:
+  volumes:
+  - name: work
+    emptyDir: {}
+
+  inputs:
+    params:
+    - name: TLScredentialName
+      description: "Specify the secret with wildcard certificate"
+    - name: ExternalDomain
+      description: "The external domain for the EventListener"
+    - name: Service
+      description: "The name of the Service used in the VirtualService"
+    - name: ServicePort
+      description: "The service port that the VirtualService is being created on"
+
+  steps:
+  - name: create-istio-gateway-virtualservice
+    image: lachlanevenson/k8s-kubectl:latest
+    command:
+    - sh
+    args:
+    - -ce
+    - |
+      set -ex
+      cat << EOF | kubectl create -f -
+      apiVersion: networking.istio.io/v1alpha3
+      kind: Gateway
+      metadata:
+        name: $(inputs.params.Service)-gateway
+      spec:
+        selector:
+          istio: ingressgateway
+        servers:
+        - port:
+            number: 443
+            name: https-$(inputs.params.Service)
+            protocol: HTTPS
+          hosts:
+          - $(inputs.params.ExternalDomain)
+          tls:
+            credentialName: $(inputs.params.TLScredentialName)
+            mode: SIMPLE
+            privateKey: sds
+            serverCertificate: sds
+      ---
+      apiVersion: networking.istio.io/v1alpha3
+      kind: VirtualService
+      metadata:
+        name: $(inputs.params.Service)-virtual-service
+      spec:
+        hosts:
+        - $(inputs.params.ExternalDomain)
+        gateways:
+        - $(inputs.params.Service)-gateway
+        http:
+        - route:
+          - destination:
+              host: $(inputs.params.Service)
+              port:
+                number: $(inputs.params.ServicePort)
+      EOF
+EOF2
+

Create TaskRun to start create-istio-gateway-virtualservice Task:

cat << EOF | kubectl apply -f -
+apiVersion: tekton.dev/v1alpha1
+kind: TaskRun
+metadata:
+  name: create-istio-gateway-virtualservice-run
+  namespace: getting-started
+spec:
+  taskRef:
+    name: create-istio-gateway-virtualservice
+  inputs:
+    params:
+    - name: TLScredentialName
+      value: ingress-cert-${LETSENCRYPT_ENVIRONMENT}
+    - name: ExternalDomain
+      value: getting-started.${MY_DOMAIN}
+    - name: Service
+      value: el-getting-started-listener
+    - name: ServicePort
+      value: "8080"
+  timeout: 1000s
+  serviceAccount: tekton-triggers-createwebhook
+EOF
+

Create webhook Task:

cat << \EOF | kubectl apply -f -
+apiVersion: tekton.dev/v1alpha1
+kind: Task
+metadata:
+  name: create-webhook
+  namespace: getting-started
+spec:
+  volumes:
+  - name: github-secret
+    secret:
+      secretName: $(inputs.params.GitHubSecretName)
+
+  inputs:
+    params:
+    - name: ExternalDomain
+      description: "The external domain for the EventListener e.g. `$(inputs.params.EventListenerName).<PROXYIP>.nip.io`"
+    - name: GitHubUser
+      description: "The GitHub user"
+    - name: GitHubRepo
+      description: "The GitHub repo where the webhook will be created"
+    - name: GitHubOrg
+      description: "The GitHub organization where the webhook will be created"
+    - name: GitHubSecretName
+      description: "The Secret name for GitHub access token. This is always mounted and must exist"
+    - name: GitHubAccessTokenKey
+      description: "The GitHub access token key name"
+    - name: GitHubSecretStringKey
+      description: "The GitHub secret string key name"
+    - name: GitHubDomain
+      description: "The GitHub domain. Override for GitHub Enterprise"
+      default: "github.com"
+    - name: WebhookEvents
+      description: "List of events the webhook will send notifications for"
+      default: "[\\\"push\\\",\\\"pull_request\\\"]"
+
+  steps:
+  - name: create-webhook
+    image: pstauffer/curl:latest
+    volumeMounts:
+    - name: github-secret
+      mountPath: /var/secret
+    command:
+    - sh
+    args:
+    - -ce
+    - |
+      set -e
+      echo "Create Webhook"
+      if [ $(inputs.params.GitHubDomain) = "github.com" ];then
+        curl -v -d "{\"name\": \"web\",\"active\": true,\"events\": $(inputs.params.WebhookEvents),\"config\": {\"url\": \"https://$(inputs.params.ExternalDomain)\",\"content_type\": \"json\",\"insecure_ssl\": \"1\" ,\"secret\": \"$(cat /var/secret/$(inputs.params.GitHubSecretStringKey))\"}}" -X POST -u $(inputs.params.GitHubUser):$(cat /var/secret/$(inputs.params.GitHubAccessTokenKey)) -L https://api.github.com/repos/$(inputs.params.GitHubOrg)/$(inputs.params.GitHubRepo)/hooks
+      else
+        curl -d "{\"name\": \"web\",\"active\": true,\"events\": $(inputs.params.WebhookEvents),\"config\": {\"url\": \"https://$(inputs.params.ExternalDomain)/\",\"content_type\": \"json\",\"insecure_ssl\": \"1\" ,\"secret\": \"$(cat /var/secret/$(inputs.params.GitHubSecretStringKey))\"}}" -X POST -u $(inputs.params.GitHubUser):$(cat /var/secret/$(inputs.params.GitHubAccessTokenKey)) -L https://$(inputs.params.GitHubDomain)/api/v3/repos/$(inputs.params.GitHubOrg)/$(inputs.params.GitHubRepo)/hooks
+      fi
+EOF
+

Create secret with GitHub Personal Access Token (opens new window):

cat << EOF | kubectl apply -f -
+apiVersion: v1
+kind: Secret
+metadata:
+  name: webhook-secret
+  namespace: getting-started
+stringData:
+  token: ${GITHUB_TOKEN}
+  secret: random-string-data
+EOF
+

Create TaskRun to initiate Webhook:

sleep 20 # Wait for DNS created by previous TaskRun
+cat << EOF | kubectl apply -f -
+apiVersion: tekton.dev/v1alpha1
+kind: TaskRun
+metadata:
+  name: create-webhook-run
+  namespace: getting-started
+spec:
+  taskRef:
+    name: create-webhook
+  inputs:
+    params:
+    - name: GitHubOrg
+      value: "ruzickap"
+    - name: GitHubUser
+      value: "ruzickap"
+    - name: GitHubRepo
+      value: "podinfo"
+    - name: GitHubSecretName
+      value: webhook-secret
+    - name: GitHubAccessTokenKey
+      value: token
+    - name: GitHubSecretStringKey
+      value: secret
+    - name: ExternalDomain
+      value: getting-started.${MY_DOMAIN}
+  timeout: 1000s
+  serviceAccount: tekton-triggers-createwebhook
+EOF
+sleep 5
+

Verify if the TaskRuns were successfully executed:

kubectl get taskruns.tekton.dev -n getting-started
+

Output:

NAME                                      SUCCEEDED   REASON      STARTTIME   COMPLETIONTIME
+create-istio-gateway-virtualservice-run   True        Succeeded   80s         71s
+create-webhook-run                        Unknown     Pending     2s
+

Look at the logs from create-istio-gateway-virtualservice TaskRun:

tkn taskrun logs -n getting-started create-istio-gateway-virtualservice-run
+

Output:

[create-istio-gateway-virtualservice] + + kubectl create -f -
+[create-istio-gateway-virtualservice] cat
+[create-istio-gateway-virtualservice] gateway.networking.istio.io/el-getting-started-listener-gateway created
+[create-istio-gateway-virtualservice] virtualservice.networking.istio.io/el-getting-started-listener-virtual-service created
+

Look at the logs from create-webhook-run TaskRun:

tkn taskrun logs -n getting-started create-webhook-run
+

Output:

[create-webhook] Create Webhook
+[create-webhook] Note: Unnecessary use of -X or --request, POST is already inferred.
+[create-webhook]   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
+[create-webhook]                                  Dload  Upload   Total   Spent    Left  Speed
+  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying 140.82.118.6...
+[create-webhook] * TCP_NODELAY set
+[create-webhook] * Connected to api.github.com (140.82.118.6) port 443 (#0)
+[create-webhook] * ALPN, offering h2
+[create-webhook] * ALPN, offering http/1.1
+[create-webhook] * successfully set certificate verify locations:
+[create-webhook] *   CAfile: /etc/ssl/certs/ca-certificates.crt
+[create-webhook]   CApath: none
+[create-webhook] * TLSv1.2 (OUT), TLS handshake, Client hello (1):
+[create-webhook] } [232 bytes data]
+[create-webhook] * TLSv1.2 (IN), TLS handshake, Server hello (2):
+[create-webhook] { [108 bytes data]
+[create-webhook] * TLSv1.2 (IN), TLS handshake, Certificate (11):
+[create-webhook] { [2851 bytes data]
+[create-webhook] * TLSv1.2 (IN), TLS handshake, Server key exchange (12):
+[create-webhook] { [300 bytes data]
+[create-webhook] * TLSv1.2 (IN), TLS handshake, Server finished (14):
+[create-webhook] { [4 bytes data]
+[create-webhook] * TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
+[create-webhook] } [37 bytes data]
+[create-webhook] * TLSv1.2 (OUT), TLS change cipher, Client hello (1):
+[create-webhook] } [1 bytes data]
+[create-webhook] * TLSv1.2 (OUT), TLS handshake, Finished (20):
+[create-webhook] } [16 bytes data]
+[create-webhook] * TLSv1.2 (IN), TLS change cipher, Client hello (1):
+[create-webhook] { [1 bytes data]
+[create-webhook] * TLSv1.2 (IN), TLS handshake, Finished (20):
+[create-webhook] { [16 bytes data]
+[create-webhook] * SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
+[create-webhook] * ALPN, server accepted to use http/1.1
+[create-webhook] * Server certificate:
+[create-webhook] *  subject: C=US; ST=California; L=San Francisco; O=GitHub, Inc.; CN=*.github.com
+[create-webhook] *  start date: Jul  8 00:00:00 2019 GMT
+[create-webhook] *  expire date: Jul 16 12:00:00 2020 GMT
+[create-webhook] *  subjectAltName: host "api.github.com" matched cert's "*.github.com"
+[create-webhook] *  issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert SHA2 High Assurance Server CA
+[create-webhook] *  SSL certificate verify ok.
+[create-webhook] * Server auth using Basic with user 'ruzickap'
+[create-webhook] > POST /repos/ruzickap/podinfo/hooks HTTP/1.1
+[create-webhook] > Host: api.github.com
+[create-webhook] > Authorization: Basic cnxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxU3MA==
+[create-webhook] > User-Agent: curl/7.60.0
+[create-webhook] > Accept: */*
+[create-webhook] > Content-Length: 195
+[create-webhook] > Content-Type: application/x-www-form-urlencoded
+[create-webhook] >
+[create-webhook] } [195 bytes data]
+[create-webhook] * upload completely sent off: 195 out of 195 bytes
+[create-webhook] &lt; HTTP/1.1 201 Created
+[create-webhook] &lt; Date: Fri, 27 Dec 2019 10:19:37 GMT
+[create-webhook] &lt; Content-Type: application/json; charset=utf-8
+[create-webhook] &lt; Content-Length: 688
+[create-webhook] &lt; Server: GitHub.com
+[create-webhook] &lt; Status: 201 Created
+[create-webhook] &lt; X-RateLimit-Limit: 5000
+[create-webhook] &lt; X-RateLimit-Remaining: 4992
+[create-webhook] &lt; X-RateLimit-Reset: 1577445296
+[create-webhook] &lt; Cache-Control: private, max-age=60, s-maxage=60
+[create-webhook] &lt; Vary: Accept, Authorization, Cookie, X-GitHub-OTP
+[create-webhook] &lt; ETag: "a9xxxxxxxxxxxxxxxxxxxxxxxxxxxxe3"
+[create-webhook] &lt; X-OAuth-Scopes: admin:org_hook, admin:repo_hook, delete_repo, read:org, repo, user:email
+[create-webhook] &lt; X-Accepted-OAuth-Scopes: admin:repo_hook, public_repo, repo, write:repo_hook
+[create-webhook] &lt; Location: https://api.github.com/repos/ruzickap/podinfo/hooks/170061618
+[create-webhook] &lt; X-GitHub-Media-Type: github.v3; format=json
+[create-webhook] &lt; Access-Control-Expose-Headers: ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type
+[create-webhook] &lt; Access-Control-Allow-Origin: *
+[create-webhook] &lt; Strict-Transport-Security: max-age=31536000; includeSubdomains; preload
+[create-webhook] &lt; X-Frame-Options: deny
+[create-webhook] &lt; X-Content-Type-Options: nosniff
+[create-webhook] &lt; X-XSS-Protection: 1; mode=block
+[create-webhook] &lt; Referrer-Policy: origin-when-cross-origin, strict-origin-when-cross-origin
+[create-webhook] &lt; Content-Security-Policy: default-src 'none'
+[create-webhook] &lt; Vary: Accept-Encoding
+[create-webhook] &lt; X-GitHub-Request-Id: CEXX:XXXXX:XXXXXXX:XXXXXXX:XXXXXXB9
+[create-webhook] &lt;
+[create-webhook] { [688 bytes data]
+100   883  100   688  100   195   1746    494 --:--:-- --:--:-- --:--:--  2241
+[create-webhook] * Connection #0 to host api.github.com left intact
+[create-webhook] {
+[create-webhook]   "type": "Repository",
+[create-webhook]   "id": 170061618,
+[create-webhook]   "name": "web",
+[create-webhook]   "active": true,
+[create-webhook]   "events": [
+[create-webhook]     "pull_request",
+[create-webhook]     "push"
+[create-webhook]   ],
+[create-webhook]   "config": {
+[create-webhook]     "content_type": "json",
+[create-webhook]     "insecure_ssl": "1",
+[create-webhook]     "secret": "********",
+[create-webhook]     "url": "https://getting-started.mylabs.dev"
+[create-webhook]   },
+[create-webhook]   "updated_at": "2019-12-27T10:19:37Z",
+[create-webhook]   "created_at": "2019-12-27T10:19:37Z",
+[create-webhook]   "url": "https://api.github.com/repos/ruzickap/podinfo/hooks/170061618",
+[create-webhook]   "test_url": "https://api.github.com/repos/ruzickap/podinfo/hooks/170061618/test",
+[create-webhook]   "ping_url": "https://api.github.com/repos/ruzickap/podinfo/hooks/170061618/pings",
+[create-webhook]   "last_response": {
+[create-webhook]     "code": null,
+[create-webhook]     "status": "unused",
+[create-webhook]     "message": null
+[create-webhook]   }
+[create-webhook] }
+

You should also see in the GitHub / Settings / Webhook the registration https://github.com/ruzickap/podinfo/settings/hooks/ (opens new window):

GitHub Webhooks

After clicking on the Webhook you can see the details:

GitHub Webhooks - Details

In case you are troubleshooting the incoming traffic from GitHub the look at +the logs of the pod. You should be able to see the details +in the kubectl logs.

kubectl get pods -n getting-started -l eventlistener=getting-started-listener
+sleep 5
+

Output:

NAME                                          READY   STATUS    RESTARTS   AGE
+el-getting-started-listener-fcffc467d-xwsfp   1/1     Running   0          2m6s
+

# Change the source code of the app

Trigger the pipeline by calling the:

echo "Trigger build" >> podinfo/README.md
+git -C podinfo commit -s -a -m "Standard version"
+git -C podinfo push ruzickap
+sleep 30
+kubectl --timeout=10m -n getting-started wait --for=condition=Succeeded pipelineruns --all
+sleep 5
+

Output:

[master d4120e6] Standard version
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+Warning: Permanently added '[ssh.github.com]:443,[192.30.253.122]:443' (RSA) to the list of known hosts.
+Enumerating objects: 5, done.
+Counting objects: 100% (5/5), done.
+Delta compression using up to 4 threads
+Compressing objects: 100% (3/3), done.
+Writing objects: 100% (3/3), 325 bytes | 162.00 KiB/s, done.
+Total 3 (delta 2), reused 0 (delta 0)
+remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
+To github.com:ruzickap/podinfo.git
+   948de81..d4120e6  master -> master
+pipelinerun.tekton.dev/getting-started-pipeline-run-fzrtg condition met
+

Look at the logs of the newly deployed pod (look at "Starting podinfo"):

PODINFO_POD=$(kubectl get pods -n getting-started -l=run=podinfo -o jsonpath="{.items[0].metadata.name}")
+kubectl -n getting-started logs -n getting-started ${PODINFO_POD}
+

Output:

{"level":"info","ts":"2019-11-27T15:00:58.907Z","caller":"podinfo/main.go:120","msg":"Starting podinfo","version":"3.1.5","revision":"164a27b33b09d1b50fad277a60a6c19d353cb9d8","port":"9898"}
+

Let's try to change the code of the application:

sed -i "s/Starting podinfo/Starting podinfo - new Tekton build version/" podinfo/cmd/podinfo/main.go
+git -C podinfo diff
+git -C podinfo commit -s -a -m "String changed"
+git -C podinfo push ruzickap
+sleep 20
+

Output:

─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
+modified: cmd/podinfo/main.go
+─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
+@ cmd/podinfo/main.go:120 @ func main() {
+    }
+
+    // log version and port
+    logger.Info("Starting podinfo",
+    logger.Info("Starting podinfo - new Tekton build version",
+        zap.String("version", viper.GetString("version")),
+        zap.String("revision", viper.GetString("revision")),
+        zap.String("port", srvCfg.Port),
+[master 4d9f5bc] String changed
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+Warning: Permanently added '[ssh.github.com]:443,[192.30.253.122]:443' (RSA) to the list of known hosts.
+Enumerating objects: 9, done.
+Counting objects: 100% (9/9), done.
+Delta compression using up to 4 threads
+Compressing objects: 100% (4/4), done.
+Writing objects: 100% (5/5), 459 bytes | 459.00 KiB/s, done.
+Total 5 (delta 2), reused 0 (delta 0)
+remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
+To github.com:ruzickap/podinfo.git
+   d4120e6..4d9f5bc  master -> master
+

Wait for the pipelines to complete:

kubectl --timeout=10m -n getting-started wait --for=condition=Succeeded pipelineruns --all
+sleep 5
+

Output:

pipelinerun.tekton.dev/getting-started-pipeline-run-dzqdl condition met
+pipelinerun.tekton.dev/getting-started-pipeline-run-fzrtg condition met
+

Check how the logs of the newly deployed podinfo logs should contain +"Starting podinfo - new Tekton build version":

PODINFO_POD=$(kubectl get pods -n getting-started -l=run=podinfo -o jsonpath="{.items[0].metadata.name}")
+kubectl -n getting-started delete pod -n getting-started ${PODINFO_POD}
+sleep 5
+PODINFO_POD=$(kubectl get pods -n getting-started -l=run=podinfo -o jsonpath="{.items[0].metadata.name}")
+kubectl -n getting-started logs -n getting-started ${PODINFO_POD}
+cd ..
+

Output:

pod "podinfo-6ccfb5f9b6-bwrbn" deleted
+{"level":"info","ts":"2019-12-27T10:28:22.304Z","caller":"podinfo/main.go:120","msg":"Starting podinfo - new Tekton build version","version":"3.1.5","revision":"4d9f5bc71bd9a8c7ae44a9cd9631e45067727a2e","port":"9898"}
+
+ + + diff --git a/part-09/index.html b/part-09/index.html new file mode 100644 index 0000000..c70fcb9 --- /dev/null +++ b/part-09/index.html @@ -0,0 +1,96 @@ + + + + + + Knative operations | Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

# Knative operations

Create service my-podinfo-2 with image:

kn service create my-podinfo-2 --port 9898 --image harbor.mylabs.dev/library/my-podinfo:3.1.0
+sleep 30
+

Output:

Creating service 'my-podinfo-2' in namespace 'default':
+
+  0.205s The Route is still working to reflect the latest desired specification.
+  0.230s Configuration "my-podinfo-2" is waiting for a Revision to become ready.
+  7.132s ...
+  7.417s Ingress has not yet been reconciled.
+  9.415s Ready to serve.
+
+Service 'my-podinfo-2' created with latest revision 'my-podinfo-2-fzhhd-1' and URL:
+http://my-podinfo-2.default.mylabs.dev
+

Check if the application is really working:

curl -k http://my-podinfo-2.default.mylabs.dev https://my-podinfo-2.default.mylabs.dev
+

Output:

{
+  "hostname": "my-podinfo-2-fzhhd-1-deployment-566757c497-xvc2m",
+  "version": "3.1.0",
+  "revision": "5fb970b526dd40f9a94085fd237f0a2c3bd65520",
+  "color": "blue",
+  "message": "greetings from podinfo v3.1.0",
+  "goos": "linux",
+  "goarch": "amd64",
+  "runtime": "go1.12.14",
+  "num_goroutine": "6",
+  "num_cpu": "2"
+}{
+  "hostname": "my-podinfo-2-fzhhd-1-deployment-566757c497-xvc2m",
+  "version": "3.1.0",
+  "revision": "5fb970b526dd40f9a94085fd237f0a2c3bd65520",
+  "color": "blue",
+  "message": "greetings from podinfo v3.1.0",
+  "goos": "linux",
+  "goarch": "amd64",
+  "runtime": "go1.12.14",
+  "num_goroutine": "6",
+  "num_cpu": "2"
+}
+

Set hard limit of concurrent requests to be processed by a single replica:

kn service update my-podinfo-2 --concurrency-limit=1
+

Output:

Updating Service 'my-podinfo-2' in namespace 'default':
+
+  3.050s Traffic is not yet migrated to the latest revision.
+  3.104s Ingress has not yet been reconciled.
+  4.689s Ready to serve.
+
+Service 'my-podinfo-2' updated with latest revision 'my-podinfo-2-hfqhc-2' and URL:
+http://my-podinfo-2.default.mylabs.dev
+

Check the pods:

kubectl get pods
+

Output:

NAME                                                                         READY   STATUS      RESTARTS   AGE
+my-podinfo-2-fzhhd-1-deployment-566757c497-xvc2m                             2/2     Running     0          48s
+my-podinfo-2-hfqhc-2-deployment-864c8985c-jz59h                              2/2     Running     0          5s
+my-podinfo-build-docker-image-from-git-pipelinerun-build--msbcv-pod-d6861e   0/6     Completed   0          22m
+

podinfo - http/https

+ + + diff --git a/part-10/index.html b/part-10/index.html new file mode 100644 index 0000000..e39ba77 --- /dev/null +++ b/part-10/index.html @@ -0,0 +1,78 @@ + + + + + + Clean-up | Kubernetes + Knative + GitLab + Harbor + + + + + + + + +

# Clean-up

Clean-up

Configure kubeconfig:

export MY_DOMAIN="mylabs.dev"
+kops export kubecfg ${USER}-k8s.${MY_DOMAIN} --state=s3://${USER}-kops-k8s --kubeconfig /tmp/kubeconfig.conf
+export KUBECONFIG=/tmp/kubeconfig.conf
+

Remove DNS records:

kubectl delete gateways.networking.istio.io --all --all-namespaces && \
+kubectl delete pod -n external-dns --all && \
+sleep 15
+

Output:

gateway.networking.istio.io "el-getting-started-listener-gateway" deleted
+gateway.networking.istio.io "gitlab-gateway" deleted
+gateway.networking.istio.io "harbor-gateway" deleted
+gateway.networking.istio.io "istio-autogenerated-k8s-ingress" deleted
+gateway.networking.istio.io "istio-services-gateway" deleted
+gateway.networking.istio.io "knative-services-gateway" deleted
+gateway.networking.istio.io "cluster-local-gateway" deleted
+gateway.networking.istio.io "knative-ingress-gateway" deleted
+pod "external-dns-685b847795-mrchv" deleted
+

Delete GitHub repositories:

hub delete -y ruzickap/podinfo
+

Cleanup + Remove Helm:

test -d /home/${USER}/.helm        && rm -rf /home/${USER}/.helm
+test -d /home/${USER}/.config/helm && rm -rf /home/${USER}/.config/helm
+

Cleanup + Remove tmp directory:

rm -rf tmp
+

Docker certificate cleanup if exists:

sudo rm -rf /etc/docker/certs.d/harbor.${MY_DOMAIN}
+

Remove K8s cluster:

kops delete cluster --name=${USER}-k8s.${MY_DOMAIN} --yes --state=s3://${USER}-kops-k8s
+

Output:

...
+Deleted kubectl config for pruzicka-k8s.mylabs.de
+

Remove S3 bucket used for storing the configuration by kops:

aws s3 rm s3://${USER}-kops-k8s/${USER}-app-build.tar
+aws s3api delete-bucket --bucket ${USER}-kops-k8s --region eu-central-1
+

Clean Policy, User, Access Key in AWS:

# aws route53 delete-hosted-zone --id $(aws route53 list-hosted-zones --query "HostedZones[?Name==\`${MY_DOMAIN}.\`].Id" --output text)
+
+POLICY_ARN=$(aws iam list-policies --query "Policies[?PolicyName==\`${USER}-k8s-${MY_DOMAIN}\`].{ARN:Arn}" --output text) && \
+aws iam detach-user-policy --user-name "${USER}-k8s-${MY_DOMAIN}" --policy-arn ${POLICY_ARN} && \
+aws iam delete-policy --policy-arn ${POLICY_ARN}
+
+USER_ACCESS_KEYS=$(aws iam list-access-keys --user-name ${USER}-k8s-${MY_DOMAIN} --query "AccessKeyMetadata[].AccessKeyId" --output text) && \
+aws iam delete-access-key --user-name ${USER}-k8s-${MY_DOMAIN} --access-key-id ${USER_ACCESS_KEYS}
+
+aws iam delete-user --user-name ${USER}-k8s-${MY_DOMAIN}
+

Remove other files:

rm demo-magic.sh kubeconfig.conf README.sh &> /dev/null
+
+ + +

# Create k8s cluster

Before starting with the main content, it's necessary to provision +the Kubernetes in AWS.

Use the MY_DOMAIN variable containing domain and LETSENCRYPT_ENVIRONMENT +variable. +The LETSENCRYPT_ENVIRONMENT variable should be one of:

  • staging - Let’s Encrypt will create testing certificate (not valid)

  • production - Let’s Encrypt will create valid certificate (use with care)

export MY_DOMAIN=${MY_DOMAIN:-mylabs.dev}
+export LETSENCRYPT_ENVIRONMENT=${LETSENCRYPT_ENVIRONMENT:-staging}
+echo "${MY_DOMAIN} | ${LETSENCRYPT_ENVIRONMENT}"
+

# Prepare the local working environment

TIP

You can skip these steps if you have all the required software already +installed.

Install necessary software:

if [ -x /usr/bin/apt ]; then
+  apt update -qq
+  DEBIAN_FRONTEND=noninteractive apt-get install -y -qq awscli curl docker.io gettext-base git jq openssh-client sudo wget > /dev/null
+fi
+

Install kubectl (opens new window) binary:

if [ ! -x /usr/local/bin/kubectl ]; then
+  sudo curl -s -Lo /usr/local/bin/kubectl https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
+  sudo chmod a+x /usr/local/bin/kubectl
+fi
+

Install kops (opens new window):

if [ ! -x /usr/local/bin/kops ]; then
+  curl -LO https://github.com/kubernetes/kops/releases/download/$(curl -s https://api.github.com/repos/kubernetes/kops/releases/latest | jq -r '.tag_name')/kops-linux-amd64
+  chmod +x kops-linux-amd64
+  sudo mv kops-linux-amd64 /usr/local/bin/kops
+fi
+

Install kn client for Knative:

if [ ! -x /usr/local/bin/kn ]; then
+  sudo curl -s -L "https://github.com/knative/client/releases/download/v0.11.0/kn-linux-amd64" -o /usr/local/bin/kn
+  sudo chmod a+x /usr/local/bin/kn
+fi
+

Install tkn client for Tekton:

if [ ! -x /usr/local/bin/tkn ]; then
+  curl -s -L https://github.com/tektoncd/cli/releases/download/v0.6.0/tkn_0.6.0_Linux_x86_64.tar.gz | tar xzf - -C /tmp/
+  sudo mv /tmp/tkn /usr/local/bin/
+fi
+

Install hub (opens new window):

if [ ! -x /usr/local/bin/hub ]; then
+  curl -s -L https://github.com/github/hub/releases/download/v2.13.0/hub-linux-amd64-2.13.0.tgz | tar xzf - -C /tmp/
+  sudo mv /tmp/hub-linux-amd64-2.13.0/bin/hub /usr/local/bin/
+fi
+

# Configure AWS

Authorize to AWS using AWS CLI: Configuring the AWS CLI (opens new window)

aws configure
+...
+

Create DNS zone:

aws route53 create-hosted-zone --name ${MY_DOMAIN} --caller-reference ${MY_DOMAIN}
+

Use your domain registrar to change the nameservers for your zone (for example +mylabs.dev) to use the Amazon Route 53 nameservers. Here is the way how you +can find out the the Route 53 nameservers:

aws route53 get-hosted-zone --id $(aws route53 list-hosted-zones --query "HostedZones[?Name==\`${MY_DOMAIN}.\`].Id" --output text) --query "DelegationSet.NameServers"
+

Create policy allowing the cert-manager to change Route 53 settings. This will +allow cert-manager to generate wildcard SSL certificates by Let's Encrypt +certificate authority.

test -d tmp || mkdir tmp
+envsubst < files/user_policy.json > tmp/user_policy.json
+
+aws iam create-policy \
+  --policy-name ${USER}-k8s-${MY_DOMAIN} \
+  --description "Policy for ${USER}-k8s-${MY_DOMAIN}" \
+  --policy-document file://tmp/user_policy.json \
+| jq
+

Output:

{
+  "Policy": {
+    "PolicyName": "pruzicka-k8s-mylabs.dev",
+    "PolicyId": "xxxxxxxxxxxxxxxxxxxx",
+    "Arn": "arn:aws:iam::822044714040:policy/pruzicka-k8s-mylabs.dev",
+    "Path": "/",
+    "DefaultVersionId": "v1",
+    "AttachmentCount": 0,
+    "PermissionsBoundaryUsageCount": 0,
+    "IsAttachable": true,
+    "CreateDate": "2019-12-27T09:41:14Z",
+    "UpdateDate": "2019-12-27T09:41:14Z"
+  }
+}
+

Create user which will use the policy above:

aws iam create-user --user-name ${USER}-k8s-${MY_DOMAIN} | jq && \
+POLICY_ARN=$(aws iam list-policies --query "Policies[?PolicyName==\`${USER}-k8s-${MY_DOMAIN}\`].{ARN:Arn}" --output text) && \
+aws iam attach-user-policy --user-name "${USER}-k8s-${MY_DOMAIN}" --policy-arn $POLICY_ARN && \
+aws iam create-access-key --user-name ${USER}-k8s-${MY_DOMAIN} > $HOME/.aws/${USER}-k8s-${MY_DOMAIN} && \
+export USER_AWS_ACCESS_KEY_ID=$(awk -F\" "/AccessKeyId/ { print \$4 }" $HOME/.aws/${USER}-k8s-${MY_DOMAIN}) && \
+export USER_AWS_SECRET_ACCESS_KEY=$(awk -F\" "/SecretAccessKey/ { print \$4 }" $HOME/.aws/${USER}-k8s-${MY_DOMAIN})
+

Output:

{
+  "User": {
+    "Path": "/",
+    "UserName": "pruzicka-k8s-mylabs.dev",
+    "UserId": "xxxxxxxxxxxxxxxxxxxx",
+    "Arn": "arn:aws:iam::822044714040:user/pruzicka-k8s-mylabs.dev",
+    "CreateDate": "2019-12-27T09:41:27Z"
+  }
+}
+

The AccessKeyId and SecretAccessKey is need for creating the ClusterIssuer +definition for cert-manager.

# Create K8s in AWS

Architecture

Generate SSH keys if not exists:

test -f $HOME/.ssh/id_rsa || ( install -m 0700 -d $HOME/.ssh && ssh-keygen -b 2048 -t rsa -f $HOME/.ssh/id_rsa -q -N "" )
+

Clone the k8s-knative-gitlab-harbor Git repository if it wasn't done already:

if [ ! -d .git ]; then
+  git clone --quiet https://github.com/ruzickap/k8s-k8s-knative-gitlab-harbor && cd k8s-knative-gitlab-harbor
+fi
+

Create S3 bucket where the kops will store cluster status:

aws s3api create-bucket --bucket ${USER}-kops-k8s --region eu-central-1 --create-bucket-configuration LocationConstraint=eu-central-1 | jq
+

Output:

{
+  "Location": "http://pruzicka-kops-k8s.s3.amazonaws.com/"
+}
+

Create Kubernetes cluster in AWS by using kops (opens new window):

kops create cluster \
+  --name=${USER}-k8s.${MY_DOMAIN} \
+  --state=s3://${USER}-kops-k8s \
+  --zones=eu-central-1a \
+  --networking=amazon-vpc-routed-eni \
+  --node-count=5 \
+  --node-size=t3.large \
+  --node-volume-size=20 \
+  --master-count=1 \
+  --master-size=t3.small \
+  --master-volume-size=10 \
+  --dns-zone=${MY_DOMAIN} \
+  --cloud-labels "Owner=${USER},Environment=Test,Division=Services" \
+  --ssh-public-key $HOME/.ssh/id_rsa.pub \
+  --yes
+

Output:

...
+I1227 10:42:09.459809   15782 executor.go:103] Tasks: 91 done / 91 total; 0 can run
+I1227 10:42:09.459901   15782 dns.go:155] Pre-creating DNS records
+I1227 10:42:10.791005   15782 update_cluster.go:294] Exporting kubecfg for cluster
+kops has set your kubectl context to pruzicka-k8s.mylabs.dev
+
+Cluster changes have been applied to the cloud.
+
+
+Changes may require instances to restart: kops rolling-update cluster
+

Wait for cluster to be up and running:

sleep 200
+while `kops validate cluster --state=s3://${USER}-kops-k8s -o yaml 2>&1 | grep -q failures`; do sleep 5; echo -n .; done
+echo
+

Store kubeconfig in current directory:

kops export kubecfg ${USER}-k8s.${MY_DOMAIN} --state=s3://${USER}-kops-k8s --kubeconfig kubeconfig.conf
+

Check if the new Kubernetes cluster is available:

export KUBECONFIG=$PWD/kubeconfig.conf
+kubectl get nodes -o wide
+

Output:

NAME                                             STATUS   ROLES    AGE     VERSION   INTERNAL-IP     EXTERNAL-IP      OS-IMAGE                       KERNEL-VERSION   CONTAINER-RUNTIME
+ip-172-20-37-106.eu-central-1.compute.internal   Ready    master   2m23s   v1.15.6   172.20.37.106   35.159.31.183    Debian GNU/Linux 9 (stretch)   4.9.0-11-amd64   docker://18.6.3
+ip-172-20-37-122.eu-central-1.compute.internal   Ready    node     56s     v1.15.6   172.20.37.122   3.120.151.131    Debian GNU/Linux 9 (stretch)   4.9.0-11-amd64   docker://18.6.3
+ip-172-20-37-204.eu-central-1.compute.internal   Ready    node     32s     v1.15.6   172.20.37.204   18.196.187.216   Debian GNU/Linux 9 (stretch)   4.9.0-11-amd64   docker://18.6.3
+ip-172-20-47-14.eu-central-1.compute.internal    Ready    node     67s     v1.15.6   172.20.47.14    18.196.173.69    Debian GNU/Linux 9 (stretch)   4.9.0-11-amd64   docker://18.6.3
+ip-172-20-47-61.eu-central-1.compute.internal    Ready    node     53s     v1.15.6   172.20.47.61    18.184.73.151    Debian GNU/Linux 9 (stretch)   4.9.0-11-amd64   docker://18.6.3
+ip-172-20-59-57.eu-central-1.compute.internal    Ready    node     83s     v1.15.6   172.20.59.57    54.93.48.121     Debian GNU/Linux 9 (stretch)   4.9.0-11-amd64   docker://18.6.3
+

In case of using staging environment add "Let's Encrypt testing" fakelerootx1.pem (opens new window) +as trusted certificate authority:

wget -q https://letsencrypt.org/certs/fakelerootx1.pem -O tmp/fakelerootx1.pem
+if [ ${LETSENCRYPT_ENVIRONMENT} = "staging" ]; then
+  sudo mkdir -pv /etc/docker/certs.d/harbor.${MY_DOMAIN}/
+  sudo cp tmp/fakelerootx1.pem /etc/docker/certs.d/harbor.${MY_DOMAIN}/ca.crt
+  for EXTERNAL_IP in $(kubectl get nodes --output=jsonpath="{.items[*].status.addresses[?(@.type==\"ExternalIP\")].address}"); do
+    ssh -q -o StrictHostKeyChecking=no -l admin ${EXTERNAL_IP} \
+      "sudo mkdir -p /etc/docker/certs.d/harbor.${MY_DOMAIN}/ && sudo wget -q https://letsencrypt.org/certs/fakelerootx1.pem -O /etc/docker/certs.d/harbor.${MY_DOMAIN}/ca.crt"
+  done
+  echo "*** Done"
+fi
+