X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=robot-systest%2Flib%2Frepo_lib.resource;fp=robot-systest%2Flib%2Frepo_lib.resource;h=a339255546a1e51e35cb401aeceeaddfaef12823;hb=7a9e031926d2fa7ed5041485b3d41b0c1e85d2a9;hp=0000000000000000000000000000000000000000;hpb=23ff8f980f66ef57fb4d254336a018e3a697a187;p=osm%2Ftests.git diff --git a/robot-systest/lib/repo_lib.resource b/robot-systest/lib/repo_lib.resource new file mode 100644 index 0000000..a339255 --- /dev/null +++ b/robot-systest/lib/repo_lib.resource @@ -0,0 +1,59 @@ +*** Comments *** +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +*** Settings *** +Documentation Library to deploy and delete OSM repos. + +Library OperatingSystem + +Resource ../lib/nsd_lib.resource + + +*** Variables *** +${SUCCESS_RETURN_CODE} 0 +${REPO_DELETE_MAX_WAIT_TIME} 1min +${REPO_DELETE_POL_TIME} 15sec + + +*** Keywords *** +Get Repos List + [Documentation] Get the list of repos and log it. + ${rc} ${stdout}= Run And Return RC And Output osm repo-list + Log ${stdout} + Should Be Equal As Integers ${rc} ${SUCCESS_RETURN_CODE} + +Create Repo + [Documentation] Create a repository in OSM with the name and options passed as arguments, and return the repo id. + [Arguments] ${repo_name} ${repo_uri} ${repo_type} ${user} ${password} ${additional_options}="" + ${user_attr}= Set Variable If '${user}'!='${EMPTY}' --user ${user} \ + ${password_attr}= Set Variable If '${password}'!='${EMPTY}' --password ${password} \ + ${rc} ${stdout}= Run And Return RC And Output osm repo-add --type ${repo_type} ${user_attr} ${password_attr} ${additional_options} ${repo_name} ${repo_uri} + Log ${rc},${stdout} + Should Be Equal As Integers ${rc} ${SUCCESS_RETURN_CODE} + RETURN ${stdout} + +Delete Repo + [Documentation] Delete from OSM the repo passed as argument. + [Arguments] ${repo_id} + ${rc} ${stdout}= Run Keyword And Continue On Failure Run And Return RC And Output osm repo-delete ${repo_id} + Should Be Equal As Integers ${rc} ${SUCCESS_RETURN_CODE} + Log ${stdout} + WAIT UNTIL KEYWORD SUCCEEDS ${REPO_DELETE_MAX_WAIT_TIME} ${REPO_DELETE_POL_TIME} Check For NSD ${repo_id} + +Check For Repo + [Documentation] Check that a repository exists in OSM. + [Arguments] ${repo_id} + ${rc} ${stdout}= Run And Return RC And Output osm repo-list | awk '{print $2}' | grep ${repo_id} + Log ${rc},${stdout} + Should Not Be Equal As Strings ${stdout} ${repo_id}