Repository: nektos/act (language: go)

Issue:
local actions are read before they become available and fail
### Bug report info

```plain text
act version:            v0.2.27-dev
GOOS:                   linux
GOARCH:                 amd64
NumCPU:                 2
Docker host:            DOCKER_HOST environment variable is unset/empty.
Sockets found:
	/var/run/docker.sock
Config files:           
Build info:
	Go version:            go1.18.2
	Module path:           github.com/nektos/act
	Main version:          (devel)
	Main path:             github.com/nektos/act
	Main checksum:         
	Build settings:
		-compiler:            gc
		CGO_ENABLED:          1
		CGO_CFLAGS:           
		CGO_CPPFLAGS:         
		CGO_CXXFLAGS:         
		CGO_LDFLAGS:          
		GOARCH:               amd64
		GOOS:                 linux
		GOAMD64:              v1
Docker Engine:
	Engine version:        20.10.16+azure-2
	Engine runtime:        runc
	Cgroup version:        1
	Cgroup driver:         cgroupfs
	Storage driver:        overlay2
	Registry URI:          https://index.docker.io/v1/
	OS:                    Ubuntu 20.04.4 LTS
	OS type:               linux
	OS version:            20.04
	OS arch:               x86_64
	OS kernel:             5.13.0-1025-azure
	OS CPU:                2
	OS memory:             6946 MB
	Security options:
		name=apparmor
		name=seccomp,profile=default
```


### Command used with act

```sh
go run . -W workflow.yaml -P ubuntu-latest=ghcr.io/catthehacker/ubuntu:act-latest -v
```


### Describe issue

I expect that this workflow doesn't fail, because the local action can also be downloaded with curl, git or other tools.

<details><summary>My actions utility and older act <= 0.2.26 have the following behavior and will download node 18</summary>

