From 86ef11f8e6046533031b5e2447f72fcf1361577e Mon Sep 17 00:00:00 2001 From: Hugh Hackman Date: Tue, 21 Apr 2026 20:05:49 +0000 Subject: [PATCH] Add CI/release workflows, artifacthub-pkg.yml, and package.json - Add .github/workflows/ci.yaml (calls plugin-ci from .github repo) - Add .github/workflows/release.yaml (calls plugin-release from .github repo) - Add artifacthub-pkg.yml for ArtifactHub distribution - Add package.json with headlamp-plugin scripts - Add README.md Co-Authored-By: Paperclip --- .github/workflows/ci.yaml | 11 +++++++++++ .github/workflows/release.yaml | 24 +++++++++++++++++++++++ README.md | 34 +++++++++++++++++++++++++++++++++ artifacthub-pkg.yml | 35 ++++++++++++++++++++++++++++++++++ package.json | 18 +++++++++++++++++ 5 files changed, 122 insertions(+) create mode 100644 .github/workflows/ci.yaml create mode 100644 .github/workflows/release.yaml create mode 100644 README.md create mode 100644 artifacthub-pkg.yml create mode 100644 package.json diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 0000000..b51bac0 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,11 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + ci: + uses: privilegedescalation/.github/.github/workflows/plugin-ci.yaml@main diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 0000000..79a58da --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,24 @@ +name: Release + +on: + workflow_dispatch: + inputs: + version: + description: 'Release version (e.g. 1.0.0)' + required: true + type: string + repository_dispatch: + types: [release] + +permissions: + contents: write + pull-requests: write + +jobs: + release: + uses: privilegedescalation/.github/.github/workflows/plugin-release.yaml@main + secrets: + RELEASE_APP_ID: ${{ secrets.RELEASE_APP_ID }} + RELEASE_APP_PRIVATE_KEY: ${{ secrets.RELEASE_APP_PRIVATE_KEY }} + with: + version: ${{ inputs.version || github.event.client_payload.version }} diff --git a/README.md b/README.md new file mode 100644 index 0000000..170a86c --- /dev/null +++ b/README.md @@ -0,0 +1,34 @@ +# headlamp-argocd + +A [Headlamp](https://headlamp.dev) plugin for ArgoCD visibility. + +Monitors ArgoCD Applications, Rollouts, and health status. Read-only — no cluster write operations. + +## Installation + +Install via Headlamp's built-in plugin installer (ArtifactHub): + +```bash +# Install from Headlamp UI → Settings → Plugins → Add plugin +# Search for "argocd" or paste the ArtifactHub URL +``` + +## Development + +```bash +npm install +npm run build +npm test +``` + +## Release + +Releases are automated via the GitHub Actions release workflow: + +```bash +gh workflow run Release --field version=0.1.0 +``` + +## License + +Apache-2.0 diff --git a/artifacthub-pkg.yml b/artifacthub-pkg.yml new file mode 100644 index 0000000..ec5e173 --- /dev/null +++ b/artifacthub-pkg.yml @@ -0,0 +1,35 @@ +version: "0.1.0" +name: headlamp-argocd +displayName: ArgoCD Headlamp Plugin +createdAt: "2026-04-21T00:00:00Z" +description: >- + Headlamp plugin for ArgoCD visibility. Monitors ArgoCD Applications, + Rollouts, and health status. Read-only — no cluster write operations. +license: Apache-2.0 +homeURL: https://github.com/privilegedescalation/headlamp-argocd-plugin +appVersion: "0.1.0" +keywords: + - argocd + - argoproj + - headlamp + - kubernetes + - gitops + - continuous-delivery +links: + - name: Source + url: https://github.com/privilegedescalation/headlamp-argocd-plugin + - name: ArgoCD + url: https://argo-cd.readthedocs.io/ +maintainers: + - name: privilegedescalation + email: chris@farhood.org +provider: + name: privilegedescalation +annotations: + headlamp/plugin/archive-url: "https://github.com/privilegedescalation/headlamp-argocd-plugin/releases/download/v0.1.0/headlamp-argocd-0.1.0.tar.gz" + headlamp/plugin/archive-checksum: "sha256:REPLACE_WITH_ACTUAL_CHECKSUM" + headlamp/plugin/version-compat: ">=0.26" + headlamp/plugin/distro-compat: "in-cluster" +changes: + - kind: added + description: "Initial v0.1.0 release" diff --git a/package.json b/package.json new file mode 100644 index 0000000..e793859 --- /dev/null +++ b/package.json @@ -0,0 +1,18 @@ +{ + "name": "headlamp-argocd", + "version": "0.1.0", + "description": "Headlamp plugin for ArgoCD visibility", + "license": "Apache-2.0", + "keywords": ["headlamp", "argocd", "kubernetes", "gitops"], + "scripts": { + "build": "headlamp-plugin build", + "lint": "headlamp-plugin lint", + "tsc": "headlamp-plugin tsc", + "format:check": "headlamp-plugin format:check", + "test": "headlamp-plugin test", + "package": "headlamp-plugin package" + }, + "devDependencies": { + "@kinvolk/headlamp-plugin": "^0.26.0" + } +}