feat: add comprehensive documentation and deployment scripts
- Created new documentation files including TROUBLESHOOTING.md, CONFIGURATION.md, and CONTRIBUTING.md. - Added deployment guide with automated and manual instructions. - Introduced new YAML configurations for Kubernetes resources and Helm charts. - Implemented a deployment script for setting up the GitOps infrastructure.
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
- orch-project.yaml
|
||||
- orch-projectconfig.yaml
|
||||
- orch-warehouse.yaml
|
||||
- orch-stage.yaml
|
||||
- orch-promotion-template.yaml
|
||||
@@ -0,0 +1,7 @@
|
||||
apiVersion: kargo.akuity.io/v1alpha1
|
||||
kind: Project
|
||||
metadata:
|
||||
name: orchestration-kargo
|
||||
annotations:
|
||||
# This annotation ensures Projects (Namespaces) are created first when deployed via Argo CD
|
||||
argocd.argoproj.io/sync-wave: "-1"
|
||||
@@ -0,0 +1,9 @@
|
||||
apiVersion: kargo.akuity.io/v1alpha1
|
||||
kind: ProjectConfig
|
||||
metadata:
|
||||
name: orchestration-kargo
|
||||
spec:
|
||||
promotionPolicies:
|
||||
- autoPromotionEnabled: true
|
||||
stageSelector:
|
||||
name: regex:^.*$
|
||||
@@ -0,0 +1,66 @@
|
||||
apiVersion: kargo.akuity.io/v1alpha1
|
||||
kind: PromotionTask
|
||||
metadata:
|
||||
name: orchestration-stack-promotion-template-argo
|
||||
namespace: orchestration-kargo
|
||||
spec:
|
||||
vars:
|
||||
- name: repoUrl
|
||||
value: https://git.janis-eccarius.de/NowChess/Gitops.git
|
||||
- name: branch
|
||||
value: main
|
||||
- name: imageTag
|
||||
value: ${{ chartFrom(vars.imageUrl, vars.chartName).Version }}
|
||||
steps:
|
||||
- uses: git-clone
|
||||
config:
|
||||
repoURL: ${{ vars.repoUrl }}
|
||||
checkout:
|
||||
- branch: ${{ vars.branch }}
|
||||
path: ./work
|
||||
- uses: yaml-update
|
||||
as: update-app
|
||||
config:
|
||||
path: "./work/eu-central-1/argo-apps/${{ vars.argoName }}/${{ vars.argoName }}.yaml"
|
||||
updates:
|
||||
- key: spec.sources.0.targetRevision
|
||||
value: ${{ vars.imageTag }}
|
||||
|
||||
- uses: git-commit
|
||||
as: commit
|
||||
config:
|
||||
path: ./work
|
||||
message: "chore(kargo): update image tag ${{ vars.argoName }} to ${{ vars.imageTag }}"
|
||||
|
||||
- uses: git-push
|
||||
as: push
|
||||
if: "${{ status('commit') != 'Skipped'}}"
|
||||
config:
|
||||
path: ./work
|
||||
generateTargetBranch: true
|
||||
|
||||
- uses: git-open-pr
|
||||
if: "${{ status('commit') != 'Skipped'}}"
|
||||
as: open-pr
|
||||
config:
|
||||
repoURL: ${{ vars.repoUrl }}
|
||||
provider: "gitea"
|
||||
sourceBranch: ${{ task.outputs['push'].branch }}
|
||||
targetBranch: ${{ vars.branch }}
|
||||
title: "chore(kargo): update image tag ${{ vars.argoName }} to ${{ vars.imageTag }}"
|
||||
labels: ["kargo", "promotion"]
|
||||
- uses: git-merge-pr
|
||||
if: "${{ status('open-pr') != 'Skipped'}}"
|
||||
as: merge-pr
|
||||
config:
|
||||
repoURL: ${{ vars.repoUrl }}
|
||||
provider: "gitea"
|
||||
prNumber: ${{ task.outputs['open-pr'].pr.id }}
|
||||
wait: true
|
||||
- uses: git-wait-for-pr
|
||||
if: "${{ status('open-pr') != 'Skipped'}}"
|
||||
as: wait-for-pr
|
||||
config:
|
||||
repoURL: ${{ vars.repoUrl }}
|
||||
provider: "gitea"
|
||||
prNumber: ${{ task.outputs['open-pr'].pr.id }}
|
||||
@@ -0,0 +1,55 @@
|
||||
apiVersion: kargo.akuity.io/v1alpha1
|
||||
kind: Stage
|
||||
metadata:
|
||||
name: kargo
|
||||
annotations:
|
||||
kargo.akuity.io/color: red
|
||||
spec:
|
||||
vars:
|
||||
- name: imageUrl
|
||||
value: oci://ghcr.io/akuity/kargo-charts/kargo
|
||||
- name: argoName
|
||||
value: kargo
|
||||
- name: chartName
|
||||
value: ""
|
||||
requestedFreight:
|
||||
- origin:
|
||||
kind: Warehouse
|
||||
name: kargo
|
||||
sources:
|
||||
direct: true
|
||||
autoPromotionOptions:
|
||||
selectionPolicy: NewestFreight
|
||||
promotionTemplate:
|
||||
spec:
|
||||
steps:
|
||||
- task:
|
||||
name: orchestration-stack-promotion-template-argo
|
||||
---
|
||||
apiVersion: kargo.akuity.io/v1alpha1
|
||||
kind: Stage
|
||||
metadata:
|
||||
name: argo-rollouts
|
||||
annotations:
|
||||
kargo.akuity.io/color: purple
|
||||
spec:
|
||||
vars:
|
||||
- name: imageUrl
|
||||
value: https://argoproj.github.io/argo-helm
|
||||
- name: argoName
|
||||
value: argo-rollouts
|
||||
- name: chartName
|
||||
value: argo-rollouts
|
||||
requestedFreight:
|
||||
- origin:
|
||||
kind: Warehouse
|
||||
name: argo-rollouts
|
||||
sources:
|
||||
direct: true
|
||||
autoPromotionOptions:
|
||||
selectionPolicy: NewestFreight
|
||||
promotionTemplate:
|
||||
spec:
|
||||
steps:
|
||||
- task:
|
||||
name: orchestration-stack-promotion-template-argo
|
||||
@@ -0,0 +1,35 @@
|
||||
apiVersion: kargo.akuity.io/v1alpha1
|
||||
kind: Warehouse
|
||||
metadata:
|
||||
name: kargo
|
||||
spec:
|
||||
subscriptions:
|
||||
- chart:
|
||||
repoURL: oci://ghcr.io/akuity/kargo-charts/kargo
|
||||
semverConstraint: ^1.8.1
|
||||
interval: "15m0s"
|
||||
---
|
||||
apiVersion: kargo.akuity.io/v1alpha1
|
||||
kind: Warehouse
|
||||
metadata:
|
||||
name: argo-rollouts
|
||||
spec:
|
||||
subscriptions:
|
||||
- chart:
|
||||
repoURL: https://argoproj.github.io/argo-helm
|
||||
name: argo-rollouts
|
||||
semverConstraint: ^2.40.5
|
||||
interval: "15m0s"
|
||||
---
|
||||
apiVersion: kargo.akuity.io/v1alpha1
|
||||
kind: Warehouse
|
||||
metadata:
|
||||
name: cert-manager
|
||||
spec:
|
||||
subscriptions:
|
||||
- chart:
|
||||
repoURL: https://charts.jetstack.io
|
||||
name: cert-manager
|
||||
semverConstraint: ^1.19.1
|
||||
interval: "15m0s"
|
||||
---
|
||||
Reference in New Issue
Block a user