packaging-go-projects

Package Go projects in BuildStream with vendored or go_module dependencies.

134|27|Updated Nov 16, 2025
One-click install
npx skills add https://github.com/projectbluefin/dakota --skill packaging-go-projects
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: packaging-go-projects
Source: https://github.com/projectbluefin/dakota/tree/main/.opencode/skills/packaging-go-projects
Command: npx skills add https://github.com/projectbluefin/dakota --skill packaging-go-projects

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a structured approach to packaging Go projects within the BuildStream build system, ensuring that Go module dependencies are correctly handled for offline builds.

Core Features & Use Cases

  • Offline Dependency Management: Packages Go projects by vendoring dependencies or using go_module sources, crucial for environments without network access during the build.
  • Multiple Packaging Patterns: Supports various methods like make + vendored deps, manual/make + go_module sources, and vendored tarball, catering to different project structures.
  • Use Case: When building a Go application like Podman or Skopeo within a restricted build environment, this Skill ensures all necessary Go modules are included and resolvable without external network calls.

Quick Start

Use the packaging-go-projects skill to package a Go project with a go.mod file using the make + vendored deps pattern.

Frequently Asked Questions about packaging-go-projects

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I package Go projects for offline builds in BuildStream?

Packaging Go projects for offline builds in BuildStream involves managing Go module dependencies by vendoring them, using go_module sources, or including tarballs to ensure all modules are resolvable without external network calls.

What is the best way to handle Go modules in a restricted build environment?

The best way to handle Go modules in a restricted build environment is to use vendored dependencies or go_module sources, which package all necessary modules locally to prevent external network calls during the build process.

Can I use BuildStream with Go projects that have a go.mod file?

Yes, BuildStream supports Go projects with a go.mod file by applying patterns like make plus vendored dependencies or manual make plus go_module sources to correctly configure build environment variables and flags.

What patterns are supported for vendoring Go dependencies in BuildStream?

Supported patterns for vendoring Go dependencies in BuildStream include make plus vendored deps, manual or make plus go_module sources, and vendored tarball inclusion, catering to varying dependency management needs.

Why does my Go build fail in BuildStream due to network access restrictions?

Go builds fail in BuildStream due to network access restrictions because the default build process attempts to download missing modules, which can be resolved by packaging the project with vendored dependencies or go_module sources for offline resolution.

Do I need to configure environment variables for Go offline builds in BuildStream?

Yes, you need to configure Go build environment variables and flags correctly for BuildStream integration to ensure the offline build system properly resolves the locally packaged or vendored module dependencies.