fastlane / fastlane/docs

Tools vs. Actions

Open
#671 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
HTML
Stars
338
Forks
580
Avg merge
6d 1h
Merged PRs (30d)
3

Description

After @taquitos and @joshdholtz convinced me that [documenting the tools is not the way to go](https://github.com/fastlane/docs/issues/652), I spent some time understanding what is still missing to fully transition from tools to actions.

**Current state**

- CLI command: `fastlane gym`
- Configuration file: `Gymfile`
- Action: `build_ios_app` (+ `gym` alias)
- Action via CLI: `fastlane run build_ios_app`

**Problems**

1. Not all available tool CLI (sub)commands have an action
2. Configuration files are named after tools
- Some actions have a config file, others don't (`gym` .vs `gradle`)
3. CLI tool command (`fastlane gym`) vs. run action (`fastlane run build_ios_app`)
4. Other
- `SnapshotHelper.swift`
- `init` subcommands don't exist as action concept
- Action documentation is tool branded
- Change is bad

**Possible Solutions**

1. Create more actions so all (sub)commands are covered
- New actions could be "grouped" with existing action somehow, e.g. "Apple Developer Portal" for `produce`, in the documentation for example
2. Find a way to "untool" configuration files
- `Configfile` that combines all of them?
3. Unify command and action execution via CLI
- We can already use `fastlane tool` and `fastlane lane`, maybe also `fastlane action`?
4. Other
- SnapshotHelper.swift could be renamed e.g. `ScreenshotHelper.swift`
- No idea how to deal with `init`. Just docs maybe? Magic action name `init_build_ios_app` for `build_ios_app`?
- Documentation can remove all tool mentions and logos (besides a new History article that keeps the memory alive)
- Of course all the former names, commands and configuration files keep working

**Consequential work / problems**

- Github prefix and label ("[supply] ...", "tool:supply")
- Changelog prefix ("[supply]")
- I am not sure interfaces of all existing CLI commands and actions combination are identical, but goal would probably be: CLI command is identical to action

---

For reference:

List of tools and Configfiles in use:
https://github.com/fastlane/fastlane/blob/master/fastlane/lib/fastlane/tools.rb

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.