ã¿ãªããä»æ¥ãã¡ãªã¼ã¯ãªã¹ãã¹ï½¡æ¨æ¥ã«å¼ãç¶ãRed Hatã®ããã¨ãã§ã。Ansible Advent Calendar 2024ã®ï½¤12æ5æ¥ã®è¨äºããå±ããã¾ã。
ansible.posix collection version 2.0.0 ããªãªã¼ã¹ãã¾ãã
åã¯ãµãã¼ããã¼ã ã«æå±ãã¦ãã¾ãã、表ã®ä»äºã®é害解æã®åéã«ã¢ããã¹ããªã¼ã ã®ã¡ã³ããã®ä»äºããã¦ãã¾ã。ããããå¢éã®äººãRed Hatã§ã¯ããè¦ããã¾ã。
Red Hatã¯ï½¤ä¸è¬ç¤¾ä¼çã«ã¯è¬ã«å ã¾ãã¦ããã¨ã¯ãããªã¼ãã³ã½ã¼ã¹ã½ããã¦ã§ã¢ã«ã³ããã¼ã§ããã、æå±ãã¦ããé¨éã、就ãã¦ããè·ç¨®ã«ããããã、ã¢ããã¹ããªã¼ã ã¸ã®è²¢ç®ãèªç±ã¨ãã¦èªãããã¦ãã¾ã。æ¥å¸¸æ¥åã¨ã¢ããã¹ããªã¼ã ã®ä»äºãã©ã®ããã«ãã©ã³ã¹ãããã¨ããç¹ã«ã¤ãã¦ã¯ï½¤ããç¨åº¦ã¯å½äººã«ã¾ãããã¦ããã¨ã¯ãã、ã¡ããã¨è¡¨ã®ä»äºãããªãã¨ããã¾ãã。åã®å ´åã¯ï½¤è¡¨ã®ä»äºãAnsible Automation Platformã®é害解æ、ã¢ããã¹ããªã¼ã ã®ã¡ã³ããã®ã»ããè£ã®ä»äºã¨ããæãã§ã。
ãããªè£ã®ä»äºã§ï½¤ããã»ã©(2024å¹´12æ5æ¥)、Ansible Collectionã®1ã¤ã§ãã、ansible.posixã®ãã¼ã¸ã§ã³2.0.0ããªãªã¼ã¹ãã¾ãã。
ä»æ¥ã¯ï½¤æ¨æ¥ã®æ稿ã§ï½¤ã¢ããã¹ãã¼ã ã¸ã®ã³ã¼ãã³ãããã«ãã£ã¬ã³ã¸ãããã¨æã£ã¦ãããããªãã®ããã«ï½¤ç¥ã£ã¦ããã¦ããã£ã¨æã¯ããªãAnsible Collectionã®ãªãªã¼ã¹ããã»ã¹ã«ã¤ãã¦ãç´¹ä»ãããã¨æãã¾ã。
Ansible Collectionã®ãªãªã¼ã¹ã¿ã¤ãã³ã°
Ansible Collectionã®ãªãªã¼ã¹ã¿ã¤ãã³ã°ã¯ï½¤åºæ¬çã«ã¡ã³ããã®å¤æã«ã¾ãããã¦ãã¾ã。Ansible Coreã¨ãªãã¸ããªãåããããã®ã、ã¡ã³ããã®é½åã§èªç±ã«ãªãªã¼ã¹ã§ããããã«ãããã¨ããé æ ®ããã§ã。ãã®ãããªèæ¯ãã、æ°å¤ãããAnsible Collectionã«ã¯ï½¤ããããç¬èªã®ãªãªã¼ã¹ããªã·ã¼ãããã¾ã。ããããå ã¯ï½¤ansible.posixã³ã¬ã¯ã·ã§ã³ã®å ´åã®ã話ã§ã。
ansible.posixã³ã¬ã¯ã·ã§ã³ã®å ´åã¯ï½¤ç¾ç¶ã ã¨å¹´ã«1åãåå¹´ã«ã«1åã¨ãã£ãå®æçãªãªãªã¼ã¹ã¯è¡ã£ã¦ããã、ããæãã«ãã¼ã¸ãããPull Requestãæºã¾ã£ã¦ããã¿ã¤ãã³ã°ã§ï½¤ã¢ã¯ãã£ããªã¡ã³ããéã§è©±ããã£ã¦ãªãªã¼ã¹ææã決ãã¦ãã¾ã。決å®ããã、ãªãªã¼ã¹æ¥ã¨ãã¼ã¸ã§ã³ãå«ãã¦ä»¥ä¸ã®Issueã§åºãä¼ãããã¾ã。
å¸ã«ï½¤ä¸é©åãªãã¼ã¸ã§ãã³ã°ãªã©ã®çç±ã§ï½¤Ansible Communityããä¿®æ£ãããªãªã¼ã¹ãæ±ããããå ´åãããã¾ã。ãã®å ´åã¯ç·æ¥ãªãªã¼ã¹ã¨ãªãã¾ã。åã¯2åã»ã©çµé¨ãã¾ãã。
ãã¼ã¸ã§ãã³ã°
ãã¼ã¸ã§ã³ã«ã¤ãã¦ã¯ï½¤æã¯ãã³ã¤ãã§æ±ºãã¦ãã(å½æããã¼ã¸ã§ãã³ã°ã®çç±ã¯ãããªãã«ããã¾ãã)ã®ã§ãã、ç¾å¨ã§ã¯ä»¥ä¸ã®ã¬ã¤ãã©ã¤ã³ã«å¾ã£ã¦ãã¾ã。
ããã«å¾ããªãç°ç«¯ãªAnsible Collectionã¯ï½¤Ansible community packageããé¤å¤ããã¦ï½¤åºç¾©ã®Ansible(â»1)ã«ã¯åé²ãããªããªãã¾ã。ã©ã®ä¸çã§ãç°ç«¯å ã¯ä½ã¿ã«ããä¸ã®ä¸ã§ãã、æçµçã«ãã®ãããªã¬ã¤ãã©ã¤ã³ããããã¨ã§ï½¤ã¡ã³ããã®ä»äºãããããããªã、ã¾ãAnsible Communityã«ããã¬ããã³ã¹ãå¹ããã¨ã§å質ã®é«ããªãªã¼ã¹ã«ç¹ãã、æçµçã«å©ç¨è ããããã¼ã«ãªã£ã¦ããããã«æãã¾ã。
ãã¾ï½¤Ansible Collectionã使ã£ã¦ãã¦ãã¾ã幸ããããªãã²ã¨ãããã、ãã®ã¬ã¤ãã©ã¤ã³ããªããã°ãã£ã¨å¹¸ããããªãã£ãã¯ãã§ã。ããæ¬å½ã«ï½¡
â»1:ç義ã®Ansibleã¯Ansible Coreã§ã
ãªãªã¼ã¹åæ¥ã¾ã§ã®æºå
ãªãªã¼ã¹æ¥ã¨ãã¼ã¸ã§ã³ã決ã¾ãã°ï½¤ãã¨ã¯ããã«ãããã£ã¦ããã»ã¹ãæ·¡ã ã¨é²ãããã¨ã«ãªãã¾ã。
- ã¡ã¸ã£ã¼ãªãªã¼ã¹ã®å ´å: æ¨æ¥ã®è¨äºã§ç´¹ä»ããbreaking_changesã¨removed_featuresãã§ããã ãè©°ãè¾¼ã¾ãªãã¨ããã¾ãããã、ãã¼ã¸åã®Pull Requestã®ãªã¼ãã¼ã«å¿ ç¨ãªä¿®æ£ããé¡ãããã、ã¬ãã¥ã¢ã®change requestã«åå¿ããªããã©éè¦ãªPRãã¡ã³ãããå¼·å¶çã«ä¿®æ£ãã¦ãã¼ã¸ããããã¦é²ãã¦ããã¾ã。éã«åããªããã°ï½¤æ¬¡ã®ã¡ã¸ã£ã¼ãã¼ã¸ã§ã³ã¢ããã¾ã§ç©ã¿æ®ããã¨ã«ãªãããã§ã。
- ãã¤ãã¼ãªãªã¼ã¹ã®å ´å: ãã¤ãã¼ãã¼ã¸ã§ã³ã¢ããã¯ããããã¨æºåã§ãã¾ã。ãã»ã©éè¦ã ã£ããæ·±å»ã ã£ããããbugfixesãminor_changes以å¤ã¯ç©ã¿æ®ãã¦ã、次åã®ãã¤ãã¼ãªãªã¼ã¹ã¯ãã¤ã§ãã§ãã¾ã。
ãªãªã¼ã¹åæ¥
ãªãªã¼ã¹ãæ å½ããã¡ã³ããã¯ï½¤ä»¥ä¸ã®æµãã§ãªãªã¼ã¹ã³ããããä½æãã¾ã。以ä¸ã¯åã®ä½æ¥æé ã§ãã、ãã£ã¨ãã£ã¨ãã£ãããæ¹æ³ãããã¯ã。
1. changelog fragmentsããCHANGELOG.rstãçæããããã®antsibull-changelogã³ãã³ããã¤ã³ã¹ãã¼ã«ãã
antsibull-changelogã¯changelog fragmentsããCHANGELOGãçæãã¦ãããã¤ã«ãããã¤ã§ã。
% pip install --user antsibull-changelog
2. ãã¼ã«ã«ã«ãªãªã¼ã¹ç¨ã®Pull Requestãä½æããããã®ä½æ¥ç¨ãã©ã³ããä½æãã
ã¢ããã¹ããªã¼ã ã®ansible.posixãforkãã¦ãã§ãã¯ã¢ã¦ãã、ãªãªã¼ã¹ç¨ã®ãã¼ã«ã«ãã©ã³ã(release_2.0.0)ãä½ãã¾ã。
% git checkout -b release_2.0.0
3. galaxy.ymlã®versionããªãªã¼ã¹ãã¼ã¸ã§ã³ã«å¤æ´ãã
Ansible Collectionã®ãã¼ã¸ã§ã³ã¯ï½¤ãªãã¸ããªã®ãããã¬ãã«ãã£ã¬ã¯ããªã«ããgalaxy.ymlã§å®ç¾©ããã¦ãã¾ã。ããããªãªã¼ã¹ãããã¼ã¸ã§ã³ã«å¤æ´ãã¾ã。
--- namespace: ansible name: posix version: 2.0.0 # <= ãã readme: README.md authors: - Ansible (github.com/ansible) description: Ansible Collection targeting POSIX and POSIX-ish platforms. license_file: COPYING tags: [posix, networking, shell, unix] dependencies: {} repository: https://github.com/ansible-collections/ansible.posix documentation: https://docs.ansible.com/ansible/latest/collections/ansible/posix/ homepage: https://github.com/ansible-collections/ansible.posix issues: https://github.com/ansible-collections/ansible.posix
4. ãªãªã¼ã¹ã³ãããç¨ã®changelog fragmentãã¡ã¤ã«ãä½æãã
antsibull-changelogã³ãã³ãã§çæãããCHANGELOG.rstã¨changelogs/changelog.yamlã«ï½¤ãããããªãªã¼ã¹ãã2.0.0ã®ã¨ã³ããªã追å ããããã«ï½¤fragmentãã¡ã¤ã«(changelogs/fragments/2.0.0.yml)ãä½æãã¾ã。å 容ã¯ä»¥ä¸ã®ãããªæãã®ãªãªã¼ã¹ã®æ¦è¦èª¬ææã§ã。
release_summary: |- This is the major release of the ``ansible.posix`` collection. This changelog contains all changes to the modules and plugins in this collection that have been added after the release of ``ansible.posix`` 1.6.2
5. CHANGELOGãçæãã
antsibull-changelogã³ãã³ããå®è¡ãã¾ã。
% antsibull-changelog release --reload-plugins
ãã®ã³ãã³ãã¯ï½¤changelogs/fragments/ãã£ã¬ã¯ããªé ä¸ã«ããå ¨ã¦ã®fragmentãã¡ã¤ã«ãåé¤ãã¦ï½¤ä»¥ä¸ã®2ã¤ã®ãã¡ã¤ã«ãçæãã¾ã。
- CHANGELOG.rst
- changelogs/changelog.yaml
ããã、ãã®ãªãªã¼ã¹ã®CHANGELOGã¨ãªã£ã¦ï½¤ã¿ãªããã«è¦ããå½¢ã«ãªãããã§ã。
CHANGELOGã®çææã«changelogs/fragments/ãã£ã¬ã¯ããªä»¥ä¸ã«ããfragmentãã¡ã¤ã«ç¾¤ãåé¤ãã¦ãããã®ã§ï½¤ãªãã¸ããªã¨ãã¦ã¯changelog fragmentsã綺éºãªç¶æ ã§æ¬¡ã®ãªãªã¼ã¹ãè¿ãããã¾ã(â»2)。ãªããªã便å©ã§ããã§ãã¦ã。
â»2:ãã®ã¯ãªã¼ãã³ã°ã®è¨å®ã¯changelogs/config.ymlã§keep_fragments: falseã¨ãªã£ã¦ããã°æå¹åããã¦ãã¾ã。
6. ãªãªã¼ã¹ã³ããããä½ã£ã¦push!
ãªãªã¼ã¹ã³ããããä½ã£ã¦ï½¤Upstreamããforkããoriginã«pushãã¾ã。
% git remote -v origin [email protected]:saito-hideki/ansible.posix.git (fetch) origin [email protected]:saito-hideki/ansible.posix.git (push) upstream [email protected]:ansible-collections/ansible.posix.git (fetch) upstream [email protected]:ansible-collections/ansible.posix.git (push) % git commit -a -m "Release 2.0.0 commit" --signoff % git push origin release_2.0.0
7. ãªãªã¼ã¹ã³ãããã®Pull Requestãä½æãã
pushããã、Draft Pull Requestãä½ã£ã¦ï½¤èªåãã¹ããã²ã¨åããã¦æåããã®ãå¾ ã¡ã¾ã。ãã®å¾ ã¡æéã¯çµæ§æ°æã¡çã«è½ã¡çããªã。
ç¡äºã«èªåãã¹ããéã£ãã、Ready for reviewããããã¨ãã¦ï½¤å以å¤ã®ã¢ã¯ãã£ããªã¡ã³ãããæå®ãã¦Review Requestãéãã¾ã。2人以ä¸ã®Approveãè²°ããããã¼ã¸ããã»ã¹ã«å ¥ãã¾ã(俺çã«ã¼ã«)。
8. ãªãªã¼ã¹ã³ãããã®ãã¼ã¸
ansible.posixã³ã¬ã¯ã·ã§ã³ã®ãã¼ã¸ããã»ã¹ã¯ï½¤ç¹ã«ããããããã¨ã¯ãªã、ã¡ã³ãããmergeit
ã©ãã«ãPull Requestã«ä»ä¸ãããã¨ã§ï½¤botãçºåãã¦ãã¼ã¸ããã»ã¹ãå®è¡ãã¦ããã¾ã。ããã§ãèªåãã¹ããèµ°ãã¾ã。ãããä¸çªæ°æã¡çã«é·ã。ã¨ãã©ãã³ã±ã¦çµ¶æãã¾ã。
9. Upstreamå´ã«tagãåã
ãã¼ã¸ããããUpstreamå´ã«tagãåãã¾ã。å®äºã¾ã§ããå°ã。ããããå ã¯ï½¤ããçä¸å°½ã«ã³ã±ãã¨ããã¯ãªãã®ã§æ°æ¥½ãªä½æ¥ã§ã。
$ git checkout main $ git pull $ git tag -a 2.0.0 -m "Release 2.0.0" $ git push upstream 2.0.0
10. ãªãªã¼ã¹ãä½æãã
ãªãªã¼ã¹ã¢ã¼ã«ã¤ããGitHubã®ããã·ã¥ãã¼ãããä½æãã¾ã。
Press `Draft a new release` Release title: Release 2.0.0 Describe for release: ~~~ ansible.posix version 2.0.0: * [CHANGELOG](https://github.com/ansible-collections/ansible.posix/blob/2.0.0/CHANGELOG.rst) for all changes ~~~
ãªãªã¼ã¹ãä½æããæç¹ã§ï½¤Community Galaxyã«ãªãªã¼ã¹ãåæ ããã¾ã。ãã®æç¹ãã、ä¸è¬ã¦ã¼ã¶ãansible-galaxy collection install ansible.posix
ã³ãã³ãã§ã¤ã³ã¹ãã¼ã«ã§ããããã«ãªãã¾ã。
ansible.posixã¯Red Hatãå ¬å¼ã«ãµãã¼ããã¦ããã³ã¬ã¯ã·ã§ã³ã§ããã、Red Hat Hybrid Cloud Consoleã§ãã¢ã¼ã«ã¤ããæä¾ããã¦ãã¾ã。ãã¡ãã®åæ æã«ã¯å³æ ¼ãªãã¹ããè¡ãããã®ã§ï½¤å³åæ ã¨ã¯ãªãã¾ãã。é·ãã¦æ°æ¥ãããã¾ã。Red Hatããã¡ããã¨ãã¦ã。
11. Ansible Communityã«ãªãªã¼ã¹ã¢ãã¦ã³ã¹
ããã¡ãã£ã¨ã 。Matrixã«ãã、Ansible Communityã®Ansible Socialãã£ã³ãã«ã§ï½¤newsbotå®ã¦ã«ãªãªã¼ã¹ãä¼ãã¾ã。
@newsbot: ansible.posix 2.0.0 has been released. This release includes two break fixes for options in the firewalld module. Additionally, please note that the Skippy plugin has been removed. You can see more details in changelog.
ããã§ï½¤Ansible Communityããã®news letterã«ãªãªã¼ã¹ãæ²è¼ããã¾ã。
12. ãªãªã¼ã¹å®äº!
ansible.posixãªãã¸ããªã®Release plan #149ã§ããªãªã¼ã¹ãã¢ãã¦ã³ã¹ãã¾ã。
ãªãªã¼ã¹å®äº! ä¸çã®ã©ããã«ããAndresson007ã¨maxamillionã®2人ã«æè¬ï½¡ãã¤ãã¬ãã¥ã¼ãããã¨ã! :)
ã¾ã¨ã
ãããåãã¡ã³ããã«ãªã£ã¦ãã、æèè ã«èãããããã¥ã¡ã³ããããéããAnsible Collectionã®ãªãªã¼ã¹ããã»ã¹ã®æµãã§ã。
ã¡ã³ããã¬ã¤ãã¿ãããªï½¤ã¾ã¨ã¾ã£ãããã¥ã¡ã³ããããã¨æã£ã¦ããã ãã©ãªã.....ãªã£ã¦ã¿ãã、ãã®ä¸ã«ãããªé½åã®è¯ããã®ã¯ãªãã£ãã£ã¦ãããããã話ã§ãã。community.generalã¯ï½¤ãã£ã¨ãã£ãããæ¹æ³ãæã£ã¦ããããã¨é¢¨ã®åã«èããã®ã§ï½¤ä»åº¦èãã«è¡ã£ã¦ã¿ããã¨æãã¾ã。
ããã¥ã¡ã³ãããªããã°ï½¤èªåã§ä½ãã°ããã£ã¦ããã®ã¯ï½¤æ¨æ¥ã®ã話ã®ï½¤ãã£ãèªåã§ã³ã¼ããä¿®æ£ãã¡ãã£ãã»ããéãã£ã¦ããã®ã¨éãã¾ãã。ããéããªãããªï½¡ãã£ãã»ããããããªãã£ã±ã。
ããã§ã¯ã¿ãªãã、ä»æ¥ãHappy Automation!