All Projects → operate-first → apps

operate-first / apps

Licence: GPL-3.0 license
Operate-first application manifests

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects
Makefile
30231 projects

Projects that are alternatives of or similar to apps

multi-stage-react-app-example
Repo for blog post - "A cleaner multi-stage continuous deployment on Kubernetes of a Create React App with kustomize, helm and skaffold"
Stars: ✭ 19 (-34.48%)
Mutual labels:  kustomize
kmval
A Kubernetes Kustomize Manifest Validator
Stars: ✭ 24 (-17.24%)
Mutual labels:  kustomize
htk8s
HTPC services running on Kubernetes
Stars: ✭ 69 (+137.93%)
Mutual labels:  kustomize
khelm
A Helm chart templating CLI, kpt function and kustomize plugin
Stars: ✭ 46 (+58.62%)
Mutual labels:  kustomize
Flux
Successor: https://github.com/fluxcd/flux2 — The GitOps Kubernetes operator
Stars: ✭ 6,688 (+22962.07%)
Mutual labels:  kustomize
build-a-platform-with-krm
Build a platform with the Kubernetes resource model!
Stars: ✭ 55 (+89.66%)
Mutual labels:  kustomize
Book k8sInfra
< 컨테이너 인프라 환경 구축을 위한 쿠버네티스/도커 >
Stars: ✭ 176 (+506.9%)
Mutual labels:  kustomize
gitops-app-distribution
GitOps workflow for managing app delivery on multiple clusters
Stars: ✭ 22 (-24.14%)
Mutual labels:  kustomize
examples
Examples to demonstrate how to use PipeCD
Stars: ✭ 21 (-27.59%)
Mutual labels:  kustomize
k8s-digester
Add digests to container and init container images in Kubernetes pod and pod template specs. Use either as a mutating admission webhook, or as a client-side KRM function with kpt or kustomize.
Stars: ✭ 65 (+124.14%)
Mutual labels:  kustomize
catalog
Catalog of cluster services as Kustomize bases.
Stars: ✭ 29 (+0%)
Mutual labels:  kustomize
homelab
My self-hosting infrastructure, fully automated from empty disk to operating services
Stars: ✭ 4,451 (+15248.28%)
Mutual labels:  kustomize
action-setup-kube-tools
Github Action that setup Kubernetes tools (kubectl, kustomize, helm, kubeconform, conftest, yq, rancher, tilt, skaffold) very fast and cache them on the runner. Please [✩Star] if you're using it!
Stars: ✭ 45 (+55.17%)
Mutual labels:  kustomize
k8s-opa-boilerplate
Boilerplate example of managing OPA with kustomize
Stars: ✭ 14 (-51.72%)
Mutual labels:  kustomize
gke-demo
Demonstration of complete, fully-featured CI/CD and cloud automation for microservices, done with GCP/GKE
Stars: ✭ 47 (+62.07%)
Mutual labels:  kustomize
flux-kustomize-example
Flux v1: Example of Flux using manifest generation with Kustomize
Stars: ✭ 71 (+144.83%)
Mutual labels:  kustomize
monokle
🧐 Monokle streamlines the process of creating, analyzing, and deploying Kubernetes configurations by providing a unified visual tool for authoring YAML manifests, validating policies, and managing live clusters.
Stars: ✭ 795 (+2641.38%)
Mutual labels:  kustomize
kustomize-libsonnet
A jsonnet library that implements most of the kustomize operations
Stars: ✭ 46 (+58.62%)
Mutual labels:  kustomize
gitops-catalog
Tools and technologies that are hosted on an OpenShift cluster
Stars: ✭ 163 (+462.07%)
Mutual labels:  kustomize
rules gitops
This repository contains rules for continuous, GitOps driven Kubernetes deployments.
Stars: ✭ 112 (+286.21%)
Mutual labels:  kustomize

Operate-First Apps

This repository serves as a centralized source of truth for the Operate First Community Cloud Offering.

In this repository you will find various OCP/K8s manifests that define the desired state of all our clusters and different services deployed on these clusters.

All manifests can be generated using kustomize. Though some builds may include encrypted data that require additional credentials (read more about how we encrypt files here).

All manifests found through this repo are deployed by our ArgoCD.

Documentation

All documentation can be found here.

What is an "App"?

Apps or Applications in this context refers to the ArgoCD notion of Application, as described in the ArgoCD docs. In short, you can think of an App as a collection of manifests that have a destination cluster where they should be deployed.

How does it work?

This diagram provides a simple illustration of the structure of a typical Application in this repo. In this illustration you can imagine an Application to be any group of manifests. These manifests belonging to an Application often make up a full deployment of a service which has end users (e.g. Grafana). Though sometimes, an Application may be just be a way to logically group a collection of manifests, like in the case of cluster-scope Application which harbors all cluster wide resources, configurations, and privileged resources.

Once a group of manifests are organized into a directory, they can be deployed using ArgoCD. To do this you simply need to create the application within ArgoCD, docs on how to do this can be found here.

Repo structure

You will also notice each app adheres to a structure made up of bases and overlays. This is a structure commonly found when using Kustomize. base directories contain manifests/configurations that are common to multiple clusters and generally don't harbor any cluster specific details. Within the overlays directory you'll find cluster specific configurations. A cluster specific folder within Overlays will inherit the manifests from base folders as needed, while also making patches/amendments specific to that cluster.

Contributing

We suggest ramping up on the following before attempting to work with the Apps repo:

We encourage you to browse around the following repos for issues you would be interested in tackling:

Beginner friendly issues are marked "Good first issue". Though you are welcome to take on any issue that interests you. If an issue is unclear or requires more information, feel free to reach out to us.

Please be sure to read the contributing docs here before making a PR.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].