```
[.github/workflows/main.yml / test] Running: test
|Evaluate if
|Evaluating: success()
|Evaluating success:
|=> true
|Result: true
|Prepare Job for execution
|Evaluate job name
|Evaluate job continueOnError
|Evaluate job timeoutMinutes
|Evaluate job cancelTimeoutMinutes
|Evaluate runs-on
|Queued Job: test for queue self-hosted,container-host
|Read Job from Queue: test assigned to Runner Name:Agent-8f97d882-7a22-449a-9bae-8f63caef8232 Labels:container-host,self-hosted
|Send Job to Runner: test for queue container-host,self-hosted assigned to Runner Name:Agent-8f97d882-7a22-449a-9bae-8f63caef8232 Labels:container-host,self-hosted
[.github/workflows/main.yml / test] Running: Set up job
|Current runner version: '3.9.0'
|Runner name: 'Agent-8f97d882-7a22-449a-9bae-8f63caef8232'
|Runner group name: 'misc'
|Machine name: 'DESKTOP-3SVG86B'
|Prepare workflow directory
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE version --format '{{.Server.APIVersion}}'
|'1.41'
|Docker daemon API version: '1.41'
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE version --format '{{.Client.APIVersion}}'
|'1.41'
|Docker client API version: '1.41'
|Prepare all required actions
|Getting action download info
|Download action repository 'actions/checkout@v3' (SHA:8e8217ae4d025738d3b07eecaffba482d3473ed6)
|Getting action download info
|Download action repository 'actions/checkout@8e8217ae4d025738d3b07eecaffba482d3473ed6' (SHA:8e8217ae4d025738d3b07eecaffba482d3473ed6)
|Download action repository 'actions/checkout@8e8217ae4d025738d3b07eecaffba482d3473ed6v3' (SHA:2541b1294d2704b0964813337f33b291d3f8596b)
[.github/workflows/main.yml / test] Succeeded: Set up job
[.github/workflows/main.yml / test] Running: Initialize containers
|##[group]Checking docker version
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE version --format '{{.Server.APIVersion}}'
|'1.41'
|Docker daemon API version: '1.41'
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE version --format '{{.Client.APIVersion}}'
|'1.41'
|Docker client API version: '1.41'
|##[endgroup]
|##[group]Clean up resources from previous jobs
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE ps --all --quiet --no-trunc --filter "label=dbfb48"
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE network prune --force --filter "label=dbfb48"
|##[endgroup]
|##[group]Starting job container
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE pull ubuntu:latest
|latest: Pulling from library/ubuntu
|Digest: sha256:26c68657ccce2cb0a31b330cb0be2b5e108d467f641c62e13ab40cbec258c68d
|Status: Image is up to date for ubuntu:latest
|docker.io/library/ubuntu:latest
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE inspect --format="{{.Os}}/{{.Architecture}}" ubuntu:latest
|linux/amd64
|##[group]Create local container network
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE network create --label dbfb48 github_network_b60207e3527e49aab0319a571e7ae1e7
|3290e9b979bf92b9e347592ee40159aa5cbaae1933d4e4e5d812228c076c2edc
|##[endgroup]
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE create --name 9e0ad873622844c985603e1693595bea_ubuntulatest_e9a813 --label dbfb48 --workdir /__w/Unknown/Unknown --network github_network_b60207e3527e49aab0319a571e7ae1e7  -e "HOME=/github/home" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "C:\Users\Christopher\AppData\Local\gharun\Agents\Agent-8f97d882-7a22-449a-9bae-8f63caef8232\_work":"/__w" -v "C:\Users\Christopher\AppData\Local\gharun":"/__e" -v "C:\Users\Christopher\AppData\Local\gharun\Agents\Agent-8f97d882-7a22-449a-9bae-8f63caef8232\_work\_temp":"/__w/_temp" -v "C:\Users\Christopher\AppData\Local\gharun\Agents\Agent-8f97d882-7a22-449a-9bae-8f63caef8232\_work\_actions":"/__w/_actions" -v "C:\Users\Christopher\AppData\Local\gharun\tool_cache":"/__t" -v "C:\Users\Christopher\AppData\Local\gharun\Agents\Agent-8f97d882-7a22-449a-9bae-8f63caef8232\_work\_temp\_github_home":"/github/home" -v "C:\Users\Christopher\AppData\Local\gharun\Agents\Agent-8f97...
|7219036e4c6f6d438f8c403814d16801ab74f4af1b2ba6127cce5d39264ddba5
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE start 7219036e4c6f6d438f8c403814d16801ab74f4af1b2ba6127cce5d39264ddba5
|7219036e4c6f6d438f8c403814d16801ab74f4af1b2ba6127cce5d39264ddba5
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE ps --all --filter id=7219036e4c6f6d438f8c403814d16801ab74f4af1b2ba6127cce5d39264ddba5 --filter status=running --no-trunc --format "{{.ID}} {{.Status}}"
|7219036e4c6f6d438f8c403814d16801ab74f4af1b2ba6127cce5d39264ddba5 Up Less than a second
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE inspect --format "{{range .Config.Env}}{{println .}}{{end}}" 7219036e4c6f6d438f8c403814d16801ab74f4af1b2ba6127cce5d39264ddba5
|HOME=/github/home
|GITHUB_ACTIONS=true
|CI=true
|PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|##[endgroup]
|##[group]Waiting for all services to be ready
|##[endgroup]
[.github/workflows/main.yml / test] Succeeded: Initialize containers
[.github/workflows/main.yml / test] Running: Run actions/checkout@v3
|##[group]Run actions/checkout@v3
|with:
|  repository: Unknown/Unknown
|  ssh-strict: true
|  persist-credentials: true
|  clean: true
|  fetch-depth: 1
|  lfs: false
|  submodules: false
|##[endgroup]
|##[group]Run actions/checkout@8e8217ae4d025738d3b07eecaffba482d3473ed6
|with:
|  repository: Unknown/Unknown
|  ssh-strict: true
|  persist-credentials: true
|  clean: true
|  fetch-depth: 1
|  lfs: false
|  submodules: false
|  checkoutref: v3
|##[endgroup]
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE exec  7219036e4c6f6d438f8c403814d16801ab74f4af1b2ba6127cce5d39264ddba5 sh -c "cat /etc/*release | grep ^ID"
|Clean folder: /__w/Unknown/Unknown
|Copying Repository to /__w/Unknown/Unknown
[.github/workflows/main.yml / test] Succeeded: Run actions/checkout@v3
[.github/workflows/main.yml / test] Running: Run runs:
|##[group]Run runs:
|runs:
|  using: composite
|  steps:
|  - uses: actions/setup-node@v3
|    with:
|      node-version: '18'
|shell: cp {0} action.yml
|##[endgroup]
[.github/workflows/main.yml / test] Succeeded: Run runs:
[.github/workflows/main.yml / test] Running: Run /./
|Prepare all required actions
|Getting action download info
|Download action repository 'actions/setup-node@v3' (SHA:17f8bd926464a1afa4c6a11669539e9c1ba77048)
|##[group]Run ./
|##[endgroup]
|##[group]Run actions/setup-node@v3
|with:
|  node-version: 18
|  always-auth: false
|  check-latest: false
|##[endgroup]
|##[command]C:\Program Files\Docker\Docker\resources\bin\docker.EXE exec  7219036e4c6f6d438f8c403814d16801ab74f4af1b2ba6127cce5d39264ddba5 sh -c "cat /etc/*release | grep ^ID"
|Attempting to download 18...
|Acquiring 18.2.0 - x64 from https://github.com/actions/node-versions/releases/download/18.2.0-2343541082/node-18.2.0-linux-x64.tar.gz
...
```

</details>

_I have fixed this issue last year, now it is back in a different shape._

### Link to GitHub repository

_No response_

### Workflow content

```yml
on: push
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - run: |
        runs:
          using: composite
          steps:
          - uses: actions/setup-node@v3
            with:
              node-version: '18'
      shell: cp {0} action.yml
    - uses: ./
```


