Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added aix_nimclient module #50760

Closed
wants to merge 56 commits into from
Closed

added aix_nimclient module #50760

wants to merge 56 commits into from

Conversation

molekuul
Copy link
Contributor

@molekuul molekuul commented Jan 10, 2019

SUMMARY

This new module is ment for AIX. It installs software at a nimclient using nimclient command and removes software using local commands. This module also updates ALL to latest version, and ia able to issues nimclient action on the nimclient like reset or deallocate

ISSUE TYPE
  • New Module Pull Request
COMPONENT NAME

aix_nimclient

ADDITIONAL INFORMATION

Examples:

- name: install latest version of OpenGL.OpenGL_X.rte.soft from lpp_source lppsource_aix6109-06
  aix_nimclient:
    name:
      - OpenGL.OpenGL_X.rte.soft
    lpp_source: lppsource_aix6109-06

- name: install latest version of OpenGL.OpenGL_X.rte.soft from lpp_source lppsource_aix6109-06 and apply only
  aix_nimclient:
    name:
      - OpenGL.OpenGL_X.rte.soft
    lpp_source: lppsource_aix6109-06
    commit: False

- name: install version 6.1.9.30 of OpenGL.OpenGL_X.rte.soft from lpp_source lppsource_aix6109-06
  aix_nimclient:
    name:
      - OpenGL.OpenGL_X.rte.soft 6.1.9.30
    lpp_source: lppsource_aix6109-06

- name: remove fileset OpenGL.OpenGL_X.rte.soft
  aix_nimclient:
    name:
      - OpenGL.OpenGL_X.rte.soft
    state: absent

- name: commit fileset OpenGL.OpenGL_X.rte.soft
  aix_nimclient:
    name:
      - OpenGL.OpenGL_X.rte.soft
    state: commit

# install all filesets to latest level f.i. install a TL or ML
- name: update all filesets to latest level from lpp_source lppsource_aix6109-06
  aix_nimclient:
    name:
      - update_all
    lpp_source: lppsource_aix6109-06

- name: allocate spot and lpp_source to the nimclient
  aix_nimclient:
    lpp_source: lppsource_aix6109-06
    spot: spot_aix6109-06
    state: allocate

- name: deallocate all resources from the nimclient
  aix_nimclient:
    state: deallocate

- name: reset the nimclient
  aix_nimclient:
    state: reset

@ansibot
Copy link
Contributor

ansibot commented Jan 10, 2019

@ansibot ansibot added affects_2.8 This issue/PR affects Ansible v2.8 aix AIX community community_review In order to be merged, this PR must follow the community review workflow. module This issue/PR relates to a module. needs_triage Needs a first human triage before being processed. new_module This PR includes a new module. new_plugin This PR includes a new plugin. support:community This issue/PR relates to code supported by the Ansible community. test This PR relates to tests. labels Jan 10, 2019
@ansibot
Copy link
Contributor

ansibot commented Jan 10, 2019

@AugustusKling @ColOfAbRiX @EvanK @LinusU @Mogztter @MorrisA @abulimov @adejoux @ahtik @azaghal @bgurney-rh @dankeder @davidobrien1985 @davixx @dirtyharrycallahan @dougluce @dsummersl @flynn1973 @gforster @giovannisciortino @goozbach @groks @haad @hryamzik @indrajitr @jasperla @jbenden @jdauphant @jhoekx @jsumners @jtyr @kairoaraujo @kevensen @lberruti @mattjeffery @matze @mcv21 @mpdehaan @mulby @natefoo @nibalizer @obourdon @ovcharenko @pilou- @pmarkham @pyykkis @rhaido @risaacson @ryan_sb @saito-hideki @sebastiendarocha @sfromm @srvg @tacatac @tdtrask @tmshn @xen0l

As a maintainer of a module in the same namespace this new module has been submitted to, your vote counts for shipits. Please review this module and add shipit if you would like to see it merged.

click here for bot help

Copy link
Contributor

@dagwieers dagwieers left a comment

Choose a reason for hiding this comment

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

