leancodepl / leancodepl/mobile-tools
Change location of GitHub Actions
Nobody has claimed this yet.
- Dominant language
- Shell
- Stars
- 5
- Forks
- 3
- PR merge metrics
- No merged PRs in 30d
Description
Currently, we have one composite GitHub Action (pub-release), but I expect that as the time will pass, a few more might appear. Let's think about how we can structure them before that happens and migration becomes more painful.
Problem
The problem with the current location of that action is that it's long and ugly. Just look at this:
steps:
# ...
- name: Publish to pub.dev
uses: leancodepl/mobile-tools/.github/actions/pub-release@pub-release-v1
It's both too long, and the version is redundant with the action name. It has the vibes of some repository's private action, which is not a good practice.
Alternatives
Let's see how we can fix that problem.
Actions in mobile-tools
Usage:
steps:
# ...
- name: Publish to pub.dev
uses: leancodepl/mobile-tools/pub-release@v1
Pros:
- we keep everything in a single repo
Cons:
-
versions of GitHub Actions are tied with versions of small mobile tooling scripts in
bin. -
repo layout becomes kinda ugly. Action directories reside next to the
bindirectory:├── LICENSE ├── README.md ├── bin │ ├── echo_changelog │ ├── generate_keystore │ ├── is_prerelease │ └── link_changelog ├── patrol-setup │ └── action.yaml └── pub-release └── action.yaml
Actions in a separate actions repo
Usage:
steps:
# ...
- name: Publish to pub.dev
uses: leancodepl/actions/pub-release@v1
or, in the future:
steps:
# ...
- name: Publish to pub.dev
uses: leancodepl/actions/setup-patrol@v1
This implies that all actions are versioned together. It may seem bizarre at first, but it appears to work fine in practice. A good example is the github/codeql-action repo.
Pros:
- looks cool and lean
- clear separation between, well, tools that reside in
leancodepl/mobile-tools, and our GitHub Actions that reside inleancodepl/actions
I'd like people to think: "Hey, this action comes from leancodepl/actions – it's gotta be good and reliable!"
Cons:
- another repo (not sure if that much of a con)
What do you think? @Albert221 @mateuszwojtczak @iasiu
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing .github/actions/pub-release/action.yaml and the existing usage examples in the issue, then compare the proposed repository layouts. Done means agreeing on a structure, migrating the existing action and its references, and documenting the resulting versioned usage.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions
- Domain
- ci-cd
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100