diff --git a/fabfile.py b/fabfile.py
index a489325..dd02aaa 100644
--- a/fabfile.py
+++ b/fabfile.py
@@ -14,7 +14,10 @@
@task
def release_text(c, workflow_name):
- makefile = read_makefile('.')
+ base_dir = '.'
+ tools = read_all_tools('..')
+ dependencies = output_tool_dependencies(workflow_name, base_dir)
+ makefile = read_makefile(base_dir)
readme = 'README.md'
previous_readme_lines = []
if os.path.isfile(readme):
@@ -34,13 +37,37 @@ def release_text(c, workflow_name):
update_text = "Last updated: {}.".format(makefile['LAST_UPDATED'])
+ dependency_text = []
+ seen = {}
+
+ for (dependency, dependency_version) in dependencies:
+
+ status = "N/V"
+ if dependency not in seen or (dependency in seen and seen[dependency] != dependency_version):
+ if dependency in tools:
+
+ local_version, workflow = tools[dependency]
+
+ if dependency_version == local_version:
+ status = "({})".format(dependency_version)
+ else:
+ status = "({}, latest is {})".format(dependency_version, local_version)
+
+ dependency_text.append("* {} {}".format(dependency, status))
+ else:
+ dependency_text.append("* {} (untracked)".format(dependency))
+
+ seen[dependency] = dependency_version
+
with open(readme, 'w') as w:
w.write('## {}\n\n'.format(name))
w.write('#### Version: {}\n\n'.format(version))
if description:
w.write('#### Description: \n{}\n\n'.format(description[1:-1]))
+ if len(dependency_text) > 0:
+ w.write('#### Dependencies: \n{}\n\n'.format("\n".join(dependency_text)))
w.write('_{}_\n\n'.format(update_text))
- w.write('')
+ w.write('\n\n')
for previous_readme_line in previous_readme_lines:
w.write(previous_readme_line)