home / skills / hoangnguyen0403 / agent-skills-standard / deployment
This skill helps iOS teams streamline deployment by enforcing Fastlane signing, provisioning, and TestFlight automation for reliable releases.
npx playbooks add skill hoangnguyen0403/agent-skills-standard --skill deploymentReview the files below or copy the command above to add this skill to your agents.
---
name: iOS Deployment
description: Standards for Provisioning, Signing, and Fastlane.
metadata:
labels: [ios, deployment, fastlane, provisioning]
triggers:
files: ['Fastfile', 'Appfile', 'Matchfile']
keywords: [ios_bundle_id, provisioning_profile, testflight]
---
# iOS Deployment Standards
## **Priority: P1**
## Implementation Guidelines
### Signing & Provisioning
- **Match**: Use `fastlane match` for centralized certificate and profile management. Avoid manual signing where possible.
- **Project Settings**: Explicitly set `PROVISIONING_PROFILE_SPECIFIER` in build settings if using manual/CI.
### CI/CD (Fastlane)
- **Fastfile**: Script your build, test, and release flows. Use lanes for `beta` (TestFlight) and `release` (App Store).
- **Versioning**: Automate build number increments using `increment_build_number`.
### TestFlight
- **Internal Testers**: Automate uploads to TestFlight for every successful merge to the staging branch.
- **Export Compliance**: Automate the export compliance setting in `Info.plist` or Fastlane to avoid metadata pauses.
## Anti-Patterns
- **Manual Signing on CI**: `**No manual identities on CI**: Use Match.`
- **Check-in Certificates**: `**No Certs in Repo**: Use a private git repo for Match certificates.`
- **Hardcoded Versioning**: `**No manual version bumps**: Use Fastlane increment tools.`
## References
- [Fastlane & Signing Setup](references/implementation.md)
This skill codifies iOS deployment standards for provisioning, signing, and Fastlane-based CI/CD. It explains centralized certificate management, automated versioning, and TestFlight automation to reduce manual steps and release risk. The guidance targets reproducible builds and safe certificate handling in CI pipelines.
The skill prescribes using fastlane match to centralize certificates and provisioning profiles in a private git repo and avoid manual signing on CI. It defines Fastfile lanes for beta and release flows, automates build number increments, and includes steps to upload to TestFlight and set export compliance. Project build settings should explicitly specify provisioning profile specifiers when manual or CI-driven signing is required.
Can I store certificates in the main repository for convenience?
No. Store certificates and profiles in a private git repo used by fastlane match to avoid leaking credentials and to centralize access.
What if I need manual signing for a special build?
Set PROVISIONING_PROFILE_SPECIFIER explicitly in build settings and still use match for cert/profile distribution; document the exception and restrict access.