C

Comprehensive Artifacts Module

Boost productivity using this suite, tools, creating, elaborate. Includes structured workflows, validation checks, and reusable patterns for development.

SkillClipticsdevelopmentv1.0.0MIT
0 views0 copies

Comprehensive Artifacts Module

A Claude Code skill for managing build artifacts, release packages, and deployment assets in software projects. Covers artifact versioning, storage strategies, CI/CD artifact pipelines, container image management, and release automation.

When to Use This Skill

Choose Comprehensive Artifacts Module when:

  • You need to set up artifact storage and versioning for your project
  • You want to automate build artifact generation in CI/CD pipelines
  • You need to manage container images, packages, and release assets
  • You want to implement artifact promotion across environments
  • You need to clean up old artifacts with retention policies

Consider alternatives when:

  • You need general CI/CD pipeline setup (use a development framework skill)
  • You want container orchestration (use a Kubernetes/Docker skill)
  • You need package publishing specifically (use a package management skill)

Quick Start

# Install the skill claude install comprehensive-artifacts-module # Set up artifact pipeline claude "Set up a GitHub Actions pipeline that builds, tests, and publishes Docker images and npm packages" # Configure artifact storage claude "Configure artifact storage with retention policies: keep last 10 builds, keep all release builds for 1 year" # Implement artifact promotion claude "Design an artifact promotion flow: dev → staging → production with approval gates"

Core Concepts

Artifact Types

TypeFormatStorageExample
Container ImagesDocker/OCIContainer Registryapp:v1.2.3
NPM Packages.tgznpm Registry@org/[email protected]
Binary Releases.tar.gz, .zipGitHub Releases / S3app-linux-amd64.tar.gz
Static Assets.html, .js, .cssCDN / S3Build output bundle
Database Migrations.sqlVersion control001_create_users.sql

Versioning Strategies

Semantic Versioning (SemVer):
  MAJOR.MINOR.PATCH → 2.1.3
  MAJOR → Breaking changes
  MINOR → New features (backward compatible)
  PATCH → Bug fixes

CalVer (Calendar Versioning):
  YYYY.MM.DD → 2026.03.13
  Good for: applications with regular release cadences

Git-Based:
  {branch}-{short-sha}-{timestamp}
  Good for: development/staging artifacts

Pre-release Tags:
  1.0.0-alpha.1, 1.0.0-beta.3, 1.0.0-rc.1
  Good for: release candidates and testing

Artifact Pipeline

StageActionOutput
BuildCompile, bundle, packageRaw artifacts
TestRun tests against artifactsTest results
SignCryptographic signingSigned artifacts
PublishPush to registry/storagePublished artifacts
PromoteMove between environmentsPromoted artifacts
CleanRemove old artifactsFreed storage

Configuration

ParameterTypeDefaultDescription
registrystring"ghcr"Registry: ghcr, ecr, dockerhub, npm, s3
versioningstring"semver"Strategy: semver, calver, git_based
retention_daysnumber90Days to keep non-release artifacts
signingbooleanfalseSign artifacts cryptographically
promotion_flowstring[]["dev", "staging", "prod"]Environment promotion order

Best Practices

  1. Build once, deploy everywhere — Build your artifact once and promote the same artifact through dev → staging → production. Never rebuild for different environments. Use environment variables for environment-specific configuration.

  2. Tag artifacts immutably — Never overwrite a published artifact tag. v1.2.3 should always point to the same build. Use unique identifiers (git SHA, build number) for non-release artifacts to ensure traceability.

  3. Implement retention policies — Artifacts accumulate fast. Keep release artifacts indefinitely, keep the last 10 development builds, and delete everything else after 30 days. This prevents storage cost from growing unbounded.

  4. Sign release artifacts — For production releases, sign artifacts with a verified key. This lets consumers verify the artifact hasn't been tampered with. Use cosign for container images and GPG for binary releases.

  5. Automate the entire pipeline — Manual artifact creation leads to inconsistency and human error. Every artifact should be produced by CI/CD with reproducible builds. If a human runs the build command, the process is incomplete.

Common Issues

Artifact sizes are too large — Use multi-stage Docker builds to exclude build dependencies. Minimize npm packages with .npmignore. Compress binary releases. A 2GB Docker image is a sign of included build tools and dev dependencies.

Can't reproduce old builds — Pin all dependency versions (lock files, base image digests, tool versions). Store the build configuration alongside the artifact. You should be able to reproduce any artifact from its metadata.

Promotion between environments fails — Usually caused by environment-specific configuration baked into the artifact. Extract all configuration to environment variables or config files that are injected at runtime, not build time.

Community

Reviews

Write a review

No reviews yet. Be the first to review this template!

Similar Templates