diff --git a/robot-systest/lib/package_lib.resource b/robot-systest/lib/package_lib.resource
new file mode 100644
index 0000000..b563463
--- /dev/null
+++ b/robot-systest/lib/package_lib.resource
@@ -0,0 +1,67 @@
+*** Comments ***
+# Copyright ETSI Contributors and Others.
+#
+# All Rights Reserved.
+#
+# 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 providing keywords for building, validating and uploading tar.gz NS and VNF package files with OSM client.
+Library   String
+Library   OperatingSystem
+
+
+*** Variables ***
+${SUCCESS_RETURN_CODE}   0
+
+
+*** Keywords ***
+Upload Package
+    [Documentation]   Onboards ("creates") a NF Package into OSM.
+    ...               - Parameters:
+    ...                 - pkg: Name (and location) of the NF Package
+    [Arguments]   ${pkg}
+    # Proceeds with the onboarding with the appropriate arguments
+    ${rc}   ${stdout}=   Run And Return Rc And Output   tar -czf ${pkg}.tar.gz -C ${pkg} .
+    Log   ${rc},${stdout}
+    ${rc}   ${stdout}=   Run And Return Rc And Output   osm upload-package ${pkg}.tar.gz
+    Log   ${rc},${stdout}
+    Should Be Equal As Integers   ${rc}   ${SUCCESS_RETURN_CODE}
+    RETURN   ${stdout}
+
+Delete Package
+    [Documentation]   Delete a tar.gz package passed as argument from the filesystem.
+    [Arguments]   ${pkg}
+    # Proceeds with the onboarding with the appropriate arguments
+    ${rc}   ${stdout}=   Run And Return Rc And Output   rm ${pkg}.tar.gz
+    Log   ${rc},${stdout}
+
+Package Build
+    [Documentation]   Build the package NS, VNF given the package_folder
+    [Arguments]   ${pkg_folder}   ${skip_charm_build}=${EMPTY}
+    ${skip_charm}=   Set Variable If   "${skip_charm_build}" != "${EMPTY}"   "--skip-charm-build"   ${EMPTY}
+    ${rc}   ${stdout}=   Run And Return Rc And Output   osm package-build ${pkg_folder} ${skip_charm}
+    Should Be Equal As Integers   ${rc}   ${SUCCESS_RETURN_CODE}
+    Should Contain   ${stdout}   Package created
+    ${package}=   Get Line   ${stdout}   -1
+    RETURN   ${package}
+
+Package Validate
+    [Documentation]   Validate descriptors given a base directory
+    [Arguments]   ${pkg_folder}
+    ${rc}   ${stdout}=   Run And Return Rc And Output   osm package-validate ${pkg_folder} | awk -F\| '$2 !~ /-/ && $4 ~ /OK|ERROR/ {print $4}'
+    Should Be Equal As Integers   ${rc}   ${SUCCESS_RETURN_CODE}
+    Should Contain   ${stdout}   'OK'
+    ${package}=   Get Line   ${stdout}   -1
+    RETURN   ${package}
