mcpField
A
artifact-management

artifact-management

github.com/aj-geddesCloud & DevOps373436 installsUpdated 34w ago
Repository

About artifact-management

A practical skill for managing built binaries, Docker images, and packages across environments. It covers storage, versioning, distribution, registry publishing, and retention practices for teams handling build artifacts.

Key features

  1. 01Artifact storage and retrieval
  2. 02Versioning and retention policies
  3. 03Docker image optimization
  4. 04Registry publishing and distribution
  5. 05Artifact scanning and verification

Use cases

  1. 01Publishing npm packages
  2. 02Pushing images to a container registry
  3. 03Storing and retrieving build outputs
  4. 04Managing artifacts across registries

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill artifact-management

After installing, type/artifact-managementin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
docker-registry-configuration.md
github-container-registry-ghcr-push.md
npm-package-publishing.md
scripts/
validate-pipeline.sh
templates/
pipeline.yaml

Details

From the project README

Artifact Management

Table of Contents

Overview

Implement comprehensive artifact management strategies for storing, versioning, and distributing built binaries, Docker images, and packages across environments.

When to Use

  • Docker image registry management
  • Package publication and versioning
  • Build artifact storage and retrieval
  • Container image optimization
  • Artifact retention policies
  • Multi-registry distribution
  • Dependency caching

Quick Start

Minimal working example:

# Dockerfile with multi-stage build for optimization
FROM node:18-alpine AS dependencies
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production

FROM node:18-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

FROM node:18-alpine AS runtime
WORKDIR /app
COPY --from=dependencies /app/node_modules ./node_modules
COPY --from=builder /app/dist ./dist
COPY package*.json ./

EXPOSE 3000
HEALTHCHECK --interval=30s --timeout=3s --start-period=40s --retries=3 \
  CMD node healthcheck.js

CMD ["node", "dist/server.js"]

// ... (see reference guides for full implementation)

Reference Guides

Detailed implementations in the references/ directory:

GuideContents
Docker Registry ConfigurationDocker Registry Configuration
GitHub Container Registry (GHCR) PushGitHub Container Registry (GHCR) Push
npm Package Publishingnpm Package Publishing, Artifact Retention Policy, Artifact Versioning, GitLab Package Registry

Best Practices

✅ DO
  • Use semantic versioning for artifacts
  • Implement image scanning before deployment
  • Set retention policies for old artifacts
  • Use multi-stage builds for Docker images
  • Sign and verify artifacts
  • Implement artifact immutability
  • Document artifact metadata
  • Use specific base image versions
  • Implement vulnerability scanning
  • Cache layers aggressively
  • Tag images with commit SHA
  • Compress artifacts for storage
❌ DON'T
  • Use latest tag as sole identifier
  • Store secrets in artifacts
  • Push artifacts without scanning
  • Use untrusted base images
  • Skip artifact verification
  • Overwrite published artifacts
  • Mix binary and source artifacts
  • Ignore image layer optimization
  • Store build logs with sensitive data

Comments

Markdown supported