Skip to content

ssh-agent & ssh-add is missing from python-semantic-release github action #1376

@jmgate

Description

@jmgate

Question

I've been using python-semantic-release to deploy my open source packages for years now, but recently the jobs started failing because ssh-agent and ssh-add are apparently unavailable. Has something changed, such that I need to install the openssh-client before calling the tool? Or is this something that should be handled within the python-semantic-release GitHub Action?

Configuration

Semantic Release Configuration
[tool.semantic_release]
build_command = "python3 -m pip install poetry && poetry build"
commit_message = """
chore: Release v{version}

Automatically generated by python-semantic-release."""
version_variables = [
    "doc/source/conf.py:version",
    "reverse_argparse/__init__.py:__version__",
]
version_toml = [
    "pyproject.toml:tool.poetry.version",
]


[tool.semantic_release.branches.master]
match = "master"


[tool.semantic_release.changelog]
exclude_commit_patterns = [
    "chore.*deps.*Bump",
    "Merge pull request",
    "ci.*pre-commit.*auto-update",
]


[tool.semantic_release.commit_author]
env = "GIT_COMMIT_AUTHOR"
default = "semantic-release <semantic-release>"


[tool.semantic_release.commit_parser_options]
allowed_tags = [
    "build",
    "chore",
    "ci",
    "docs",
    "feat",
    "fix",
    "minor",
    "patch",
    "perf",
    "refactor",
    "style",
    "test",
]
minor_tags = ["feat", "minor"]
patch_tags = ["fix", "patch", "perf"]

See also my pyproject.toml for fuller details.

Additional context

Here's a failing job from this workflow configuration, which yields

...
 SSH Key pair found, configuring signing...
mkdir: created directory '/github/home/.ssh'
***
4d04b340ba4ac06a205eb7fb725a9c0ad4211a20ae54ba953ab0bf267d0279bf  /github/home/.ssh/signing_key
/usr/local/bin/action-entrypoint: line 159: ssh-agent: command not found
/usr/local/bin/action-entrypoint: line 160: ssh-add: command not found

I tried adding

      - name: Install openssh-client
        run: sudo apt-get update && sudo apt-get install -y openssh-client

right before the python-semantic-release GitHub Action, but that didn't change the behavior.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working properlyreleased

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions