[GH-ISSUE #714] Templates: add official GitHub workflow templates + Swift starter repository template for asc #198

Closed
opened 2026-02-26 21:33:58 +03:00 by kerem · 0 comments
Owner

Originally created by @rudrankriyam on GitHub (Feb 21, 2026).
Original GitHub issue: https://github.com/rudrankriyam/App-Store-Connect-CLI/issues/714

Problem

We already have setup-asc for GitHub Actions, but developers still start from scratch when setting up release automation in new repos.

This slows adoption and causes inconsistent CI/CD patterns across projects.

Goal

Ship official GitHub templates in two forms:

  1. Organization workflow templates (visible in “Actions → New workflow”).
  2. A Swift/iOS repository template (visible via “Use this template”).

Both should promote asc as the default release automation path.

Research (authoritative references)

Workflow templates (organization-level)

Starter quality references (iOS/Swift)

Repository templates

Proposal

Part A — Organization workflow templates

Create/use rudrankriyam/.github (public) and add:

.github/
  workflow-templates/
    asc-ios-build-test.yml
    asc-ios-build-test.properties.json
    asc-testflight-release.yml
    asc-testflight-release.properties.json
    asc-appstore-submit.yml
    asc-appstore-submit.properties.json
    asc.svg

Template set (v1)

  1. asc-ios-build-test.yml
    • Build/test on macOS
    • Optional artifact export
  2. asc-testflight-release.yml
    • Build/archive + upload/distribute via asc
  3. asc-appstore-submit.yml
    • Submission flow with guarded/manual triggers

Metadata requirements (*.properties.json)

  • name and description required
  • use iconName (custom SVG in workflow-templates/)
  • add categories aligned to Swift/CI/Deployment
  • add filePatterns to suggest templates in iOS/Swift repos (*.xcodeproj, *.xcworkspace, Package.swift)

Part B — Swift/iOS repository template

Create a new repository template (suggestion: rudrankriyam/ios-asc-template) containing:

.github/workflows/
  ci.yml
  release-testflight.yml
  submit-appstore.yml
.asc/
  workflow.json
App/ (or SampleApp/)
README.md
LICENSE

Template goals

  • Zero-to-ship bootstrap for Swift/iOS repos
  • clear secret/env setup docs
  • setup-asc pre-wired in workflows
  • safe defaults (manual dispatch for release/submit jobs)

Design constraints

  • Keep release workflows non-destructive by default unless explicit input/approval is provided.
  • Do not hardcode secrets; rely on GitHub encrypted secrets/env vars.
  • Ensure generated workflows are readable and easy to customize.

Deliverables

  1. rudrankriyam/.github workflow templates + metadata + icon.
  2. ios-asc-template repository marked as Template Repository.
  3. Documentation pages:
    • “Use asc workflow templates in your org”
    • “Create a new iOS repo from template and ship with asc”

Acceptance criteria

  • Templates appear in Actions → New workflow for org repos.
  • Each workflow template validates and runs in a sample iOS repo.
  • ios-asc-template appears with Use this template and boots a working pipeline.
  • README includes copy/paste quick-start for required secrets and first release run.
  • No Git LFS artifacts in template repo.

Nice-to-have follow-ups

  • Add variants for macOS-only app pipelines.
  • Add an “agent mode” template optimized for JSON outputs and machine-readable artifacts.
  • Add badge/snippet generator for README inclusion after template creation.
Originally created by @rudrankriyam on GitHub (Feb 21, 2026). Original GitHub issue: https://github.com/rudrankriyam/App-Store-Connect-CLI/issues/714 ## Problem We already have `setup-asc` for GitHub Actions, but developers still start from scratch when setting up release automation in new repos. This slows adoption and causes inconsistent CI/CD patterns across projects. ## Goal Ship official **GitHub templates** in two forms: 1. **Organization workflow templates** (visible in “Actions → New workflow”). 2. **A Swift/iOS repository template** (visible via “Use this template”). Both should promote `asc` as the default release automation path. ## Research (authoritative references) ### Workflow templates (organization-level) - GitHub workflow template docs (required `workflow-templates/` structure, `.properties.json` metadata, `$default-branch` placeholder): - https://docs.github.com/en/actions/how-tos/reuse-automations/create-workflow-templates - Workflow template usage and starter workflow behavior: - https://docs.github.com/en/actions/writing-workflows/using-workflow-templates - https://docs.github.com/en/actions/learn-github-actions/using-starter-workflows ### Starter quality references (iOS/Swift) - Official starter workflows for iOS and Swift: - https://github.com/actions/starter-workflows/blob/main/ci/ios.yml - https://github.com/actions/starter-workflows/blob/main/ci/swift.yml ### Repository templates - GitHub template repository behavior and constraints (optionally include all branches, no Git LFS in template repo): - https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-template-repository ## Proposal ### Part A — Organization workflow templates Create/use `rudrankriyam/.github` (public) and add: ```text .github/ workflow-templates/ asc-ios-build-test.yml asc-ios-build-test.properties.json asc-testflight-release.yml asc-testflight-release.properties.json asc-appstore-submit.yml asc-appstore-submit.properties.json asc.svg ``` #### Template set (v1) 1. **`asc-ios-build-test.yml`** - Build/test on macOS - Optional artifact export 2. **`asc-testflight-release.yml`** - Build/archive + upload/distribute via `asc` 3. **`asc-appstore-submit.yml`** - Submission flow with guarded/manual triggers #### Metadata requirements (`*.properties.json`) - `name` and `description` required - use `iconName` (custom SVG in `workflow-templates/`) - add `categories` aligned to Swift/CI/Deployment - add `filePatterns` to suggest templates in iOS/Swift repos (`*.xcodeproj`, `*.xcworkspace`, `Package.swift`) ### Part B — Swift/iOS repository template Create a new repository template (suggestion: `rudrankriyam/ios-asc-template`) containing: ```text .github/workflows/ ci.yml release-testflight.yml submit-appstore.yml .asc/ workflow.json App/ (or SampleApp/) README.md LICENSE ``` #### Template goals - Zero-to-ship bootstrap for Swift/iOS repos - clear secret/env setup docs - `setup-asc` pre-wired in workflows - safe defaults (manual dispatch for release/submit jobs) ## Design constraints - Keep release workflows non-destructive by default unless explicit input/approval is provided. - Do not hardcode secrets; rely on GitHub encrypted secrets/env vars. - Ensure generated workflows are readable and easy to customize. ## Deliverables 1. `rudrankriyam/.github` workflow templates + metadata + icon. 2. `ios-asc-template` repository marked as Template Repository. 3. Documentation pages: - “Use asc workflow templates in your org” - “Create a new iOS repo from template and ship with asc” ## Acceptance criteria - Templates appear in **Actions → New workflow** for org repos. - Each workflow template validates and runs in a sample iOS repo. - `ios-asc-template` appears with **Use this template** and boots a working pipeline. - README includes copy/paste quick-start for required secrets and first release run. - No Git LFS artifacts in template repo. ## Nice-to-have follow-ups - Add variants for macOS-only app pipelines. - Add an “agent mode” template optimized for JSON outputs and machine-readable artifacts. - Add badge/snippet generator for README inclusion after template creation.
kerem 2026-02-26 21:33:58 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/App-Store-Connect-CLI#198
No description provided.