Skip to content

[JENKINS-35451] Change name of "slave.jar" to "agent.jar" #17228

Closed

Description

@jenkins-infra-bot

Found when launching a jnlp agent from command line:
"java -jar slave.jar -jnlpUrl ..."

The name of this jar should match agreed naming guidelines.


Originally reported by bitwiseman, imported from: Change name of "slave.jar" to "agent.jar"
  • status: Resolved
  • priority: Major
  • component(s): core
  • label(s): terminology
  • resolution: Fixed
  • resolved: 2017-09-13T05:10:10+00:00
  • votes: 0
  • watchers: 6
  • imported: 2025-11-24
Raw content of original issue

Found when launching a jnlp agent from command line: "java -jar slave.jar -jnlpUrl ..."

The name of this jar should match agreed naming guidelines.

  • environment: Jenkins 2.6

Activity

  1. jenkins-infra-bot commented on Jun 9, 2016

    @jenkins-infra-bot
    Author
    oleg_nenashev:
    • Original comment link
    • Raw content of original comment:

      It's not so easy, because many automation flows download slave.jar, windows-slave.exe and other such files from Jenkins. We can only add new endpoints and fix UIs, but the previous entries must be retained

    It's not so easy, because many automation flows download slave.jar, windows-slave.exe and other such files from Jenkins. We can only add new endpoints and fix UIs, but the previous entries must be retained

  2. jenkins-infra-bot commented on Jun 9, 2016

    @jenkins-infra-bot
    Author
    bitwiseman:
    • Original comment link
    • Raw content of original comment:

      Is eternal backward compatibility a core requirement? Can we create a plan for phasing these out? Provide both for some time period and then remove the old.

      File names in particular heavily influence the terms people use when talking about the product and features. Keeping "slave" in the file names essentially defeats any effort to remove the term "slave" from association with our product. As part of this transition, we're seeing people add the term "agent" but not remove the term "slave" from descriptions. "I'm have a problem with my jenkins slave agent." To get people to drop "slave", I think we need to not show them "slave-blah" every time they start an agent.

    Is eternal backward compatibility a core requirement? Can we create a plan for phasing these out? Provide both for some time period and then remove the old.

    File names in particular heavily influence the terms people use when talking about the product and features. Keeping "slave" in the file names essentially defeats any effort to remove the term "slave" from association with our product. As part of this transition, we're seeing people add the term "agent" but not remove the term "slave" from descriptions. "I'm have a problem with my jenkins slave agent." To get people to drop "slave", I think we need to not show them "slave-blah" every time they start an agent.

  3. jenkins-infra-bot commented on Jun 9, 2016

    @jenkins-infra-bot
    Author
    oleg_nenashev:
    • Original comment link
    • Raw content of original comment:

      > Can we create a plan for phasing these out? Provide both for some time period and then remove the old.

      We cannot, because there is no API deprecation policy/engine. As a remoting maintainer, I'm strongly -1 on removing original links within any visible timeframe. Too much fixing efforts and regressions due to just a renaming

    > Can we create a plan for phasing these out? Provide both for some time period and then remove the old.

    We cannot, because there is no API deprecation policy/engine.
    As a remoting maintainer, I'm strongly -1 on removing original links within any visible timeframe. Too much fixing efforts and regressions due to just a renaming

  4. jenkins-infra-bot commented on Jun 9, 2016

    @jenkins-infra-bot
    Author
    bitwiseman:
    • Original comment link
    • Raw content of original comment:

      The originally agreement was that the term slave would be removed from the UI, but left in the APIs to avoid breaking compatibility both for plugins and customer tools/scripts.   The problem is that line of where the UI stops and the API begins is a somewhat fluid when your users are engineers.

      I understand that filenames and urls are effectively part of the API and so changing them is problematic and could be considered out of scope.   But filenames and urls are also part of the end-user experience (the UI) for every Jenkins user. And the files and urls related to adding an agent are some of the first and most commonly used.

    The originally agreement was that the term slave would be removed from the UI, but left in the APIs to avoid breaking compatibility both for plugins and customer tools/scripts.   The problem is that line of where the UI stops and the API begins is a somewhat fluid when your users are engineers.

    I understand that filenames and urls are effectively part of the API and so changing them is problematic and could be considered out of scope.   But filenames and urls are also part of the end-user experience (the UI) for every Jenkins user. And the files and urls related to adding an agent are some of the first and most commonly used.

  5. jenkins-infra-bot commented on Apr 12, 2017

    @jenkins-infra-bot
    Author
    jamesdumay:
    • Original comment link
    • Raw content of original comment:

      Surely we can do a hard redirect when someone is asking for /slave.jar?

    Surely we can do a hard redirect when someone is asking for /slave.jar?

  6. jenkins-infra-bot commented on Sep 7, 2017

    @jenkins-infra-bot
    Author
    ndeloof:

    see #3004 as a minimal backward compatible fix. slave.jar still supported to ensure no regression, but document use of agent.jar

  7. jenkins-infra-bot commented on Sep 7, 2017

    @jenkins-infra-bot
    Author
    bitwiseman:

    ndeloof Thanks!

  8. jenkins-infra-bot commented on Sep 9, 2017

    @jenkins-infra-bot
    Author
    scm_issue_link:
    • Original comment link
    • Raw content of original comment:

      Code changed in jenkins User: Oleg Nenashev Path: core/src/main/java/hudson/FilePath.java core/src/main/java/hudson/Launcher.java core/src/main/java/hudson/model/Slave.java core/src/main/java/hudson/slaves/Channels.java core/src/main/java/hudson/slaves/CommandLauncher.java core/src/main/java/hudson/slaves/SlaveComputer.java core/src/main/resources/hudson/slaves/CommandLauncher/help-command.html core/src/main/resources/hudson/slaves/CommandLauncher/help-command_bg.html core/src/main/resources/hudson/slaves/CommandLauncher/help-command_fr.html core/src/main/resources/hudson/slaves/CommandLauncher/help-command_ja.html core/src/main/resources/hudson/slaves/CommandLauncher/help-command_ru.html core/src/main/resources/hudson/slaves/JNLPLauncher/main.jelly core/src/main/resources/windows-service/jenkins-slave.xml test/src/test/java/hudson/model/Slave2Test.java test/src/test/resources/hudson/model/update-center.json http://jenkins-ci.org/commit/jenkins/0a2d6ca2bad601c2ad80502e0f4de861e93c6f2c Log: Merge pull request #3004 from ndeloof/agent

      JENKINS-35451 - prefer ‘agent.jar’ over ‘slave.jar’

      Compare: 7f093d3...0a2d6ca

    Code changed in jenkins
    User: Oleg Nenashev
    Path:
    core/src/main/java/hudson/FilePath.java
    core/src/main/java/hudson/Launcher.java
    core/src/main/java/hudson/model/Slave.java
    core/src/main/java/hudson/slaves/Channels.java
    core/src/main/java/hudson/slaves/CommandLauncher.java
    core/src/main/java/hudson/slaves/SlaveComputer.java
    core/src/main/resources/hudson/slaves/CommandLauncher/help-command.html
    core/src/main/resources/hudson/slaves/CommandLauncher/help-command_bg.html
    core/src/main/resources/hudson/slaves/CommandLauncher/help-command_fr.html
    core/src/main/resources/hudson/slaves/CommandLauncher/help-command_ja.html
    core/src/main/resources/hudson/slaves/CommandLauncher/help-command_ru.html
    core/src/main/resources/hudson/slaves/JNLPLauncher/main.jelly
    core/src/main/resources/windows-service/jenkins-slave.xml
    test/src/test/java/hudson/model/Slave2Test.java
    test/src/test/resources/hudson/model/update-center.json
    http://jenkins-ci.org/commit/jenkins/0a2d6ca2bad601c2ad80502e0f4de861e93c6f2c
    Log:
    Merge pull request #3004 from ndeloof/agent

    JENKINS-35451 - prefer ‘agent.jar’ over ‘slave.jar’

    Compare: 7f093d3...0a2d6ca

  9. jenkins-infra-bot commented on Sep 13, 2017

    @jenkins-infra-bot
    Author
    danielbeck:
    • Original comment link
    • Raw content of original comment:

      Fixed in 2.77.

      Someone reported this issue as a problem on the changelog. Please indicate in a comment what the encountered problem is, nor file a separate issue for that, and link it here and/or from the changelog. Thanks!

    Fixed in 2.77.

    Someone reported this issue as a problem on the changelog. Please indicate in a comment what the encountered problem is, nor file a separate issue for that, and link it here and/or from the changelog. Thanks!

  10. jenkins-infra-bot commented on Nov 24, 2025

    @jenkins-infra-bot
    Author

    [Original is_duplicated_by from Jira: JENKINS-43528]

  11. jenkins-infra-bot commented on Nov 24, 2025

    @jenkins-infra-bot
    Author

    [Original relates_to from Jira: JENKINS-35452]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions