• 2.0.0 f74c30386a

    Release 2.0.0
    Build and provide rpm of the Gitea runner / Start build on COPR (f44) (release) Successful in 6m52s
    Build and provide rpm of the Gitea runner / Start build on COPR (rawhide) (release) Successful in 7m17s
    Stable

    demus released this 2026-07-04 10:23:42 +02:00 | 2 commits to main since this release

    ⚠️ Breaking changes

    DOCKER_USERNAME / DOCKER_PASSWORD are no longer used implicitly for image pulls

    See #1007

    The runner previously treated secrets named DOCKER_USERNAME and DOCKER_PASSWORD as implicit Docker pull credentials, attaching them to every job- and step-container image pull unconditionally. Since these credentials carry no registry information, they were even sent to Docker Hub when pulling public images, causing those pulls to fail with authentication errors. This behavior has been removed.

    Workflows or runner setups that relied on DOCKER_USERNAME / DOCKER_PASSWORD being implicitly used for Docker image pulls must migrate to an explicit authentication mechanism:

    • For private job container images, use container.credentials:
    jobs:
      build:
        container:
          image: registry.example.com/image:tag
          credentials:
            username: ${{ secrets.REGISTRY_USERNAME }}
            password: ${{ secrets.REGISTRY_PASSWORD }}
    
    
    • For private service container images, use service credentials.
    • For private uses: docker://... or private Docker actions, configure Docker authentication in the runner environment before the job starts (e.g. run docker login on the runner host).

    DOCKER_USERNAME and DOCKER_PASSWORD can still be used as ordinary workflow secrets, for example with docker/login-action before pushing images.

    Features

    • Shallow clone action repositories — #1053
    • Enable jobs.<job_id>.timeout-minutes and jobs.<job_id>.continue-on-error#1032
    • Add optional runner.post_task_script hook after task cleanup — #1026
    • Support ssh:// action URLs — #1035
    • IPv6 options for network container creation — #1029
    • Complete runner-side cancellation handling — #1016
    • Upload job summary when supported — #917

    Bug fixes

    • Composite nested uses clone token — #1041
    • Namespace local docker action image tags per repository — #1051
    • Run always()/cancelled() and post steps correctly on cancellation — #1043
    • Guard SetJobError against missing job-error container — #1050
    • Interpolate job container.volume#1036
    • Kill Unix step process group on cancel to avoid hang — #1025
    • Prevent loss of step log output at end of step — #1028
    • Bound host-environment cleanup and reclaim leaked scratch dirs — #1024
    • Do not update cached actions with stale origin URL — #1014

    Build & docs

    • Cover Windows Go files in build — #1052
    • Improve cache documentation — #1034
    • Update docker-images docs — #1020

    Dependencies

    • Update github.com/moby/moby/client to v0.5.0 — #1049
    • Update github.com/docker/cli to v29.6.0 — #1045
    • Update docker docker tag to v29.6.0 — #1044
    • Update actions/checkout action to v7 — #1042
    • Update go.etcd.io/bbolt to v1.5.0 — #1040
    • Update golang.org/x/term to v0.44.0 — #1031
    • Update alpine docker tag to v3.24 — #1030
    • Update golang.org/x/crypto to v0.52.0 — #1027
    • Update docker docker tag to v29.5.3 — #1021
    • Update golang.org/x/sys to v0.46.0 — #1019
    • Update github.com/docker/cli to v29.5.3 — #1018
    • Update github.com/opencontainers/selinux to v1.15.1 — #1017
    • Update golang.org/x/sys to v0.45.0 — #1012
    • Update code.gitea.io/actions-proto-go to v0.5.0 — #1009

    Full changelog: https://gitea.com/gitea/runner/compare/v1.0.8...v2.0.0

    Downloads