Skip to content

Commit edd97b2

Browse files
committed
Update release pipeline and solve fake object oriented problem with a solution that it deserves
1 parent c06384a commit edd97b2

File tree

3 files changed

+21
-13
lines changed

3 files changed

+21
-13
lines changed

.github/workflows/test_release.yml

+6-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
1-
name: Publish Python 🐍 distribution to TestPyPI
2-
on: push
1+
name: Publish TestPyPI
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*.*.*'
37

48
jobs:
59
pypi-test-publish:

.github/workflows/workflow.yml

+7-4
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11
name: publish
2-
on:
3-
push:
4-
tags:
5-
- 'v*.*.*'
2+
3+
on:
4+
workflow_run:
5+
workflows: ['Publish TestPyPI']
6+
types:
7+
- completed
68

79
jobs:
810
pypi-publish:
911
name: upload release to PyPI
12+
if: ${{ github.event.workflow_run.conclusion == 'success' }}
1013
runs-on: ubuntu-latest
1114
# Specifying a GitHub environment is optional, but strongly encouraged
1215
environment: release

repo2data/repo2data.py

+8-7
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,13 @@ def __init__(self, data_requirement=None, server=False):
3131
self._data_requirement_path = None
3232
self._data_requirement_file = None
3333
self._use_server = server
34+
self._server_dst_folder = "./data"
3435

3536
self.load_data_requirement(data_requirement)
3637

38+
def set_server_dst_folder(self,directory):
39+
self._server_dst_folder = directory
40+
3741
def _set_data_requirement_path(self, data_requirement_path):
3842
"""Define path to the requirement file"""
3943
if data_requirement_path is None:
@@ -99,19 +103,19 @@ def install(self):
99103
for key, value in self._data_requirement_file.items():
100104
if isinstance(value, dict):
101105
ret += [Repo2DataChild(value, self._use_server,
102-
self._data_requirement_path,key).install()]
106+
self._data_requirement_path,key,self._server_dst_folder).install()]
103107
# if not, it is a single assignment
104108
else:
105109
ret += [Repo2DataChild(self._data_requirement_file,
106-
self._use_server, self._data_requirement_path).install()]
110+
self._use_server, self._data_requirement_path, None, self._server_dst_folder).install()]
107111

108112
return ret
109113

110114

111115
class Repo2DataChild():
112116
"""Repo2data child class which install the dataset"""
113117

114-
def __init__(self, data_requirement_file=None, use_server=False, data_requirement_path=None, download_key = None):
118+
def __init__(self, data_requirement_file=None, use_server=False, data_requirement_path=None, download_key = None, server_dst_folder=None):
115119
"""Initialize the Repo2Data child class.
116120
Parameters
117121
----------
@@ -124,7 +128,7 @@ def __init__(self, data_requirement_file=None, use_server=False, data_requiremen
124128
self._dst_path = None
125129
self._use_server = use_server
126130
self._data_requirement_path = data_requirement_path
127-
self._server_dst_folder = "./data"
131+
self._server_dst_folder = server_dst_folder
128132
self._download_key = download_key
129133
if self._download_key:
130134
self._cache_record = f"{self._download_key}_repo2data_cache_record.json"
@@ -133,9 +137,6 @@ def __init__(self, data_requirement_file=None, use_server=False, data_requiremen
133137

134138
self.load_data_requirement(data_requirement_file)
135139

136-
def set_server_dst_folder(self,directory):
137-
self._server_dst_folder = directory
138-
139140
def load_data_requirement(self, data_requirement_file):
140141
"""Load the json data requirement file and set destination folder"""
141142
# here we should load just a json data

0 commit comments

Comments
 (0)