diff --git a/.github/actions/test/action.yml b/.github/workflows/env.yml similarity index 50% rename from .github/actions/test/action.yml rename to .github/workflows/env.yml index 7469627..5f103a4 100644 --- a/.github/actions/test/action.yml +++ b/.github/workflows/env.yml @@ -1,28 +1,34 @@ -name: Test -description: Test `setup-aftman`. -author: ok-nick +on: + workflow_call: + inputs: + version: + type: string + required: false + path: + type: string + default: "." + required: false + cache: + type: string + default: "true" + required: false -# same input as `setup-aftman` -inputs: - version: - required: false - path: - default: "." - required: false - token: - default: "${{ github.token }}" - required: false +jobs: + test-env: + strategy: + matrix: + os: [ubuntu-latest, macos-latest, windows-latest] + runs-on: ${{ matrix.os }} + steps: + - uses: actions/checkout@v4 -runs: - using: "composite" - steps: - name: Create manifest file run: | cat > ${{ inputs.path }}/aftman.toml << EOF [tools] - selene = "Kampfkarren/selene@0.19.1" - stylua = "JohnnyMorganz/stylua@0.14.0" - rojo = "rojo-rbx/rojo@7.2.1" + selene = "Kampfkarren/selene@0.25.0" + stylua = "JohnnyMorganz/stylua@0.18.2" + rojo = "rojo-rbx/rojo@7.3.0" EOF shell: bash @@ -31,7 +37,7 @@ runs: with: version: ${{ inputs.version }} path: ${{ inputs.path }} - token: ${{ inputs.token }} + cache: ${{ inputs.cache }} - name: Verify executables in PATH on bash run: | diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6b2dc74..86d0372 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,53 +13,9 @@ defaults: shell: bash jobs: - test_linux: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: ./.github/actions/test - - test_mac: - runs-on: macos-latest - steps: - - uses: actions/checkout@v3 - - uses: ./.github/actions/test - - test_windows: - runs-on: windows-latest - steps: - - uses: actions/checkout@v3 - - uses: ./.github/actions/test - - test_linux_version_and_path: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - - run: mkdir project - - uses: ./.github/actions/test - with: - version: v0.2.7 - path: "./project" - - test_mac_version_and_path: - runs-on: macos-latest - steps: - - uses: actions/checkout@v3 - - - run: mkdir project - - uses: ./.github/actions/test - with: - version: v0.2.7 - path: "./project" - - test_windows_version_and_path: - runs-on: windows-latest - steps: - - uses: actions/checkout@v3 - - - run: mkdir project - - uses: ./.github/actions/test - with: - version: v0.2.7 - path: "./project" + test-cache: + uses: ./.github/workflows/env.yml + test-no-cache: + uses: ./.github/workflows/env.yml + with: + cache: "false" diff --git a/README.md b/README.md index 319b332..fe7fc29 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ steps: with: version: v1.0.0 # name of git tag in aftman (uses latest by default) path: some_dir/my_project # path to project dir containing `aftman.toml` (uses current dir by default) - cache: true # whether to enable binary caching between runs (true by default) + cache: "true" # whether to enable binary caching between runs (true by default) token: ${{ github.token }} # GitHub token to bypass rate limit (passed by default) ``` diff --git a/action.yml b/action.yml index d85d7d7..68f25ed 100644 --- a/action.yml +++ b/action.yml @@ -72,8 +72,11 @@ runs: if: ${{ inputs.cache == 'true' }} uses: actions/cache@v3 with: - path: ~/.aftman/bin - key: ${{ runner.os }}-aftman-${{hashFiles(inputs.path)}} + path: | + ~/.aftman/bin + ~/.aftman/tool-storage + # TODO: also hash ~/.aftman/aftman.toml + key: ${{ runner.os }}-aftman-${{hashFiles(format('{0}/{1}', inputs.path, 'aftman.toml'))}} - name: Install tools run: |