@@ -13,18 +13,22 @@ def clean_html_tags(text):
13
13
clean_text = re .sub (tags , '' , text )
14
14
return clean_text
15
15
16
- def generate_readme (metadata , folder , token = None , repo = None ):
16
+ def generate_readme (metadata , folder , token = None , key = None , repo = None ):
17
17
"""
18
18
Generate README.txt file.
19
19
20
- This function uses the template assets/README .txt
20
+ This function uses the file README_template .txt in the repository root.
21
21
22
22
:param metadata: Project metadata from `get_metadata()`
23
23
:type metadata: list
24
24
:param folder: Path to QDR Prepared folder for project
25
25
:type folder: String
26
26
:param token: Dataverse token (required if the project is unpublished)
27
27
:type token: string
28
+ :param key: Github API key, or None for public repository
29
+ :type key: String or None
30
+ :param repo: Repository to use for the README template, defaults to dvcurator.hosts.curation_repo
31
+ :type repo: String or None
28
32
29
33
:return: Path to newly generated README file
30
34
:rtype: string
@@ -78,14 +82,22 @@ def generate_readme(metadata, folder, token=None, repo=None):
78
82
'files' : dvcurator .fs .recursive_scan (folder ) #"\n".join(os.listdir(folder))
79
83
}
80
84
81
- # the location of the template differs if this is a compiled pyinstaller file or run directly
82
-
85
+
83
86
## Download readme template from github
87
+
88
+
84
89
host = "https://raw.githubusercontent.com/"
85
90
repo = dvcurator .hosts .curation_repo if not repo else repo
86
91
readme_url = host + repo + "/refs/heads/master/README_template.txt"
87
92
88
- response = requests .get (readme_url )
93
+ if (not key ):
94
+ print ("No github token set -- this will fail on private repo" )
95
+ response = requests .get (readme_url )
96
+ else :
97
+ print ("Trying to download README template from private repository..." )
98
+ key = {'Authorization' : "token " + key .strip ()}
99
+ response = requests .get (readme_url , headers = key )
100
+
89
101
response .raise_for_status ()
90
102
readme_template = response .text
91
103
print ("Downloaded README template..." )
0 commit comments