### Relevant log output

```sh
go: downloading github.com/AlecAivazis/survey/v2 v2.3.4
go: downloading github.com/andreaskoch/go-fswatch v1.0.0
go: downloading github.com/joho/godotenv v1.4.0
go: downloading github.com/mitchellh/go-homedir v1.1.0
go: downloading github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06
go: downloading github.com/sirupsen/logrus v1.8.1
go: downloading github.com/spf13/cobra v1.4.0
go: downloading golang.org/x/term v0.0.0-20210927222741-03fcf44c2211
go: downloading github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
go: downloading github.com/julienschmidt/httprouter v1.3.0
go: downloading github.com/ZauberNerd/go-git/v5 v5.4.3-0.20220315170230-29ec1bc1e5db
go: downloading github.com/go-ini/ini v1.66.5
go: downloading github.com/mattn/go-isatty v0.0.14
go: downloading github.com/pkg/errors v0.9.1
go: downloading github.com/Masterminds/semver v1.5.0
go: downloading github.com/docker/cli v20.10.16+incompatible
go: downloading github.com/docker/distribution v2.8.1+incompatible
go: downloading github.com/docker/docker v20.10.16+incompatible
go: downloading github.com/go-git/go-billy/v5 v5.3.1
go: downloading github.com/moby/buildkit v0.10.3
go: downloading github.com/opencontainers/image-spec v1.0.3-0.20211202183452-c5a74bcca799
go: downloading gopkg.in/yaml.v3 v3.0.0-20220512140231-539c8e751b99
go: downloading github.com/opencontainers/selinux v1.10.1
go: downloading github.com/spf13/pflag v1.0.5
go: downloading golang.org/x/sys v0.0.0-20220513210249-45d2b4557a2a
go: downloading github.com/mgutz/ansi v0.0.0-20200706080929-d51e80ef957d
go: downloading golang.org/x/text v0.3.7
go: downloading github.com/ProtonMail/go-crypto v0.0.0-20220404123522-616f957b79ad
go: downloading github.com/imdario/mergo v0.3.12
go: downloading github.com/sergi/go-diff v1.2.0
go: downloading github.com/docker/docker-credential-helpers v0.6.4
go: downloading github.com/opencontainers/go-digest v1.0.0
go: downloading github.com/docker/go-connections v0.4.0
go: downloading github.com/docker/go-units v0.4.0
go: downloading github.com/containerd/containerd v1.6.3-0.20220401172941-5ff8fce1fcc6
go: downloading github.com/rhysd/actionlint v1.6.13
go: downloading github.com/mattn/go-colorable v0.1.12
go: downloading github.com/go-git/gcfg v1.5.0
go: downloading github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99
go: downloading golang.org/x/crypto v0.0.0-20220331220935-ae2d96664a29
go: downloading github.com/emirpasic/gods v1.12.0
go: downloading github.com/opencontainers/runc v1.1.1
go: downloading github.com/moby/sys/mount v0.3.1
go: downloading golang.org/x/net v0.0.0-20220403103023-749bd193bc2b
go: downloading github.com/fatih/color v1.13.0
go: downloading github.com/mattn/go-runewidth v0.0.13
go: downloading github.com/robfig/cron v1.2.0
go: downloading golang.org/x/sync v0.0.0-20220513210516-0976fa681c29
go: downloading gopkg.in/warnings.v0 v0.1.2
go: downloading github.com/kevinburke/ssh_config v1.2.0
go: downloading github.com/xanzy/ssh-agent v0.3.1
go: downloading github.com/gogo/protobuf v1.3.2
go: downloading github.com/moby/sys/mountinfo v0.6.0
go: downloading github.com/rivo/uniseg v0.2.0
time="2022-06-01T12:41:39Z" level=debug msg="Loading environment from /home/runner/work/ghat3/ghat3/.env"
time="2022-06-01T12:41:39Z" level=debug msg="Loading secrets from /home/runner/work/ghat3/ghat3/.secrets"
time="2022-06-01T12:41:39Z" level=debug msg="Loading workflow '/home/runner/work/ghat3/ghat3/workflow.yaml'"
time="2022-06-01T12:41:39Z" level=debug msg="Reading workflow '/home/runner/work/ghat3/ghat3/workflow.yaml'"
time="2022-06-01T12:41:39Z" level=debug msg="Planning event: push"
time="2022-06-01T12:41:39Z" level=debug msg="Loading slug from git directory '/home/runner/work/ghat3/ghat3/.git'"
time="2022-06-01T12:41:39Z" level=debug msg="Loading revision from git directory '/home/runner/work/ghat3/ghat3/.git'"
time="2022-06-01T12:41:39Z" level=debug msg="Found revision: 64387bcf7b92f07b42a4c93f7e4504219af5df2c\n"
time="2022-06-01T12:41:39Z" level=debug msg="HEAD points to '64387bcf7b92f07b42a4c93f7e4504219af5df2c'"
time="2022-06-01T12:41:39Z" level=debug msg="using github ref: refs/heads/master"
time="2022-06-01T12:41:39Z" level=debug msg="Found revision: 64387bcf7b92f07b42a4c93f7e4504219af5df2c\n"
time="2022-06-01T12:41:39Z" level=debug msg="evaluating expression 'success()'"
[workflow.yaml/test] 🚀  Start image=ghcr.io/catthehacker/ubuntu:act-latest
time="2022-06-01T12:41:39Z" level=debug msg="expression 'success()' evaluated to 'true'"
time="2022-06-01T12:41:39Z" level=debug msg="Loading slug from git directory '/home/runner/work/ghat3/ghat3/.git'"
time="2022-06-01T12:41:39Z" level=debug msg="Loading revision from git directory '/home/runner/work/ghat3/ghat3/.git'"
time="2022-06-01T12:41:39Z" level=debug msg="Found revision: 64387bcf7b92f07b42a4c93f7e4504219af5df2c\n"
time="2022-06-01T12:41:39Z" level=debug msg="HEAD points to '64387bcf7b92f07b42a4c93f7e4504219af5df2c'"
time="2022-06-01T12:41:39Z" level=debug msg="using github ref: refs/heads/master"
time="2022-06-01T12:41:39Z" level=debug msg="Found revision: 64387bcf7b92f07b42a4c93f7e4504219af5df2c\n"
[workflow.yaml/test]   🐳  docker pull image=ghcr.io/catthehacker/ubuntu:act-latest platform= username= forcePull=false
[workflow.yaml/test]   🐳  docker pull ghcr.io/catthehacker/ubuntu:act-latest
time="2022-06-01T12:41:39Z" level=debug msg="Image exists? false"
[workflow.yaml/test] pulling image 'ghcr.io/catthehacker/ubuntu:act-latest' ()
[workflow.yaml/test] Pulling from catthehacker/ubuntu :: act-latest
[workflow.yaml/test] Already exists :: d5fd17ec1767
[workflow.yaml/test] Pulling fs layer :: b802a9f71706
[workflow.yaml/test] Pulling fs layer :: da477514e5fd
[workflow.yaml/test] Pulling fs layer :: 03f807692b16
[workflow.yaml/test] Pulling fs layer :: 3940e38805ed
[workflow.yaml/test] Pulling fs layer :: 4f4fb700ef54
[workflow.yaml/test] Pulling fs layer :: 3ab5ef1b911c
[workflow.yaml/test] Pulling fs layer :: 0b43b7bca71d
[workflow.yaml/test] Waiting :: 3ab5ef1b911c
[workflow.yaml/test] Waiting :: 0b43b7bca71d
[workflow.yaml/test] Waiting :: 3940e38805ed
[workflow.yaml/test] Waiting :: 4f4fb700ef54
[workflow.yaml/test] Downloading :: da477514e5fd :: [>                                                  ]   36.9kB/3.624MB
[workflow.yaml/test] Downloading :: b802a9f71706 :: [>                                                  ]   87.4kB/7.768MB
[workflow.yaml/test] Downloading :: 03f807692b16 :: [>                                                  ]  539.8kB/60.73MB
[workflow.yaml/test] Verifying Checksum :: b802a9f71706
[workflow.yaml/test] Download complete :: b802a9f71706
[workflow.yaml/test] Downloading :: da477514e5fd :: [================================>                  ]  2.358MB/3.624MB
[workflow.yaml/test] Extracting :: b802a9f71706 :: [>                                                  ]   98.3kB/7.768MB
[workflow.yaml/test] Downloading :: da477514e5fd :: [==================================================>]  3.624MB/3.624MB
[workflow.yaml/test] Verifying Checksum :: da477514e5fd
[workflow.yaml/test] Download complete :: da477514e5fd
[workflow.yaml/test] Downloading :: 03f807692b16 :: [========>                                          ]  10.24MB/60.73MB
[workflow.yaml/test] Extracting :: b802a9f71706 :: [===========>                                       ]  1.769MB/7.768MB
[workflow.yaml/test] Downloading :: 03f807692b16 :: [===============>                                   ]  18.32MB/60.73MB
[workflow.yaml/test] Extracting :: b802a9f71706 :: [=====================================>             ]    5.8MB/7.768MB
[workflow.yaml/test] Downloading :: 03f807692b16 :: [=====================>                             ]  25.87MB/60.73MB
[workflow.yaml/test] Downloading :: 4f4fb700ef54 :: [==================================================>]      32B/32B
[workflow.yaml/test] Verifying Checksum :: 4f4fb700ef54
[workflow.yaml/test] Download complete :: 4f4fb700ef54
[workflow.yaml/test] Extracting :: b802a9f71706 :: [===========================================>       ]  6.685MB/7.768MB
[workflow.yaml/test] Downloading :: 03f807692b16 :: [===========================>                       ]  33.98MB/60.73MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [>                                                  ]  539.1kB/145.3MB
[workflow.yaml/test] Downloading :: 03f807692b16 :: [==================================>                ]  41.55MB/60.73MB
[workflow.yaml/test] Extracting :: b802a9f71706 :: [============================================>      ]   6.98MB/7.768MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [====>                                              ]  11.79MB/145.3MB
[workflow.yaml/test] Downloading :: 03f807692b16 :: [=========================================>         ]  50.18MB/60.73MB
[workflow.yaml/test] Extracting :: b802a9f71706 :: [=================================================> ]  7.766MB/7.768MB
[workflow.yaml/test] Extracting :: b802a9f71706 :: [==================================================>]  7.768MB/7.768MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [========>                                          ]  25.25MB/145.3MB
[workflow.yaml/test] Downloading :: 03f807692b16 :: [===============================================>   ]  57.75MB/60.73MB
[workflow.yaml/test] Verifying Checksum :: 03f807692b16
[workflow.yaml/test] Download complete :: 03f807692b16
[workflow.yaml/test] Downloading :: 3ab5ef1b911c :: [=======>                                           ]  1.378kB/9.278kB
[workflow.yaml/test] Downloading :: 3ab5ef1b911c :: [==================================================>]  9.278kB/9.278kB
[workflow.yaml/test] Verifying Checksum :: 3ab5ef1b911c
[workflow.yaml/test] Download complete :: 3ab5ef1b911c
[workflow.yaml/test] Downloading :: 3940e38805ed :: [============>                                      ]  35.44MB/145.3MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [===============>                                   ]   46.2MB/145.3MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [==================>                                ]  54.85MB/145.3MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [=======================>                           ]  67.17MB/145.3MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [>                                                  ]  539.8kB/150.2MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [========================>                          ]  71.47MB/145.3MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [===>                                               ]  9.159MB/150.2MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [===========================>                       ]  78.99MB/145.3MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [=====>                                             ]  16.71MB/150.2MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [=============================>                     ]  85.42MB/145.3MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [========>                                          ]  24.79MB/150.2MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [===============================>                   ]  91.88MB/145.3MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [==========>                                        ]  32.85MB/150.2MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [=============>                                     ]  41.48MB/150.2MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [==================================>                ]  101.1MB/145.3MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [================>                                  ]  49.56MB/150.2MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [========================================>          ]  117.3MB/145.3MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [===================>                               ]  57.67MB/150.2MB
[workflow.yaml/test] Downloading :: 3940e38805ed :: [=============================================>     ]  132.3MB/145.3MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [======================>                            ]   66.3MB/150.2MB
[workflow.yaml/test] Verifying Checksum :: 3940e38805ed
[workflow.yaml/test] Download complete :: 3940e38805ed
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [========================>                          ]  74.89MB/150.2MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [===========================>                       ]  83.53MB/150.2MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [==============================>                    ]  92.18MB/150.2MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [=================================>                 ]  100.8MB/150.2MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [====================================>              ]  109.5MB/150.2MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [=======================================>           ]  118.1MB/150.2MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [=========================================>         ]  125.7MB/150.2MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [============================================>      ]  134.8MB/150.2MB
[workflow.yaml/test] Downloading :: 0b43b7bca71d :: [===============================================>   ]  143.5MB/150.2MB
[workflow.yaml/test] Verifying Checksum :: 0b43b7bca71d
[workflow.yaml/test] Download complete :: 0b43b7bca71d
[workflow.yaml/test] Pull complete :: b802a9f71706
[workflow.yaml/test] Extracting :: da477514e5fd :: [>                                                  ]  65.54kB/3.624MB
[workflow.yaml/test] Extracting :: da477514e5fd :: [============================================>      ]  3.211MB/3.624MB
[workflow.yaml/test] Extracting :: da477514e5fd :: [==================================================>]  3.624MB/3.624MB
[workflow.yaml/test] Pull complete :: da477514e5fd
[workflow.yaml/test] Extracting :: 03f807692b16 :: [>                                                  ]  557.1kB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [====>                                              ]  5.571MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [========>                                          ]  10.58MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [=============>                                     ]  16.71MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [==================>                                ]  22.28MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [====================>                              ]  24.51MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [======================>                            ]   27.3MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [========================>                          ]  29.52MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [=========================>                         ]   31.2MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [===========================>                       ]  32.87MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [============================>                      ]  35.09MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [===============================>                   ]  37.88MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [================================>                  ]  39.55MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [==================================>                ]  41.78MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [===================================>               ]  43.45MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [======================================>            ]  46.24MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [=========================================>         ]  50.69MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [============================================>      ]  53.48MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [==============================================>    ]  56.26MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [================================================>  ]  58.49MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [=================================================> ]  60.16MB/60.73MB
[workflow.yaml/test] Extracting :: 03f807692b16 :: [==================================================>]  60.73MB/60.73MB
[workflow.yaml/test] Pull complete :: 03f807692b16
[workflow.yaml/test] Extracting :: 3940e38805ed :: [>                                                  ]  557.1kB/145.3MB
[workflow.yaml/test] Extracting :: 3940e38805ed :: [=>                                                 ]  4.456MB/145.3MB
[workflow.yaml/test] Extracting :: 3940e38805ed :: [==>                                                ]  7.242MB/145.3MB
[workflow.yaml/test] Extracting :: 3940e38805ed :: [==>                                                ]  8.356MB/145.3MB
[workflow.yaml/test] Extracting :: 3940e38805ed :: [===>                                               ]  10.03MB/145.3MB
[workflow.yaml/test] Extracting :: 3940e38805ed :: [===>                                               ]  11.14MB/145.3MB
[workflow.yaml/test] Extracting :: 3940e38805ed :: [====>                                              ]  12.81MB/145.3MB
[workflow.yaml/test] Extracting :: 3940e38805ed :: [====>                                              ]  13.93MB/145.3MB
[workflow.yaml/test] Extracting :: 3940e38805ed :: [======>                                            ]   19.5MB/145.3MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [==============>                                    ]  42.34MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [================>                                  ]  48.46MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [=================>                                 ]  53.48MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [==================>                                ]  55.15MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [==================>                                ]  56.26MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [===================>                               ]  57.38MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [===================>                               ]  58.49MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [====================>                              ]  61.83MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [======================>                            ]  66.29MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [=======================>                           ]  69.63MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [========================>                          ]  73.53MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [==========================>                        ]   79.1MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [============================>                      ]   86.9MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [==============================>                    ]  91.91MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [================================>                  ]  97.48MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [=================================>                 ]  101.9MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [==================================>                ]  104.7MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [====================================>              ]  109.2MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [=====================================>             ]  113.6MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [=======================================>           ]  118.1MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [========================================>          ]    122MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [===========================================>       ]  129.2MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [==============================================>    ]  139.3MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [================================================>  ]  144.3MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [=================================================> ]  148.7MB/150.2MB
[workflow.yaml/test] Extracting :: 0b43b7bca71d :: [==================================================>]  150.2MB/150.2MB
[workflow.yaml/test] Pull complete :: 0b43b7bca71d
[workflow.yaml/test] Digest: sha256:ea95d6cee02ac2a23c5a536e84a9e3080eb3fe22371f44f0bb7a0126c62a176d :: 
[workflow.yaml/test] Status: Downloaded newer image for ghcr.io/catthehacker/ubuntu:act-latest :: 
[workflow.yaml/test]   🐳  docker create image=ghcr.io/catthehacker/ubuntu:act-latest platform= entrypoint=["/usr/bin/tail" "-f" "/dev/null"] cmd=[]
[workflow.yaml/test] Created container name=act-workflow-yaml-test id=b2acffa0a4fd565be80054cc2909c5f843c5bb23130490647527dbe45f37da37 from image ghcr.io/catthehacker/ubuntu:act-latest (platform: )
[workflow.yaml/test] ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_TEMP=/tmp]
[workflow.yaml/test]   🐳  docker run image=ghcr.io/catthehacker/ubuntu:act-latest platform= entrypoint=["/usr/bin/tail" "-f" "/dev/null"] cmd=[]
[workflow.yaml/test] Starting container: b2acffa0a4fd565be80054cc2909c5f843c5bb23130490647527dbe45f37da37
[workflow.yaml/test] Started container: b2acffa0a4fd565be80054cc2909c5f843c5bb23130490647527dbe45f37da37
[workflow.yaml/test]   🐳  docker exec cmd=[mkdir -m 0777 -p /var/run/act] user=root workdir=
[workflow.yaml/test] Exec command '[mkdir -m 0777 -p /var/run/act]'
[workflow.yaml/test] Working directory '/home/runner/work/ghat3/ghat3'
[workflow.yaml/test]   🐳  docker cp src=/home/runner/work/ghat3/ghat3/. dst=/home/runner/work/ghat3/ghat3
[workflow.yaml/test]   🐳  docker exec cmd=[mkdir -p /home/runner/work/ghat3/ghat3] user= workdir=
[workflow.yaml/test] Exec command '[mkdir -p /home/runner/work/ghat3/ghat3]'
[workflow.yaml/test] Working directory '/home/runner/work/ghat3/ghat3'
time="2022-06-01T12:42:02Z" level=debug msg="Writing tarball /tmp/act2463346550 from /home/runner/work/ghat3/ghat3/."
time="2022-06-01T12:42:02Z" level=debug msg="Stripping prefix:/home/runner/work/ghat3/ghat3/ src:/home/runner/work/ghat3/ghat3/."
[workflow.yaml/test] Extracting content from '/tmp/act2463346550' to '/home/runner/work/ghat3/ghat3'
[workflow.yaml/test] close /tmp/act2463346550: file already closed
time="2022-06-01T12:42:02Z" level=debug msg="Writing entry to tarball workflow/event.json len:2"
time="2022-06-01T12:42:02Z" level=debug msg="Writing entry to tarball workflow/envs.txt len:0"
time="2022-06-01T12:42:02Z" level=debug msg="Writing entry to tarball workflow/paths.txt len:0"
[workflow.yaml/test] Extracting content to '/var/run/act/'
time="2022-06-01T12:42:02Z" level=debug msg="Loading slug from git directory '/home/runner/work/ghat3/ghat3/.git'"
time="2022-06-01T12:42:02Z" level=debug msg="Loading revision from git directory '/home/runner/work/ghat3/ghat3/.git'"
time="2022-06-01T12:42:02Z" level=debug msg="Found revision: 64387bcf7b92f07b42a4c93f7e4504219af5df2c\n"
time="2022-06-01T12:42:02Z" level=debug msg="HEAD points to '64387bcf7b92f07b42a4c93f7e4504219af5df2c'"
time="2022-06-01T12:42:02Z" level=debug msg="using github ref: refs/heads/master"
time="2022-06-01T12:42:02Z" level=debug msg="Found revision: 64387bcf7b92f07b42a4c93f7e4504219af5df2c\n"
[workflow.yaml/test] Skipping local actions/checkout because workdir was already copied
[workflow.yaml/test] skip pre step for 'actions/checkout@v3': no action model available
[workflow.yaml/test] skip post step for './'; step was not executed
[workflow.yaml/test] skip post step for 'actions/checkout@v3'; step was not executed
[workflow.yaml/test] Removed container: b2acffa0a4fd565be80054cc2909c5f843c5bb23130490647527dbe45f37da37
[workflow.yaml/test]   🐳  docker volume rm act-workflow-yaml-test-env
time="2022-06-01T12:42:02Z" level=debug msg="Loading slug from git directory '/home/runner/work/ghat3/ghat3/.git'"
time="2022-06-01T12:42:02Z" level=debug msg="Loading revision from git directory '/home/runner/work/ghat3/ghat3/.git'"
time="2022-06-01T12:42:02Z" level=debug msg="Found revision: 64387bcf7b92f07b42a4c93f7e4504219af5df2c\n"
time="2022-06-01T12:42:02Z" level=debug msg="HEAD points to '64387bcf7b92f07b42a4c93f7e4504219af5df2c'"
time="2022-06-01T12:42:02Z" level=debug msg="using github ref: refs/heads/master"
time="2022-06-01T12:42:02Z" level=debug msg="Found revision: 64387bcf7b92f07b42a4c93f7e4504219af5df2c\n"
Error: file does not exist
exit status 1
```


