Commit Graph

508 Commits

Author SHA1 Message Date
ChristopherHX 83a28d9512
Close docker client (#789)
* Close docker client!

* Fix nil dereference

* Update run_context.go

* Bump

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-10-24 16:50:43 +00:00
Ryan f8ddfca6f7
goreleaser: Switch to latest and drop Homebrew config (#848)
* ci: unpin goreleaser version

homebrew issue has been fixed

* ci: drop homebrew from goreleaser

act has been for quite a long time in homebrew-core
and it supports all macos/linux so there is no
reason for us to have separate tap, as it might
confuse some users

Co-authored-by: Casey Lee <cplee@nektos.com>
2021-10-24 09:36:09 -07:00
Ryan 977b526384
ci: switch macos job to macos-10.15 (#849) 2021-10-23 18:37:33 -07:00
dependabot[bot] b5e8a18683
build(deps): bump github.com/moby/buildkit from 0.9.0 to 0.9.1 (#838)
Bumps [github.com/moby/buildkit](https://github.com/moby/buildkit) from 0.9.0 to 0.9.1.
- [Release notes](https://github.com/moby/buildkit/releases)
- [Commits](https://github.com/moby/buildkit/compare/v0.9.0...v0.9.1)

---
updated-dependencies:
- dependency-name: github.com/moby/buildkit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-18 20:24:05 +00:00
Ryan a0d360236e
fix: rewrite StepContext env (#832)
* fix: rewrite StepContext env

step env from workflow should be last one to be written
fixes https://github.com/nektos/act/issues/777

* test: verify env correctness

* fix: move test into existing workflow
2021-09-28 01:18:59 +00:00
Ryan 6c60af7677
fix: rewrite how image env is merged (#828)
* fix: rewrite how image env is merged

* test: add test for extractFromImageEnv
2021-09-27 19:01:14 +00:00
Ryan 7a426a0f37
refactor: re-implement `embed` without "unused" import (#830)
* refactor: re-implement `embed` without "unused" import

* fix(gitignore): ignore local docker registry data
2021-09-27 17:33:14 +00:00
dependabot[bot] bfcf0abd73
build(deps): bump github.com/joho/godotenv from 1.3.0 to 1.4.0 (#824)
Bumps [github.com/joho/godotenv](https://github.com/joho/godotenv) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/joho/godotenv/releases)
- [Commits](https://github.com/joho/godotenv/compare/v1.3.0...v1.4.0)

---
updated-dependencies:
- dependency-name: github.com/joho/godotenv
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Casey Lee <cplee@nektos.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-09-26 16:47:33 +00:00
Ryan c2c8b525f8
Add reading environment from Docker image (#771)
* fix: read envvars from image definition

* fix: add test

* fix: sort slices

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-09-26 16:37:53 +00:00
Ryan 4d552e65ce
fix: add simple concurrency limit (#823)
Co-authored-by: Casey Lee <cplee@nektos.com>
2021-09-26 16:21:12 +00:00
Mehdi ABAAKOUK a6aea44fb0
fix(mergify): needs-work label handling (#810) 2021-09-26 09:08:52 -07:00
Ryan b1e4844aac
ci: pin goreleaser version (#825) 2021-09-26 09:05:43 -07:00
Ryan 5a09eb24ca
Bump all dependencies (and fix dependabot mess) (#822)
* build(deps): bump all Go deps

* build(deps): bump actions/setup-go & actions/stale
2021-09-25 12:13:22 -07:00
Ryan 3c1454825d
fix: mount volume for workflow info (#776)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-09-24 13:32:22 +00:00
dependabot[bot] e82f17e230
build(deps): bump codecov/codecov-action from 1.5.2 to 2.1.0 (#819) 2021-09-23 00:12:29 -07:00
Ryan 17652ce80e
Remove ubuntu-16.04 and add missing links for nix/go (#821)
* fix: remove ubuntu-16.04

* fix: add missing links for nix/go

* fix: remove specific platform versions
2021-09-22 19:43:58 +00:00
Josh Soref aa080d0ed9
Provide hint for -P (#815) 2021-09-13 23:14:41 +00:00
dependabot[bot] 6d7f574859
build(deps): bump github.com/go-git/go-billy/v5 from 5.0.0 to 5.3.1 (#802)
Bumps [github.com/go-git/go-billy/v5](https://github.com/go-git/go-billy) from 5.0.0 to 5.3.1.
- [Release notes](https://github.com/go-git/go-billy/releases)
- [Commits](https://github.com/go-git/go-billy/compare/v5.0.0...v5.3.1)

---
updated-dependencies:
- dependency-name: github.com/go-git/go-billy/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-09-10 15:34:10 +00:00
Marcin Falkowski 9126f15aa2
support for container option: --hostname (#809) 2021-09-10 05:03:40 +00:00
ChristopherHX f0fd0af5ce
Refresh hash after pull for branch refs (#791)
* Refresh hash after pull for branch refs

* Bump

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-09-08 16:47:12 +00:00
dependabot[bot] a7a2659c0e
build(deps): bump github.com/AlecAivazis/survey/v2 from 2.2.7 to 2.3.1 (#803)
Bumps [github.com/AlecAivazis/survey/v2](https://github.com/AlecAivazis/survey) from 2.2.7 to 2.3.1.
- [Release notes](https://github.com/AlecAivazis/survey/releases)
- [Commits](https://github.com/AlecAivazis/survey/compare/v2.2.7...v2.3.1)

---
updated-dependencies:
- dependency-name: github.com/AlecAivazis/survey/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-08 14:52:34 +00:00
Ryan 12928a0ac6
feat: add Dependabot config (#797)
Add Dependabot to keep dependencies up to date
2021-09-08 13:46:45 +00:00
ChristopherHX 6e5bd24728
Cache dockerhub images from linux for macOS (#768)
* Cache dockerhub images from linux for macOS

An attempt to avoid hitting the dockerhub Pull Rate Limit.

* parallelize / refactor docker cache

Co-authored-by: Casey Lee <cplee@nektos.com>
2021-08-30 17:01:30 -07:00
Ryan 4c645b3ed9
Update Go to 1.17 (#787)
* ci: bump Go version & move it to env

* go.mod: bump golang.org/x/term

* ci: capture Windows arm64 binary

Co-authored-by: Casey Lee <cplee@nektos.com>
2021-08-30 11:06:20 -07:00
Ryan 37aaec81f4
feat: improve list (#786) 2021-08-30 15:38:03 +00:00
Ryan de44a505da
fix: copy whole action dir to container (#774)
fixes https://github.com/nektos/act/issues/754
this will prevent actions from failing that use resources outside
of the action directory
2021-08-10 22:21:52 -07:00
Ryan bea32d5651
Add proper support for working-directory & fix command builder (#772)
* fix: align other Docker executors to print action

* fix: formatting

* fix: add proper workdir support

* fix: replace script filepath after slice creation

* fix: match substring so it works for pwsh

+ rename containerPath to scriptPath to reflect what value it contains
2021-08-10 19:40:20 +00:00
ChristopherHX 77b3968913
Fix docker: invalid reference format (#767)
* Fix local Docker actions: invalid reference format

* Create Dockerfile

* Create Dockerfile

* Update push.yml

* Revert "Create Dockerfile"

This reverts commit 9d1dbbc2c7.

* Fix lint

* fix: re-use image that is already present in repo

ubuntu:latest would pull unnecessary blobs from registry and count toward API limit

* fix: revert change

reverting due to issue in image deletion that will have to be investigated separately

Co-authored-by: Ryan <me@hackerc.at>
2021-08-09 18:16:31 +00:00
Ryan 5c841e22ab
Update docs, file formatting and docker images (#766)
* docs: fix wrong licence link

* fix: add more formatting settings, reformat all

feat: add vscode extensions recommendations

* docs: update contributing documentation

* fix: remove unnecessary comment

it was due to broken checkout

* docs: rework installation section

it has been brought up few times, new style should be easier
to understand

* docs: update images provided by catthehacker

* docs: replace 18.04 with recent image

* fix: add final new line
2021-08-09 09:07:26 -07:00
Ryan 94fd0ac899
Simplify Matrix decode, add defaults for fail-fast and max-parallel, add test (#763)
* fix[workflow]: multiple fixes for workflow/matrix

fix[workflow]: default `max-parallel`
fix[workflow]: default `fail-fast`, it's `true`, not `false`
fix[workflow]: skipping over the job when `strategy:` is defined but `matrix:` isn't (fixes #625)
fix[workflow]: skip non-existing includes keys and hard fail on non-existing excludes keys
fix[workflow]: simplify Matrix decode (because I "think" I know how `yaml` works) (fixes #760)
fix[tests]: add test for planner and runner

* fix(workflow): use yaml node for env key

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-08-09 15:35:05 +00:00
ChristopherHX 43d46aa62f
Fix format function {{, }} are escapes (#752)
* Fix format function {{, }} are escapes

Added some tests for some corner cases

* Update format function added 2 error checks
2021-08-09 15:19:10 +00:00
ChristopherHX 0ff204b615
Read localaction's from container (#719)
Fix localaction tests (missing checkout)

Co-authored-by: Ryan (hackercat) <me@hackerc.at>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-08-03 17:39:56 +00:00
Bryan Naegele 531ea02fb9
Fix `ImageOS` format (#761)
The current algorithm given `ubuntu-18.04` returns `ubuntu18.04` when it should be `ubuntu18` according to https://github.com/actions/virtual-environments/issues/345#issuecomment-581263296.

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-08-01 15:39:39 +00:00
Herby Gillot 4036b8a3b1
README: add MacPorts info (#762) 2021-08-01 15:29:13 +00:00
ChristopherHX 149cc19908
Fix defaults (composite) (#753)
* Fix defaults (composite)

* uses-composite: rely on defaults to pass

* Add test_input_required back, needs more tests

* Update Tests to test defaults carefully
2021-07-21 13:50:43 +00:00
Derek Bender c865a56c5a
Fix url typo in README.md (#746)
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-07-14 14:40:09 +00:00
Dave Tapley 73b22a0da6
Add docker context workaround to readme (#749)
* Add docker context workaround to readme

* Update README.md

Co-authored-by: Ryan (hackercat) <me@hackerc.at>

* Fix README

MD031/blanks-around-fences Fenced code blocks should be surrounded by blank lines [

Co-authored-by: Ryan (hackercat) <me@hackerc.at>
2021-07-07 18:41:23 +00:00
Phil Story dcbd5837af
Add `needs` job output (#629)
* Add outputs field to job model

* Add output interpolation for jobs

* Add otto config reference for interpolated job output values into 'needs' context

* Add output interpolation call after job has completed.

* gofmt

* Remove whitespace

* goimports

Co-authored-by: Casey Lee <cplee@nektos.com>
2021-07-01 15:20:20 +00:00
Ryan (hackercat) 1cf422e411
fix: warn Apple M1 (arm64) users (#743)
* fix: warn Apple M1 (arm64) users

* fix: missing dep

* fix: linting

* fix: linting (again)
2021-06-23 18:09:27 +00:00
Ryan (hackercat) a9fe038347
Update images, fix extrapath (#723)
* fix: typo

* fix: remove debug for git references

it generates a massive amount of logs

* feat: read values from env

allows to test act on GHA when it's not a main repo

* fix: merge extrapath with PATH

* fix(tests): add additional shells for testing

* fix(image): update images

pin node to major version only, current node version: 12.22.1
replace most images with `node:12-buster-slim` to prevent
errors on macOS runner due to DockerHub pull limit
replace ocaml image

Co-authored-by: Casey Lee <cplee@nektos.com>
2021-06-10 23:12:05 +00:00
Justin Grote a9295c9db2
Test fixups for Windows/Forks (#681)
* Test fixups for Windows/Forks

* revert change for repo/actor/owner

this is fixed via https://github.com/nektos/act/pull/723

Co-authored-by: Ryan (hackercat) <me@hackerc.at>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-06-10 18:27:35 +00:00
ChristopherHX e5d4886787
Refactor local, composite actions and run steps (#712)
Skips docker cp for local actions and use their correct path
Defines GITHUB_ACTION_PATH also for nodejs actions
Evaluate Env of composite action
Evaluate Run of composite action correctly
Evaluate Shell of run step
Evaluate WorkingDirectory of run step
Changed tests for behavior change

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-06-10 15:28:23 +00:00
Joseph Benden 003c995b36
Support container removal at exit. Fixes #694 (#714)
This patch adds a new command-line flag (`--rm`) to automatically
stop workflow container(s), just prior to exit. The default
behavior is kept, e.g.: the containers continue running at exit.

Fixes: #694
Signed-off-by: Joseph Benden <joe@benden.us>

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-06-10 15:09:05 +00:00
Ryan (hackercat) 2261204c65
fix: wrong perms (#726)
if someone is using image with a non-root user, they will get a permission denied since only root has write perms
2021-06-09 16:08:39 -07:00
Ryan (hackercat) 6550eb7f25
fix: update codecov action (again) (#731) 2021-06-09 10:30:16 -07:00
Ryan (hackercat) 05bce00e93
fix: update codecov action (#727) 2021-06-07 10:26:28 -07:00
Ryan (hackercat) 96a0564526
fix: don't replace empty secrets (#725) 2021-06-07 13:54:12 +00:00
Ryan (hackercat) 33ccfa6f3b
Switch to `interface{}` instead of `map[string]...` (#700)
* fix: change `env` to be an interface

allows to use GitHub functions like `fromJson()`

* fix: change matrix to an interface instead of map

This allows to use GitHub functions like `fromJson()` to create dynamic
matrixes

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-06-06 14:53:18 +00:00
Ryan (hackercat) fa93f4d5e7
fix: update issue template (#722)
* fix: update issue template

add additional information to be provided by user that should help in troubleshooting

* fix: move markdownlint config and link it

done it so the markdownlint-cli stops shouting about issues

* feat: add Matrix link

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2021-06-04 20:16:01 +00:00
Joseph Benden 6b4d359737
Add support for container kernel capabilities (#716)
This patch adds two new command-line flags to specify one or
more kernel capabilities to add or remove from the workflow
containers.

The command-line flag `--container-cap-add` allows for adding
specific capabilities on the workflow containers; where as,

The command-line flag `--container-cap-drop` allows for removing
specific capabilities on the workflow containers.

This was developed to specifically be able to add `SYS_PTRACE`
to a workflow I maintain. It involves using this capability to
monitor a make build, to then build a compilation database.

Signed-off-by: Joseph Benden <joe@benden.us>
2021-06-04 16:06:59 +00:00