Skip to content

Commit

Permalink
Merge branch 'main' into add-the-grapple-solution-framework
Browse files Browse the repository at this point in the history
  • Loading branch information
fharper authored Nov 5, 2024
2 parents 798f577 + 2c34a0d commit 44e6446
Show file tree
Hide file tree
Showing 45 changed files with 4,497 additions and 81 deletions.
11 changes: 11 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"name": "devcontainer",
"image": "ghcr.io/kubefirst/devcontainers/full:latest",
"features": {},
"customizations": {
"vscode": {
"extensions": [],
"settings": {}
}
}
}
18 changes: 18 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# editorconfig.org
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.go]
indent_style = tab
indent_size = 4

[Makefile]
indent_style = tab
indent_size = 4
8 changes: 8 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,14 @@ To make a new application available for installation, you'll need to:
- Create a new directory with your new application's name in your fork.
- Create a `components` folder, and inside, another folder with your application's name.
- In that latest folder, add, and organize your Argo CD manifest file(s) into it.
- Annotate your Argo CD application with the following annotations. The Kubefirst platform uses this information to surface installed application in the UI.

```yaml
annotations:
kubefirst.konstruct.io/application-name: <appName>
kubefirst.konstruct.io/source: catalog-templates
```
- Don't forget to look at the [Kubefirst Tokens](#kubefirst-tokens) section as you can dynamically add specific values to your manifests like domain or cluster names.
- In the root folder of your application create an "App of Apps" YAML file that will point to the component folder.
- Add a SVG file of the application's logo, named `<appName>.svg` under the [logos folder](https://github.com/kubefirst/gitops-catalog/tree/main/logos).
Expand Down
3 changes: 3 additions & 0 deletions argo-events/components/argo-events/application.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ kind: Application
metadata:
name: <CLUSTER_NAME>-argo-events
namespace: argocd
annotations:
kubefirst.konstruct.io/application-name: argo-events
kubefirst.konstruct.io/source: catalog-templates
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
Expand Down
3 changes: 3 additions & 0 deletions argo-rollouts/components/argo-rollouts/application.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ kind: Application
metadata:
name: <CLUSTER_NAME>-argo-rollouts
namespace: argocd
annotations:
kubefirst.konstruct.io/application-name: argo-rollouts
kubefirst.konstruct.io/source: catalog-templates
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
Expand Down
25 changes: 25 additions & 0 deletions cilium/cilium.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: <CLUSTER_NAME>-cilium-components
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: '100'
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: default
source:
repoURL: <GITOPS_REPO_URL>
path: <REGISTRY_PATH>/components/cilium
targetRevision: HEAD
destination:
name: in-cluster
namespace: cilium
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
26 changes: 26 additions & 0 deletions cilium/components/cilium/application.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: <CLUSTER_NAME>-cilium
namespace: argocd
annotations:
kubefirst.konstruct.io/application-name: cilium
kubefirst.konstruct.io/source: catalog-templates
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
destination:
namespace: cilium
name: <CLUSTER_DESTINATION>
source:
repoURL: https://helm.cilium.io/
targetRevision: 1.16.1 # Update this to the desired version, this is the current lastest (stable) version on the Cilium Helm repository
chart: cilium
project: default
syncPolicy:
syncOptions:
- CreateNamespace=true
automated:
prune: true
selfHeal: true
23 changes: 23 additions & 0 deletions cluster-autoscaler-aws/cluster-autoscaler-aws.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: <CLUSTER_NAME>-cluster-autoscaler-aws-components
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: '100'
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: default
source:
repoURL: <GITOPS_REPO_URL>
path: <REGISTRY_PATH>/components/cluster-autoscaler-aws
targetRevision: HEAD
destination:
name: in-cluster
namespace: kube-system
syncPolicy:
automated:
prune: true
selfHeal: true
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: <CLUSTER_NAME>-cluster-autoscaler-aws
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: '20'
kubefirst.konstruct.io/application-name: cluster-autoscaler-aws
kubefirst.konstruct.io/source: catalog-templates
spec:
project: <PROJECT>
source:
repoURL: https://kubernetes.github.io/autoscaler
targetRevision: 9.37.0
chart: cluster-autoscaler
helm:
releaseName: cluster-autoscaler-aws
values: |
autoDiscovery:
clusterName: <CLUSTER_NAME>
awsRegion: <CLOUD_REGION>
cloudProvider: aws
rbac:
serviceAccount:
annotations:
eks.amazonaws.com/role-arn : arn:aws:iam::<AWS_ACCOUNT_ID>:role/cluster-autoscaler-<CLUSTER_NAME>
create: true
name: "cluster-autoscaler"
destination:
name: <CLUSTER_DESTINATION>
namespace: kube-system
syncPolicy:
automated:
prune: true
selfHeal: true
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ metadata:
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: '20'
kubefirst.konstruct.io/application-name: cluster-autoscaler-civo
kubefirst.konstruct.io/source: catalog-templates
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: <PROJECT>
source:
Expand Down
3 changes: 3 additions & 0 deletions datadog-agent/components/datadog-agent/application.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ kind: Application
metadata:
name: <CLUSTER_NAME>-datadog
namespace: argocd
annotations:
kubefirst.konstruct.io/application-name: datadog-agent
kubefirst.konstruct.io/source: catalog-templates
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
Expand Down
24 changes: 20 additions & 4 deletions flappy-kray/components/flappy-kray/application.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,12 @@ kind: Application
metadata:
name: <CLUSTER_NAME>-flappy-kray
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
annotations:
argocd.argoproj.io/sync-wave: '0'
kubefirst.konstruct.io/application-name: flappy-kray
kubefirst.konstruct.io/source: catalog-templates
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
destination:
namespace: flappy-kray
Expand All @@ -19,9 +21,23 @@ spec:
helm:
values: |
image:
repository: public.ecr.aws/kubefirst/flappy-kray
repository: ghcr.io/konstructio/flappy-kray
ingress:
enabled: false
enabled: true
className: nginx
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
argocd.argoproj.io/sync-wave: '1'
hosts:
- host: flappy-kray.<DOMAIN_NAME>
paths:
- path: /
pathType: Prefix
tls:
- secretName: flappy-kray-tls
hosts:
- flappy-kray.<DOMAIN_NAME>
project: <PROJECT>
syncPolicy:
syncOptions:
Expand Down
26 changes: 0 additions & 26 deletions flappy-kray/components/flappy-kray/ingress.yaml