Trying to make multiline edits with the Github suggestion mechanism was rather painful :-(

These are mostly cosmetic changes at this time. Will do second review of the code after this has been accepted.

@ansibot ansibot added needs_revision This PR fails CI tests or a maintainer has requested a review/revision of the PR. and removed community_review In order to be merged, this PR must follow the community review workflow. needs_triage Needs a first human triage before being processed. labels Jan 10, 2019
@ansibot ansibot added needs_ci This PR requires CI testing to be performed. Please close and re-open this PR to trigger CI. stale_ci This PR has been tested by CI more than one week ago. Close and re-open this PR to get it retested. labels Jan 11, 2019
@ansibot

This comment has been minimized.

@ansibot ansibot added needs_rebase https://docs.ansible.com/ansible/devel/dev_guide/developing_rebasing.html and removed needs_ci This PR requires CI testing to be performed. Please close and re-open this PR to trigger CI. labels Jan 11, 2019
@molekuul
Copy link
Contributor Author

Well that was painfull..... this tool isn't just not made for these kind of small adjustments.
I don't know if all are correct now. I will run tests at my own system, shippable will take some time to process all 50+ commits :-)

kind regards,

Joris Weijters

@dagwieers
Copy link
Contributor

bot_skip

@molekuul
Copy link
Contributor Author

@dagwieers

I did look at all proposed changes, and included then into the module however the status is still Changes requested. What else has to be done to get this module in Ansible?

Kind regards,

Joris Weijters

@dagwieers

This comment has been minimized.

@dagwieers dagwieers dismissed their stale review January 19, 2019 14:36

Outdated

@dagwieers dagwieers requested a review from bcoca January 19, 2019 14:37
@dagwieers

This comment has been minimized.

@molekuul
Copy link
Contributor Author

NIM stands for Network Install Manager. It is meant to install AIX by the network.
At a NIM server you define the LPP-source. This is a repository of filesets containing LPP and RPM packages The LPP packages are the traditional AIX packages, the RPM packages are the Linux packages ported to AIX,

From this LPP-source you install AIX. Multiple LPP_sources can exist.
Installing a AIX server starts with configuring the nimclient at the NIM-Server, and install it.
Compared to Linux you could say: The NIM-Server is like a Satellite server, and the nimclient is the Linux instance where the nimclient command is like the yum command.

How to patch a AIX server which is a nimclient:
The system manager of the NIM-Server updates the software repositories with the patches.
Now there are 2 ways to install these patches at the nimclient:

  • push from the NIM-Server
  • pull from the nimclient

pushing the patches, means a central management of the clients, and so access to the NIM-Server.
pulling means the owner of the nimclient can patch "his AIX server" without access to the NIM-Server.

In traditional aix system managemt, there is a central team managing the IBM Power hardware, VIO-Server and NIM-Server and nimclients.
In the cloud, the nimclients are owned by the consumer, So pulling patches is the prefered way.
This module is for installing AIX software by pulling

There is a little overlap with the installp module: The "nimclient" command can not remove or commit software. However to have this functionality, in the nimclient module this is done by the installp command.
The installp command is a command to install, update, commit and remove local accessible software packages , if compared to Linux, see it as the rpm command ( however only local packages, no remote http support)

The aixoss packages are written for defining and managing the NIM-Server, and pushing patches to VIO-Servers. A VIO-Server is a special type of server, Virtual I/O Server. This server is used for connecting virtual devices to physical devices. If compared to VMWare, it's like the ESX layer, but it's not the same.

Kind regards,

Joris Weijters

@dagwieers dagwieers removed the test This PR relates to tests. label Feb 4, 2019
Copy link
Contributor

@dagwieers dagwieers left a comment

Choose a reason for hiding this comment

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

LGTM, although this module needs to be reviewed and tested by AIX users.
(We could also benefit from having integration tests)

@flynn1973
Copy link

ready_for_review

@flynn1973
Copy link

folks, please review to get it merged before collections makes things even more complicated.

@ansibot
Copy link
Contributor

ansibot commented Mar 28, 2020

@molekuul Your branch does not contain a shippable.yml file. Please rebase your branch to trigger running of current tests.

click here for bot help

@ansibot ansibot added has_issue needs_repo This PR no longer has an associated branch as it was removed by the submitter. needs_shippable This PR lacks a shippable.yml in its tree. Please rebase your branch to include the latest CI tests. labels Mar 28, 2020
@Akasurde
Copy link
Member

Hi @molekuul, Thank you very much for your interest in Ansible. This plugin/module is no longer maintained in this repository and has been migrated to https://github.com/ansible-collections/community.general

If you have further questions please stop by IRC or the mailing list:

* IRC: #ansible on irc.freenode.net
* mailing list: https://groups.google.com/forum/#!forum/ansible-project

needs_info

@Akasurde Akasurde closed this Aug 20, 2020
@ansible ansible locked as resolved and limited conversation to collaborators Aug 20, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
affects_2.8 This issue/PR affects Ansible v2.8 aix AIX community has_issue module This issue/PR relates to a module. needs_rebase https://docs.ansible.com/ansible/devel/dev_guide/developing_rebasing.html needs_repo This PR no longer has an associated branch as it was removed by the submitter. needs_revision This PR fails CI tests or a maintainer has requested a review/revision of the PR. needs_shippable This PR lacks a shippable.yml in its tree. Please rebase your branch to include the latest CI tests. new_module This PR includes a new module. new_plugin This PR includes a new plugin. stale_ci This PR has been tested by CI more than one week ago. Close and re-open this PR to get it retested. support:community This issue/PR relates to code supported by the Ansible community.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants