Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Dimitri Podborski
AutomationTools
Commits
4352b6d3
Commit
4352b6d3
authored
Feb 28, 2021
by
Dimitri Podborski
Browse files
improve search by namespace a bit
parent
12eff491
Changes
3
Hide whitespace changes
Inline
Side-by-side
README.md
View file @
4352b6d3
...
...
@@ -52,7 +52,7 @@ The CSV file must have a header row with the folowing entries:
-
`Number`
- MPEG document number e.g. m12345
-
To determine which GitLab project needs to be used make sure that your CSV file has either:
-
`Project URL`
- a full URL to your GitLab project
-
`Project URL`
- a full URL to your GitLab project
(
**recommended**
)
-
or
`Sub Group`
and
`Project Name`
- two last elements of the Project URL. (non-case-sensitive)
e.g.: http://mpegx.int-evry.fr/software/MPEG/Systems/PCC-SYS/V-PCC
→
`Sub Group = PCC-SYS`
and
`Project Name = V-PCC`
.
e.g.: http://mpegx.int-evry.fr/software/MPEG/Systems/FileFormat/isobmff
→
`Sub Group = FileFormat`
and
`Project Name = ISOBMFF`
...
...
automation/helpers.py
View file @
4352b6d3
...
...
@@ -157,7 +157,7 @@ def find_document(documents, document_number):
return
doc
return
None
def
find_project
(
projects
,
url_or_path
):
def
find_project
(
projects
,
url_or_path
,
path_root
=
'MPEG/'
):
'''
Search for gitlab project based on URL or path_with_namespace.
'''
...
...
@@ -167,7 +167,8 @@ def find_project(projects, url_or_path):
for
project
in
projects
:
if
striped_url_or_path
==
project
[
'url'
]:
return
project
if
striped_url_or_path
.
lower
()
in
project
[
'path_with_namespace'
].
lower
():
path_ns
=
project
[
'path_with_namespace'
].
lower
()
if
striped_url_or_path
.
lower
()
in
path_ns
and
path_ns
.
startswith
(
path_root
.
lower
()):
return
project
return
None
...
...
systems.py
View file @
4352b6d3
...
...
@@ -61,7 +61,7 @@ def print_infos(docs, project_url_or_path, gitlab_projects, input_docs):
print
(
' Last version: version'
,
last_doc
[
'version'
],
'from'
,
last_doc
[
'timestamp'
])
if
project_url_or_path
:
print
(
'GitLab metadata'
)
project
=
helpers
.
find_project
(
gitlab_projects
,
project_url_or_path
)
project
=
helpers
.
find_project
(
gitlab_projects
,
project_url_or_path
,
'MPEG/Systems'
)
if
not
project
:
print
(
' Could not find a GitLab project with'
,
project_url_or_path
)
else
:
...
...
@@ -234,7 +234,7 @@ def parse_csv(csv_file, projects, docs):
if
project_url_or_path
is
None
and
subgroup_idx
is
not
None
and
project_name_idx
is
not
None
:
if
len
(
row
[
subgroup_idx
])
>
0
and
len
(
row
[
project_name_idx
])
>
0
:
project_url_or_path
=
row
[
subgroup_idx
]
+
'/'
+
row
[
project_name_idx
]
project
=
helpers
.
find_project
(
projects
,
project_url_or_path
)
project
=
helpers
.
find_project
(
projects
,
project_url_or_path
,
'MPEG/Systems'
)
doc
=
helpers
.
find_document
(
docs
,
row
[
doc_number_idx
])
if
not
project
:
print
(
'WARNING: No project on GitLab for:'
,
row
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment