Files
act_runner/act/runner/testdata/commands/push.yml
bircni b70ff6893a feat: gate set-env/add-path and render annotation locations (#1109)
`::set-env::` and `::add-path::` let a step rewrite the environment of every later step from its own output, which the runner honoured silently. They are now refused, as GitHub has done since 2020, and `ACTIONS_ALLOW_UNSECURE_COMMANDS` opts back in per step or job. Support for that variable is new here too, and is the only opt-in, matching GitHub rather than adding a runner config key on top.

Annotations keep their source location: Gitea has no annotation store and its web UI strips command properties, so `::error file=main.go,line=12::msg` is rendered as `::error::main.go:12: msg`.

`DEVELOPMENT.md` writes down the log line encoding rules this relies on.

---------

Co-authored-by: silverwind <me@silverwind.io>
Reviewed-on: https://gitea.com/gitea/runner/pulls/1109
Reviewed-by: silverwind <2021+silverwind@noreply.gitea.com>
Co-authored-by: bircni <bircni@icloud.com>
2026-08-05 16:43:17 +00:00

43 lines
1.2 KiB
YAML

name: basic
on: push
jobs:
build:
runs-on: ubuntu-latest
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
steps:
- name: TEST set-env
run: echo "::set-env name=foo::bar"
- name: TEST set-env (cont.)
run: echo $foo | grep bar
- name: TEST set-output
id: set_output
run: echo "::set-output name=zoo::zar"
- run: echo "::add-path::/zip"
- run: echo $PATH | grep /zip
- name: TEST conditional
if: steps.set_output.outputs.zoo
run: echo "::set-env name=cond_env::foo"
- name: TEST conditional (cont.)
run: echo $cond_env | grep foo
- name: TEST debug, warning, error
run: |
echo "::debug file=app.js,line=100,col=20::Hello debug!"
echo "::warning file=app.js,line=100,col=20::Hello warning!"
echo "::error file=app.js,line=100,col=30::Hello error!"
- name: TEST stop-commands
run: |
echo "::stop-commands::my-end-token"
echo "::set-env name=foo::baz"
echo $foo | grep bar
echo "::my-end-token::"
echo "::set-env name=foo::baz"
- name: TEST stop-commands (cont.)
run: echo $foo | grep baz