Coder Social home page Coder Social logo

noshmak78 / kubernetes-config-argocd Goto Github PK

View Code? Open in Web Editor NEW

This project forked from piomin/kubernetes-config-argocd

0.0 0.0 0.0 37 KB

Kubernetes YAML manifests in configuration repository managed by Argo CD

Home Page: https://piotrminkowski.com

kubernetes-config-argocd's Introduction

Kubernetes GitOps Configuration Example with Argo CD Twitter

Here's the current structure of the repo (will be modified soon):

├── apps
│   └── cert-manager
│       ├── secrets.yaml
│       ├── certificates.yaml
│       └── cluster-issuer.yaml
└── bootstrap
    ├── Chart.yaml
    ├── templates
    │   ├── cert-manager.yaml
    │   ├── postgresql.yaml
    │   ├── projects.yaml
    │   ├── vault.yaml
    │   └── vault-config-operator.yaml
    └── values.yaml

For now, it shows how to install and use in the GitOps way:

  1. cert-manager via Helm chart

For more information you can refer to the articles:

  1. Testing GitOps on Virtual Kubernetes Clusters with ArgoCD

Getting Started

You can test the configuration on the virtual Kubernetes cluster using the vcluster tool. In order to that create the ArgoCD ApplicationSet based on the cluster generator:

apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
  name: config
  namespace: argocd
spec:
  generators:
    - clusters: # (1)
        selector:
          matchLabels:
            argocd.argoproj.io/secret-type: cluster
  template:
    metadata:
      name: '{{name}}-config-test'
    spec:
      destination:
        namespace: argocd
        server: https://kubernetes.default.svc
      project: default
      source:
        helm:
          parameters:
            - name: server
              value: '{{server}}'
            - name: project
              value: '{{metadata.labels.loft.sh/vcluster-instance-name}}'
        path: bootstrap
        repoURL: https://github.com/piomin/kubernetes-config-argocd.git
        targetRevision: '{{metadata.labels.loft.sh/vcluster-instance-name}}'
      syncPolicy:
        automated: {}
        syncOptions:
          - CreateNamespace=true

If you just want to test on the single cluster managed by ArgoCD you can create the following ArgoCD Application:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: config
  namespace: argocd
spec:
  destination:
    namespace: argocd
    server: https://kubernetes.default.svc
  project: default
  source:
    path: bootstrap
    repoURL: https://github.com/piomin/kubernetes-config-argocd.git
    targetRevision: HEAD
  syncPolicy:
    automated: {}
    syncOptions:
      - CreateNamespace=true

kubernetes-config-argocd's People

Contributors

piomin avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.