Skip to content

Commit bc6a710

Browse files
Merge pull request #227 from ScaleComputing/update-release-workflow
Update release workflow
2 parents f103c88 + 04c08e3 commit bc6a710

File tree

4 files changed

+29
-11
lines changed

4 files changed

+29
-11
lines changed

.github/ISSUE_TEMPLATE/new-release.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ The new release version is **[VERSION]**
1313

1414
Please complete these steps in order.
1515

16+
- [ ] Update the top-level README.md with links to new modules (run `./docs/helpers/generate_readme_fragment.py`)
1617
- [ ] Update the version number in galaxy.yml e.g. `1.1.1`
1718
- [ ] Update the changelog with `antsibull-changelog` e.g. `antsibull-changelog release --version 1.1.1`
1819
- [ ] Tag the commit with the version number prefixed with 'v' e.g. `v1.1.1`
20+
- [ ] Deploy new documentation using gh-pages - "Deploy static content to Pages"

docs.requirements

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@ Sphinx
22
sphinx-rtd-theme
33
ansible-doc-extractor
44
# antsibull-docs
5+
antsibull-changelog

docs/helpers/generate_readme_fragment.py

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
# URL with uploaded docs/build/html content
2121
DOCS_URL = "https://scalecomputing.github.io/HyperCoreAnsibleCollection"
2222
FQCN = "scale_computing.hypercore"
23+
README_FILE = "README.md"
2324

2425

2526
def list_plugins(module_type):
@@ -93,23 +94,37 @@ def list_roles():
9394
return fragment
9495

9596

96-
def print_fragment(fragment, fragment_name):
97-
print(f"<!--start {fragment_name} list-->")
98-
print(f"<!-- generated by {__file__.strip(os.getcwd()) + 'py'} -->")
99-
print(f"| {fragment_name} | Description |")
100-
print("| --- | --- |")
101-
print(fragment.rstrip("\n"))
102-
print(f"<!--end {fragment_name} list-->")
97+
def update_fragment(fragment, fragment_name):
98+
fragment_no_newline = fragment.rstrip("\n")
99+
header0 = f"<!--start {fragment_name} list-->"
100+
header1 = f"<!--end {fragment_name} list-->"
101+
full_fragment = f"""{header0}
102+
<!-- generated by {__file__.strip(os.getcwd()) + 'py'} -->
103+
| {fragment_name} | Description |
104+
| --- | --- |
105+
{fragment_no_newline}
106+
{header1}"""
107+
# print(full_fragment)
108+
with open(README_FILE, "r") as ff:
109+
content = ff.read()
110+
pos0 = content.find(header0)
111+
pos1 = content.find(header1) + len(header1)
112+
assert pos0 >= 0
113+
assert pos1 >= 0
114+
new_content = content[:pos0] + full_fragment + content[pos1:]
115+
with open(README_FILE, "w") as ff:
116+
ff.write(new_content)
117+
logger.info("Fragment '%s' written to file", fragment_name)
103118

104119

105120
def main():
106121
modules_fragment = list_plugins("module")
107122
inventories_fragment = list_plugins("inventory")
108123
roles_fragment = list_roles()
109124

110-
print_fragment(inventories_fragment, "Inventory plugin name")
111-
print_fragment(modules_fragment, "Module name")
112-
print_fragment(roles_fragment, "Role name")
125+
update_fragment(inventories_fragment, "Inventory plugin name")
126+
update_fragment(modules_fragment, "Module name")
127+
update_fragment(roles_fragment, "Role name")
113128

114129

115130
if __name__ == "__main__":

galaxy.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
namespace: scale_computing
33
name: hypercore
4-
version: 1.2.0
4+
version: 1.3.0-dev0
55
readme: README.md
66
authors:
77
- XLAB Steampunk <steampunk@xlab.si>

0 commit comments

Comments
 (0)