-
Notifications
You must be signed in to change notification settings - Fork 1
Phase 5: Update packaging structure #5
Copy link
Copy link
Closed
Description
What
Reorganize packaging files (Chocolatey, Winget, Homebrew) into a unified structure that supports both tools from the monorepo.
Target Structure
packaging/
├── cfl/
│ ├── chocolatey/
│ │ ├── cfl.nuspec
│ │ └── tools/
│ │ ├── chocolateyInstall.ps1
│ │ └── chocolateyUninstall.ps1
│ └── winget/
│ ├── OpenCLICollective.cfl.yaml
│ ├── OpenCLICollective.cfl.installer.yaml
│ └── OpenCLICollective.cfl.locale.en-US.yaml
└── jtk/
├── chocolatey/
│ ├── jira-ticket-cli.nuspec
│ └── tools/
│ ├── chocolateyInstall.ps1
│ └── chocolateyUninstall.ps1
└── winget/
├── OpenCLICollective.jira-ticket-cli.yaml
├── OpenCLICollective.jira-ticket-cli.installer.yaml
└── OpenCLICollective.jira-ticket-cli.locale.en-US.yaml
Workflow Updates
Update release workflows to reference new paths:
# In release-cfl.yml
- name: Update Chocolatey
run: |
cd packaging/cfl/chocolatey
# ... update version, checksums
choco pack
choco push
- name: Update Winget
run: |
cd packaging/cfl/winget
# ... update manifestsHomebrew Tap Updates
The Homebrew tap (open-cli-collective/homebrew-tap) needs formula updates:
- Update
cfl.rbto point to new release URL pattern - Update
jira-ticket-cli.rbto point to new release URL pattern
Release URLs change from:
https://github.com/open-cli-collective/confluence-cli/releases/...https://github.com/piekstra/jira-ticket-cli/releases/...
To:
https://github.com/open-cli-collective/atlassian-cli/releases/download/cfl-v.../...https://github.com/open-cli-collective/atlassian-cli/releases/download/jtk-v.../...
Why
Consistent organization
Having all packaging in one place with parallel structure:
- Makes it easy to add new tools (copy
cfl/→newcli/) - Keeps packaging logic near the code it packages
- Simplifies CI/CD - one repo has everything
Maintains existing package names
Users don't need to change their install commands:
brew install open-cli-collective/tap/cflstill workschoco install cflstill workswinget install OpenCLICollective.cflstill works
The packages themselves don't change, just where the binaries come from.
Enables future expansion
The structure supports adding more Atlassian tools:
packaging/
├── cfl/
├── jtk/
├── btk/ # Future: Bitbucket CLI
└── trello/ # Future: Trello CLI
Acceptance Criteria
-
packaging/cfl/contains all cfl packaging files -
packaging/jtk/contains all jtk packaging files - Release workflows reference
packaging/{tool}/paths - Chocolatey packages build successfully
- Winget manifests pass validation
- Homebrew tap formulas updated with new release URLs
-
brew install open-cli-collective/tap/cflinstalls from monorepo release -
brew install open-cli-collective/tap/jira-ticket-cliinstalls from monorepo release
Dependencies
- Blocked by: Phase 4: Consolidate CI/CD workflows #4 (Phase 4: Consolidate CI/CD)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels