GitLab CI Integration
GitLab CI pipelines can publish releases into Big Picture automatically. This integration enables artifact registration, release creation, and multi-platform builds using GitLab CI/CD pipelines.
Overview
Section titled “Overview”GitLab CI integration uses .gitlab-ci.yml pipeline files to automate Big Picture release publishing. Pipelines can trigger on Git tags, push events, or manual runs. The integration supports external artifact references and managed artifact storage.
Prerequisites
Section titled “Prerequisites”- Service account — Create a Big Picture service account with
ci:writeandartifacts:writescopes - CI/CD variables — Store API token as
BP_API_TOKENvariable (masked, protected) - Configuration — Set
BP_BASE_URLandBP_PRODUCT_IDas CI/CD variables
Basic Pipeline Pattern
Section titled “Basic Pipeline Pattern”GitLab CI pipelines follow this pattern:
- Build stage — Build installers or packages
- Register stage — Register artifacts with Big Picture
- Publish stage — Create release referencing artifacts
Common Use Cases
Section titled “Common Use Cases”Tag-Based Releases
Section titled “Tag-Based Releases”Pipelines trigger on Git tags and publish releases automatically:
only: - tagsMulti-Platform Releases
Section titled “Multi-Platform Releases”Pipelines build artifacts for Windows, macOS, and Linux in parallel jobs, then create a single release.
Artifact Passing
Section titled “Artifact Passing”Pipelines use GitLab artifacts and dotenv reports to pass artifact metadata between jobs.
Integration Points
Section titled “Integration Points”- Artifact registration — Register artifacts via
/v1/artifactsendpoint - Managed uploads — Upload artifacts via
/v1/artifacts/uploadsendpoints - Release creation — Create releases via
/v1/releasesendpoint - Error handling — Handle API errors with
set -eand exit code checks
Configuration
Section titled “Configuration”Store Big Picture credentials as GitLab CI/CD variables:
BP_API_TOKEN— Service account API token (masked, protected)BP_BASE_URL— Big Picture API base URL (optional)BP_PRODUCT_ID— Product ID (optional)
Next Steps
Section titled “Next Steps”Detailed step-by-step guides for GitLab CI integration are planned. These guides will include:
- Complete pipeline examples for single and multi-platform releases
- Managed artifact upload pipelines
- Artifact passing between jobs
- Error handling patterns
For now, see the CI/CD Integration overview for general integration patterns.
Related Documentation
Section titled “Related Documentation”- CI/CD Integration — General CI/CD integration patterns
- Reference: API Overview — API documentation