### Additional information

**Release Blocker**: Caused by https://github.com/nektos/act/commit/943a0e6eea2f67783018b9d3bc375a6a7dd65ab3.

I commented about this in the pre step PR: https://github.com/nektos/act/pull/1110#issuecomment-1105635385, also I will avoid rebasing github-act-runner's act fork untill this is resolved.


Discussion / hints:

Fix patch:
diff --git a/pkg/runner/step_action_local.go b/pkg/runner/step_action_local.go
index ad0e5afd528..575d78edd7b 100644
--- a/pkg/runner/step_action_local.go
+++ b/pkg/runner/step_action_local.go
@@ -28,9 +28,16 @@ func (sal *stepActionLocal) pre() common.Executor {
 	sal.env = map[string]string{}
 
 	return func(ctx context.Context) error {
+		return nil
+	}
+}
+
+func (sal *stepActionLocal) main() common.Executor {
+	return runStepExecutor(sal, stepStageMain, func(ctx context.Context) error {
 		if common.Dryrun(ctx) {
 			return nil
 		}
+
 		actionDir := filepath.Join(sal.getRunContext().Config.Workdir, sal.Step.Uses)
 
 		localReader := func(ctx context.Context) actionYamlReader {
@@ -55,23 +62,6 @@ func (sal *stepActionLocal) pre() common.Executor {
 
 		sal.action = actionModel
 
-		// run local pre step only for composite actions, to allow to run
-		// inside pre steps
-		if sal.action.Runs.Using == model.ActionRunsUsingComposite {
-			sal.RunContext.setupActionInputs(sal)
-			return runStepExecutor(sal, stepStagePre, runPreStep(sal)).If(hasPreStep(sal)).If(shouldRunPreStep(sal))(ctx)
-		}
-
-		return nil
-	}
-}
-
-func (sal *stepActionLocal) main() common.Executor {
-	return runStepExecutor(sal, stepStageMain, func(ctx context.Context) error {
-		if common.Dryrun(ctx) {
-			return nil
-		}
-		actionDir := filepath.Join(sal.getRunContext().Config.Workdir, sal.Step.Uses)
 		return sal.runAction(sal, actionDir, nil)(ctx)
 	})
 }
diff --git a/pkg/runner/step_action_remote.go b/pkg/runner/step_action_remote.go
index edf4218bd3c..7f55c68a089 100644
--- a/pkg/runner/step_action_remote.go
+++ b/pkg/runner/step_action_remote.go
@@ -32,11 +32,14 @@ var (
 	stepActionRemoteNewCloneExecutor = common.NewGitCloneExecutor
 )
 
-func (sar *stepActionRemote) pre() common.Executor {
-	sar.env = map[string]string{}
-
+func (sar *stepActionRemote) prepareActionExecutor() common.Executor {
 	return common.NewPipelineExecutor(
 		func(ctx context.Context) error {
+			if sar.remoteAction != nil && sar.action != nil {
+				// we are already good to run
+				return nil
+			}
+
 			sar.remoteAction = newRemoteAction(sar.Step.Uses)
 			if sar.remoteAction == nil {
 				return fmt.Errorf("Expected format {org}/{repo}[/path]@ref. Actual '%s' Input string was not in a correct format", sar.Step.Uses)
@@ -88,24 +91,34 @@ func (sar *stepActionRemote) pre() common.Executor {
 		func(ctx context.Context) error {
 			sar.RunContext.setupActionInputs(sar)
 			return nil
-		},
+		})
+}
+
+func (sar *stepActionRemote) pre() common.Executor {
+	sar.env = map[string]string{}
+
+	return common.NewPipelineExecutor(
+		sar.prepareActionExecutor(),
 		runStepExecutor(sar, stepStagePre, runPreStep(sar)).If(hasPreStep(sar)).If(shouldRunPreStep(sar)))
 }
 
 func (sar *stepActionRemote) main() common.Executor {
-	return runStepExecutor(sar, stepStageMain, func(ctx context.Context) error {
-		github := sar.RunContext.getGithubContext()
-		if sar.remoteAction.IsCheckout() && isLocalCheckout(github, sar.Step) && !sar.RunContext.Config.NoSkipCheckout {
-			common.Logger(ctx).Debugf("Skipping local actions/checkout because workdir was already copied")
-			return nil
-		}
+	return common.NewPipelineExecutor(
+		sar.prepareActionExecutor(),
+		runStepExecutor(sar, stepStageMain, func(ctx context.Context) error {
+			github := sar.RunContext.getGithubContext()
+			if sar.remoteAction.IsCheckout() && isLocalCheckout(github, sar.Step) && !sar.RunContext.Config.NoSkipCheckout {
+				common.Logger(ctx).Debugf("Skipping local actions/checkout because workdir was already copied")
+				return nil
+			}
 
-		actionDir := fmt.Sprintf("%s/%s", sar.RunContext.ActionCacheDir(), strings.ReplaceAll(sar.Step.Uses, "/", "-"))
+			actionDir := fmt.Sprintf("%s/%s", sar.RunContext.ActionCacheDir(), strings.ReplaceAll(sar.Step.Uses, "/", "-"))
 
-		return common.NewPipelineExecutor(
-			sar.runAction(sar, actionDir, sar.remoteAction),
-		)(ctx)
-	})
+			return common.NewPipelineExecutor(
+				sar.runAction(sar, actionDir, sar.remoteAction),
+			)(ctx)
+		}),
+	)
 }
 
 func (sar *stepActionRemote) post() common.Executor {


Test patch:
diff --git a/pkg/runner/step_action_local_test.go b/pkg/runner/step_action_local_test.go
index d0b0dfb0ee0..09f759787dd 100644
--- a/pkg/runner/step_action_local_test.go
+++ b/pkg/runner/step_action_local_test.go
@@ -92,52 +92,6 @@ func TestStepActionLocalTest(t *testing.T) {
 	salm.AssertExpectations(t)
 }
 
-func TestStepActionLocalPre(t *testing.T) {
-	cm := &containerMock{}
-	salm := &stepActionLocalMocks{}
-
-	ctx := context.Background()
-
-	sal := &stepActionLocal{
-		readAction: salm.readAction,
-		RunContext: &RunContext{
-			StepResults: map[string]*model.StepResult{},
-			ExprEval:    &expressionEvaluator{},
-			Config: &Config{
-				Workdir: "/tmp",
-			},
-			Run: &model.Run{
-				JobID: "1",
-				Workflow: &model.Workflow{
-					Jobs: map[string]*model.Job{
-						"1": {
-							Defaults: model.Defaults{
-								Run: model.RunDefaults{
-									Shell: "bash",
-								},
-							},
-						},
-					},
-				},
-			},
-			JobContainer: cm,
-		},
-		Step: &model.Step{
-			ID:   "1",
-			Uses: "./path/to/action",
-		},
-	}
-
-	salm.On("readAction", sal.Step, "/tmp/path/to/action", "", mock.Anything, mock.Anything).
-		Return(&model.Action{}, nil)
-
-	err := sal.pre()(ctx)
-	assert.Nil(t, err)
-
-	cm.AssertExpectations(t)
-	salm.AssertExpectations(t)
-}
-
 func TestStepActionLocalPost(t *testing.T) {
 	table := []struct {
 		name                   string