This file was deleted.

6 changes: 4 additions & 2 deletions gitlab/components/gitlab/application.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -100,10 +100,12 @@ kind: Application
metadata:
name: gitlab
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
annotations:
argocd.argoproj.io/sync-wave: '30'
kubefirst.konstruct.io/application-name: gitlab
kubefirst.konstruct.io/source: catalog-templates
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
destination:
name: <CLUSTER_DESTINATION>
Expand Down
22 changes: 22 additions & 0 deletions goldilocks/components/goldilocks/application.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,34 @@ metadata:
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: '10'
kubefirst.konstruct.io/application-name: goldilocks
kubefirst.konstruct.io/source: catalog-templates
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
project: <PROJECT>
source:
repoURL: 'https://charts.fairwinds.com/stable'
targetRevision: 6.5.6
chart: goldilocks
values: |
dashboard:
ingress:
enabled: true
ingressClassName: nginx
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
argocd.argoproj.io/sync-wave: '1'
hosts:
- host: goldilocks.<DOMAIN_NAME>
paths:
- path: /
type: ImplementationSpecific
tls:
- secretName: goldilocks-tls
hosts:
- goldilocks.<DOMAIN_NAME>
destination:
name: <CLUSTER_DESTINATION>
namespace: goldilocks
Expand Down
26 changes: 0 additions & 26 deletions goldilocks/components/goldilocks/ingress.yaml

This file was deleted.

6 changes: 4 additions & 2 deletions grafana/components/grafana/grafana.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
annotations:
argocd.argoproj.io/sync-wave: '20'
name: <CLUSTER_NAME>-grafana
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: '20'
kubefirst.konstruct.io/application-name: grafana
kubefirst.konstruct.io/source: catalog-templates
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
Expand Down
Loading

0 comments on commit 44e6446

Please sign in to comment.