Draft
Conversation
Introduce spec for apt/debian:v1 build template as alternative to conda: - Support for APT packages via package list or requirements file - Both Docker and Singularity builds supported - Configurable via aptOpts (baseImage, basePackages, commands) - Default base image: ubuntu:24.04 - Uses --no-install-recommends for minimal images 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Phase 0-1 artifacts: - plan.md: Technical context, constitution check, project structure - research.md: Architecture decisions, patterns, risk assessment - data-model.md: Entity definitions, validation rules - contracts/api-changes.md: API schema, examples, validation - quickstart.md: Implementation guide Key decisions: - Support both entries (list) and environment (newline-separated file) - 2 template files (dockerfile + singularityfile) - Default base image: ubuntu:24.04 - Uses --no-install-recommends for minimal images 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Defines 31 tasks organized in 5 phases: - Phase 1: Setup (API layer types and constants) - Phase 2: Foundational (templates and helper) - Phase 3: User Story 1 (basic APT builds) - Phase 4: User Story 2 (customization) - Phase 5: Polish (docs and validation) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This adds support for building containers with APT packages as an alternative to Conda. Features include: API Layer: - Add APT_DEBIAN_V1 constant to BuildTemplate.java - Add APT type to PackagesSpec.Type enum - Create AptOpts configuration class for customization Implementation: - Create AptHelper.groovy with containerFile() method - Add Dockerfile and Singularity templates in apt-debian-v1/ - Add APT dispatch logic to ContainerHelper.groovy Features: - Package list via entries or environment file (newline-separated) - Version pinning support (e.g., nginx=1.18.0) - Customizable base image (default: ubuntu:24.04) - Customizable base packages (default: ca-certificates) - Custom commands support - Best practices: DEBIAN_FRONTEND=noninteractive, --no-install-recommends, cache cleanup Tests: - Comprehensive unit tests in AptHelperTest.groovy - Tests for Docker and Singularity output - Tests for environment file parsing - Tests for custom options Documentation: - Update docs/api.md with APT type, aptOpts, and examples 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Collaborator
Author
|
@t0randr enjoy! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
apt/debian:v1build template as alternative to condaaptOpts(baseImage, basePackages, commands)Key decisions
ubuntu:24.04(LTS with support through 2029)--no-install-recommendsfor minimal container imagesTest plan
specs/251212-apt-build-template/spec.mdspecs/251212-apt-build-template/checklists/requirements.md/speckit.plan🤖 Generated with Claude Code