Homelab 3 - ArgoCD

ArgoCD

So, with cdk8s I have an execellent way to author my Kubernetes manifests. How do I deploy them?

ArgoCD!

The workflow is actually quite simple. I store my Kubernetes manifests in a GitHub repo and I point ArgoCD to it.

How do I configure ArgoCD? With cdk8s, of course:

import { import ChartChart } from "https://esm.sh/[email protected]";
import { import ApplicationApplication } from "../../imports/argoproj.io.ts";

export function function createLamportApp(chart: Chart): anycreateLamportApp(chart: Chartchart: import ChartChart) {
  return new import ApplicationApplication(chart: Chartchart, "lamport-app", {
    
metadata: {
    name: string;
}
metadata
: {
name: stringname: "lamport", },
spec: {
    project: string;
    source: {
        repoUrl: string;
        path: string;
        targetRevision: string;
    };
    destination: {
        server: string;
        namespace: string;
    };
    syncPolicy: {
        automated: {};
        syncOptions: string[];
    };
}
spec
: {
project: stringproject: "default",
source: {
    repoUrl: string;
    path: string;
    targetRevision: string;
}
source
: {
repoUrl: stringrepoUrl: "https://github.com/shepherdjerred/homelab", path: stringpath: "cdk8s/dist/", targetRevision: stringtargetRevision: "main", },
destination: {
    server: string;
    namespace: string;
}
destination
: {
server: stringserver: "https://kubernetes.default.svc", namespace: stringnamespace: "lamport", },
syncPolicy: {
    automated: {};
    syncOptions: string[];
}
syncPolicy
: {
automated: {}automated: {}, syncOptions: string[]syncOptions: ["CreateNamespace=true"], }, }, }); }

Ingress and HTTPS with Tailscale

Direct connections and local networks

Persistant volumes

Backups

Monitoring

GPUs

Helm, Kustomize, and operators

Keeping things up-to-date

Recent posts from blogs that I like

Guerrilla event planning at larger conferences

How to capitalism with care

via Xe Iaso

Creating an already-completed asynchronous activity in C++/WinRT, part 9

Cheating the delegates. The post Creating an already-completed asynchronous activity in C++/WinRT, part 9 appeared first on The Old New Thing.

via The Old New Thing

Weeknotes: GPT-4o mini, LLM 0.15, sqlite-utils 3.37 and building a staging environment

via Simon Willison