Skip to content

Conversation

@ltamaster
Copy link
Contributor

@ltamaster ltamaster commented Dec 11, 2025

This pull request introduces comprehensive functional tests for the Ansible plugin's multi-node authentication feature, ensuring that each node can have its own credentials (password or private key) stored in Rundeck's key storage. It adds new test suites, supporting documentation, and Docker configurations to validate scenarios including password escaping, per-node authentication, and compatibility with current Rundeck versions.

Key changes include:

1. Functional Test Coverage for Multi-Node Authentication

  • Added MultiNodeAuthSpec.groovy, a Spock test suite that verifies multi-node authentication with different credentials per node (passwords and private keys), password escaping for special characters, and node accessibility. The suite includes helper methods for project setup, key storage, and job execution.

2. Test Documentation and Usage Instructions

  • Introduced a detailed functional-test/README.md explaining prerequisites, Docker/Testcontainers setup, how to run tests, test structure, troubleshooting, and specifics of the multi-node authentication feature.
  • Added a scenario-specific README in docker/ansible-multi-node-auth/README.md describing the test setup, what is being tested, and expected behaviors.

3. Docker and Test Resource Enhancements

  • Updated docker-compose.yml to add three new SSH test nodes (ssh-node-2, ssh-node-3, ssh-node-4) with unique passwords and private key authentication, and mounted the new test scenario directory. [1] [2]
  • Added Ansible configuration (ansible.cfg), inventory (inventory.ini), node definitions (resources.xml), and a test playbook (test-playbook.yml) for the multi-node authentication scenario. [1] [2] [3] [4]

4. Gradle and Test Environment Updates

  • Updated the functional test Gradle task to use Rundeck version 5.18.0 for compatibility testing and added comments about Docker/Testcontainers configuration.

These changes collectively provide robust, automated validation for the Ansible plugin's advanced authentication features, improving confidence in multi-node and mixed-auth scenarios.Generate Inventory with SSH password authentication

@edbaltra edbaltra force-pushed the inventory_with_auth branch from d0a8b7d to 70d64d2 Compare January 6, 2026 13:57
@ltamaster ltamaster added this to the 5.19.0 milestone Jan 14, 2026
@ltamaster ltamaster marked this pull request as ready for review January 14, 2026 22:02
Copilot AI review requested due to automatic review settings January 14, 2026 22:02
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 24 out of 24 changed files in this pull request and generated 8 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

edbaltra and others added 6 commits January 16, 2026 09:39
…ner.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ner.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ner.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ner.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 24 out of 24 changed files in this pull request and generated 6 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

edbaltra and others added 4 commits January 16, 2026 12:40
…i-node-auth/rundeck-ansible-multi-node-auth/jobs/job-multi-node-ping.xml

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ner.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ner.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 24 out of 24 changed files in this pull request and generated 9 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 24 out of 24 changed files in this pull request and generated 5 comments.

Comments suppressed due to low confidence (2)

src/main/groovy/com/rundeck/plugins/ansible/ansible/AnsibleRunnerContextBuilder.java:1

  • Corrected spelling of 'filesystem' to 'file system' (two words is more standard in comments).
/**

src/main/groovy/com/rundeck/plugins/ansible/ansible/AnsibleRunner.java:1

  • Corrected spelling of 'filesystem' to 'file system' (two words is standard in comments).
package com.rundeck.plugins.ansible.ansible;

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

edbaltra and others added 3 commits January 16, 2026 14:44
…uth/README.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@Jesus-Osuna-M Jesus-Osuna-M changed the title Generate Inventory with SSH password authentication RUN-4085 Generate Inventory with SSH password authentication Jan 20, 2026
@Jesus-Osuna-M Jesus-Osuna-M self-requested a review January 20, 2026 18:42
@ltamaster ltamaster merged commit fa1b914 into main Jan 26, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants