install-swift-tool

2.2.0 • Public • Published

Description

Github action to install swift based tools, like xcbeautify or swiftformat, to be used inside workflows.

Versions

master - It should always work and contain the latest changes.

v1 - Initial version. Deprecated, use v2 with use-cache: false instead.

v2 - Adds caching (enabled by default), allows specifying version.

Usage

Step example:

- name: Install xcbeautify
  uses: Cyberbeni/install-swift-tool@v2
  with:
    url: https://github.com/Cyberbeni/xcbeautify
    branch: linux-fixes # optional, branch or tag
    version: '*' # optional, overrides branch, format: https://devhints.io/semver
    use-cache: true # optinal, default: true

Workflow example:

name: Lint

on: 
  pull_request:
  push:
    branches: master # https://docs.github.com/en/free-pro-team@latest/actions/guides/caching-dependencies-to-speed-up-workflows#restrictions-for-accessing-a-cache

jobs:
  swiftformat-lint:
    runs-on: ubuntu-latest
    steps:
    - name: Checkout
      uses: actions/checkout@v2
    - name: Install SwiftFormat
      uses: Cyberbeni/install-swift-tool@v2
      with:
        url: https://github.com/nicklockwood/SwiftFormat
    - name: Lint
      run: swiftformat --lint .

GitHub Action example:

import { SwiftToolInstaller } from 'install-swift-tool'

await SwiftToolInstaller.install(url, branch, version, useCache)

How to contribute

Install npm and yarn on macOS (Homebrew required)

make once-mac

Run before commit

make

Run tests in ./__test__/ (for testing parts of the logic, the real tests are run on GitHub after push/pull request)

make test

Readme

Keywords

none

Package Sidebar

Install

npm i install-swift-tool

Weekly Downloads

18

Version

2.2.0

License

MIT

Unpacked Size

21.8 kB

Total Files

9

Last publish

Collaborators

  • cyberbeni