Console Output
Started by upstream project "buildall-stage_2-merge-v10" build number 309
originally caused by:
Started by user garciadeblas
> git rev-parse --is-inside-work-tree # timeout=10
Setting origin to https://osm.etsi.org/gerrit/osm/osmclient.git
> git config remote.origin.url https://osm.etsi.org/gerrit/osm/osmclient.git # timeout=10
Fetching origin...
Fetching upstream changes from origin
> git --version # timeout=10
> git config --get remote.origin.url # timeout=10
> git fetch --tags --progress origin +refs/heads/*:refs/remotes/origin/*
Seen branch in repository origin/bug1511
Seen branch in repository origin/feature5837
Seen branch in repository origin/feature7106
Seen branch in repository origin/feature7928
Seen branch in repository origin/master
Seen branch in repository origin/netslice
Seen branch in repository origin/ng-ro-refactor
Seen branch in repository origin/paas
Seen branch in repository origin/rift300
Seen branch in repository origin/sol006
Seen branch in repository origin/sol006v331
Seen branch in repository origin/v10.0
Seen branch in repository origin/v11.0
Seen branch in repository origin/v12.0
Seen branch in repository origin/v13.0
Seen branch in repository origin/v14.0
Seen branch in repository origin/v15.0
Seen branch in repository origin/v2.0
Seen branch in repository origin/v3.1
Seen branch in repository origin/v4.0
Seen branch in repository origin/v5.0
Seen branch in repository origin/v6.0
Seen branch in repository origin/v7.0
Seen branch in repository origin/v8.0
Seen branch in repository origin/v9.0
Seen 25 remote branches
Obtained Jenkinsfile from 1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] properties
[Pipeline] node
Still waiting to schedule task
Waiting for next available executor on ‘stage_2’
Running on osm-cicd-3 in /home/jenkins/workspace/osmclient-stage_2-merge_v10.0
[Pipeline] {
[Pipeline] checkout
No credentials specified
> git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
> git config remote.origin.url https://osm.etsi.org/gerrit/osm/osmclient.git # timeout=10
Fetching without tags
Fetching upstream changes from https://osm.etsi.org/gerrit/osm/osmclient.git
> git --version # timeout=10
> git fetch --no-tags --force --progress https://osm.etsi.org/gerrit/osm/osmclient.git +refs/heads/*:refs/remotes/origin/*
Checking out Revision 1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3 (v10.0)
> git config core.sparsecheckout # timeout=10
> git checkout -f 1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3
Commit message: "Fix bug 2074 to delete properly unzipped packages during osm repo-index"
> git rev-list --no-walk 1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3 # timeout=10
Cleaning workspace
> git rev-parse --verify HEAD # timeout=10
Resetting working tree
> git reset --hard # timeout=10
> git clean -fdx # timeout=10
[Pipeline] dir
Running in /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/devops
[Pipeline] {
[Pipeline] git
No credentials specified
> git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
> git config remote.origin.url https://osm.etsi.org/gerrit/osm/devops # timeout=10
Fetching upstream changes from https://osm.etsi.org/gerrit/osm/devops
> git --version # timeout=10
> git fetch --tags --force --progress https://osm.etsi.org/gerrit/osm/devops +refs/heads/*:refs/remotes/origin/*
> git rev-parse refs/remotes/origin/v10.0^{commit} # timeout=10
> git rev-parse refs/remotes/origin/origin/v10.0^{commit} # timeout=10
Checking out Revision f92f3137aeecbc88d221f44b7e992af1f5e116aa (refs/remotes/origin/v10.0)
> git config core.sparsecheckout # timeout=10
> git checkout -f f92f3137aeecbc88d221f44b7e992af1f5e116aa
> git branch -a -v --no-abbrev # timeout=10
> git branch -D v10.0 # timeout=10
> git checkout -b v10.0 f92f3137aeecbc88d221f44b7e992af1f5e116aa
Commit message: "Changing charmed installer to use 10.0/stable Fixing black error in keystone charm"
> git rev-list --no-walk f92f3137aeecbc88d221f44b7e992af1f5e116aa # timeout=10
[Pipeline] }
[Pipeline] // dir
[Pipeline] load
[Pipeline] { (devops/jenkins/ci-pipelines/ci_stage_2.groovy)
[Pipeline] }
[Pipeline] // load
[Pipeline] echo
do_stage_3= false
[Pipeline] load
[Pipeline] { (devops/jenkins/ci-pipelines/ci_helper.groovy)
[Pipeline] }
[Pipeline] // load
[Pipeline] stage
[Pipeline] { (Prepare)
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ env
JENKINS_HOME=/var/lib/jenkins
SSH_CLIENT=212.234.161.1 13726 22
USER=jenkins
RUN_CHANGES_DISPLAY_URL=https://osm.etsi.org/jenkins/job/osmclient-stage_2-merge/job/v10.0/365/display/redirect?page=changes
GERRIT_PROJECT=osm/osmclient
XDG_SESSION_TYPE=tty
SHLVL=0
NODE_LABELS=osm-cicd-3 osm3 stage_2
HUDSON_URL=https://osm.etsi.org/jenkins/
MOTD_SHOWN=pam
OLDPWD=/home/jenkins
HOME=/home/jenkins
BUILD_URL=https://osm.etsi.org/jenkins/job/osmclient-stage_2-merge/job/v10.0/365/
HUDSON_COOKIE=2ca20ce1-50f1-4ea4-89c7-b9e4c29a7a6a
JENKINS_SERVER_COOKIE=durable-d8ce17949022a9a72d4b0640f35088c3
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1001/bus
GERRIT_PATCHSET_REVISION=1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3
WORKSPACE=/home/jenkins/workspace/osmclient-stage_2-merge_v10.0
LOGNAME=jenkins
NODE_NAME=osm-cicd-3
GERRIT_BRANCH=v10.0
_=/usr/bin/java
RUN_ARTIFACTS_DISPLAY_URL=https://osm.etsi.org/jenkins/job/osmclient-stage_2-merge/job/v10.0/365/display/redirect?page=artifacts
XDG_SESSION_CLASS=user
EXECUTOR_NUMBER=4
XDG_SESSION_ID=144
RUN_TESTS_DISPLAY_URL=https://osm.etsi.org/jenkins/job/osmclient-stage_2-merge/job/v10.0/365/display/redirect?page=tests
BUILD_DISPLAY_NAME=#365
PROJECT_URL_PREFIX=https://osm.etsi.org/gerrit
HUDSON_HOME=/var/lib/jenkins
JOB_BASE_NAME=v10.0
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
BUILD_ID=365
XDG_RUNTIME_DIR=/run/user/1001
BUILD_TAG=jenkins-osmclient-stage_2-merge-v10.0-365
JENKINS_URL=https://osm.etsi.org/jenkins/
LANG=C.UTF-8
JOB_URL=https://osm.etsi.org/jenkins/job/osmclient-stage_2-merge/job/v10.0/
BUILD_NUMBER=365
SHELL=/bin/bash
RUN_DISPLAY_URL=https://osm.etsi.org/jenkins/job/osmclient-stage_2-merge/job/v10.0/365/display/redirect
ARTIFACTORY_SERVER=artifactory-osm
GERRIT_REFSPEC=refs/changes/43/12443/1
HUDSON_SERVER_COOKIE=6d3295a483c3e6d5
JOB_DISPLAY_URL=https://osm.etsi.org/jenkins/job/osmclient-stage_2-merge/job/v10.0/display/redirect
JOB_NAME=osmclient-stage_2-merge/v10.0
TEST_INSTALL=false
PWD=/home/jenkins/workspace/osmclient-stage_2-merge_v10.0
SSH_CONNECTION=212.234.161.1 13726 172.21.249.3 22
BRANCH_NAME=v10.0
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Checkout)
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ git fetch --tags
[osmclient-stage_2-merge_v10.0] Running shell script
[Pipeline] sh
+ git fetch origin refs/changes/43/12443/1
From https://osm.etsi.org/gerrit/osm/osmclient
* branch refs/changes/43/12443/1 -> FETCH_HEAD
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ git checkout -f 1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3
HEAD is now at 1ad0860 Fix bug 2074 to delete properly unzipped packages during osm repo-index
[osmclient-stage_2-merge_v10.0] Running shell script
[Pipeline] sh
+ sudo git clean -dfx
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (License Scan)
[Pipeline] echo
skip the scan for merge
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Release Note Check)
[Pipeline] fileExists
[Pipeline] echo
No releasenote check present
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Docker-Build)
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ docker build -t osm/osmclient-v10.0 .
Sending build context to Docker daemon 53.64MB
Step 1/9 : FROM ubuntu:20.04
---> f78909c2b360
Step 2/9 : ARG APT_PROXY
---> Using cache
---> 8e46f58b9aac
Step 3/9 : RUN if [ ! -z $APT_PROXY ] ; then echo "Acquire::http::Proxy \"$APT_PROXY\";" > /etc/apt/apt.conf.d/proxy.conf ; echo "Acquire::https::Proxy \"$APT_PROXY\";" >> /etc/apt/apt.conf.d/proxy.conf ; fi
---> Using cache
---> 35cfd9080839
Step 4/9 : RUN DEBIAN_FRONTEND=noninteractive apt-get update && DEBIAN_FRONTEND=noninteractive apt-get -y install debhelper dh-python git python3.8 python3-all python3.8-dev python3-setuptools
---> Using cache
---> eebd1e12af17
Step 5/9 : RUN python3 -m easy_install pip==21.3.1
---> Using cache
---> 17fa9bf7bb68
Step 6/9 : RUN pip install tox==3.24.5
---> Using cache
---> 073087393018
Step 7/9 : RUN DEBIAN_FRONTEND=noninteractive apt-get -y install libcurl4-openssl-dev libssl-dev wget
---> Using cache
---> 9bb1b677c24a
Step 8/9 : ENV LC_ALL C.UTF-8
---> Using cache
---> 777bc14870ae
Step 9/9 : ENV LANG C.UTF-8
---> Using cache
---> 61381e87c2ec
Successfully built 61381e87c2ec
Successfully tagged osm/osmclient-v10.0:latest
[Pipeline] }
[Pipeline] // stage
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ id -u
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ id -g
[Pipeline] withDockerContainer
osm-cicd-3 does not seem to be running inside a container
$ docker run -t -d -u 1001:1001 -u root -w /home/jenkins/workspace/osmclient-stage_2-merge_v10.0 -v /home/jenkins/workspace/osmclient-stage_2-merge_v10.0:/home/jenkins/workspace/osmclient-stage_2-merge_v10.0:rw,z -v /home/jenkins/workspace/osmclient-stage_2-merge_v10.0@tmp:/home/jenkins/workspace/osmclient-stage_2-merge_v10.0@tmp:rw,z -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** -e ******** --entrypoint cat osm/osmclient-v10.0
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Test)
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ groupadd -o -g 1001 -r jenkins
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ pwd
+ useradd -o -u 1001 -d /home/jenkins/workspace/osmclient-stage_2-merge_v10.0 -r -g jenkins jenkins
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ echo #! /bin/sh
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ chmod 755 /usr/bin/mesg
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ runuser jenkins -c devops-stages/stage-test.sh
black create: /tmp/.tox/black
black installdeps: black
black installed: black==24.1.0,click==8.1.7,mypy-extensions==1.0.0,packaging==23.2,pathspec==0.12.1,platformdirs==4.1.0,tomli==2.0.1,typing_extensions==4.9.0
black run-test-pre: PYTHONHASHSEED='2771707019'
black run-test: commands[0] | - black --check --diff osmclient/
--- /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/sol005/k8scluster.py 2024-01-26 11:02:29.496582+00:00
+++ /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/sol005/k8scluster.py 2024-01-26 11:02:48.140838+00:00
@@ -45,11 +45,13 @@
# K8S '--wait' option
def _wait(self, id, wait_time, deleteFlag=False):
self._logger.debug("")
self._client.get_token()
# Endpoint to get operation status
- apiUrlStatus = "{}{}{}".format(self._apiName, self._apiVersion, self._apiResource)
+ apiUrlStatus = "{}{}{}".format(
+ self._apiName, self._apiVersion, self._apiResource
+ )
# Wait for status for VIM instance creation/deletion
if isinstance(wait_time, bool):
wait_time = WaitForStatus.TIMEOUT_VIM_OPERATION
WaitForStatus.wait_for_status(
"K8S",
@@ -68,12 +70,12 @@
k8s_cluster["vca_id"] = vim_account["vca"]
http_code, resp = self._http.post_cmd(
endpoint=self._apiBase, postfields_dict=k8s_cluster
)
- self._logger.debug('HTTP CODE: {}'.format(http_code))
- self._logger.debug('RESP: {}'.format(resp))
+ self._logger.debug("HTTP CODE: {}".format(http_code))
+ self._logger.debug("RESP: {}".format(resp))
if resp:
resp = json.loads(resp)
if not resp or "id" not in resp:
raise ClientException("unexpected response from server - {}".format(resp))
@@ -105,23 +107,25 @@
if wait:
wait_id = cluster["_id"]
self._wait(wait_id, wait)
- self._logger.debug('HTTP CODE: {}'.format(http_code))
- self._logger.debug('RESP: {}'.format(resp))
+ self._logger.debug("HTTP CODE: {}".format(http_code))
+ self._logger.debug("RESP: {}".format(resp))
if http_code in (200, 201, 202, 204):
print("Updated")
else:
msg = ""
if resp:
try:
msg = json.loads(resp)
except ValueError:
msg = resp
- raise ClientException("failed to update K8s cluster {} - {}".format(name, msg))
+ raise ClientException(
+ "failed to update K8s cluster {} - {}".format(name, msg)
+ )
def get_id(self, name):
"""Returns a K8s cluster id from a K8s cluster name"""
for cluster in self.list():
if name == cluster["name"]:
@@ -138,12 +142,12 @@
querystring = "?FORCE=True"
http_code, resp = self._http.delete_cmd(
"{}/{}{}".format(self._apiBase, cluster_id, querystring)
)
- self._logger.debug('HTTP CODE: {}'.format(http_code))
- self._logger.debug('RESP: {}'.format(resp))
+ self._logger.debug("HTTP CODE: {}".format(http_code))
+ self._logger.debug("RESP: {}".format(resp))
if http_code == 202:
if wait:
wait_id = cluster_id
would reformat /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/sol005/k8scluster.py
--- /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/v1/vim.py 2024-01-26 11:02:29.500582+00:00
+++ /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/v1/vim.py 2024-01-26 11:02:48.424106+00:00
@@ -181,13 +181,13 @@
continue
for datacenter in ro_account["datacenters"]["datacenters"]:
datacenters.append(
{
"name": datacenter["name"],
- "uuid": datacenter["uuid"]
- if "uuid" in datacenter
- else None,
+ "uuid": (
+ datacenter["uuid"] if "uuid" in datacenter else None
+ ),
}
)
vim_accounts = datacenters
return vim_accounts
would reformat /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/v1/vim.py
--- /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/sol005/osmrepo.py 2024-01-26 11:02:29.496582+00:00
+++ /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/sol005/osmrepo.py 2024-01-26 11:02:48.502247+00:00
@@ -94,11 +94,11 @@
except Exception as e:
self._logger.error(
"Error cannot read from repository {} '{}': {}".format(
repository["name"], repository["url"], e
),
- exc_info=True
+ exc_info=True,
)
continue
vnf_repos_filtered = []
if filter:
@@ -189,12 +189,18 @@
directories = []
for f in listdir(origin):
self._logger.debug(f"Element: {join(origin,f)}")
if isfile(join(origin, f)) and f.endswith(".tar.gz"):
artifacts.append(f)
- elif isdir(join(origin, f)) and f != destination.split('/')[-1] and not f.startswith('.'):
- directories.append(f) # TODO: Document that nested directories are not supported
+ elif (
+ isdir(join(origin, f))
+ and f != destination.split("/")[-1]
+ and not f.startswith(".")
+ ):
+ directories.append(
+ f
+ ) # TODO: Document that nested directories are not supported
else:
self._logger.debug(f"Ignoring {f}")
self._logger.debug(f"Artifacts: {artifacts}")
for package in artifacts:
self.register_package_in_repository(
@@ -248,31 +254,37 @@
aux_dict = {}
if package_type == "vnf":
if descriptor_dict.get("vnfd-catalog", False):
aux_dict = descriptor_dict.get("vnfd-catalog", {}).get("vnfd", [{}])[0]
elif descriptor_dict.get("vnfd:vnfd-catalog"):
- aux_dict = descriptor_dict.get("vnfd:vnfd-catalog", {}).get("vnfd", [{}])[0]
+ aux_dict = descriptor_dict.get("vnfd:vnfd-catalog", {}).get(
+ "vnfd", [{}]
+ )[0]
elif descriptor_dict.get("vnfd"):
aux_dict = descriptor_dict["vnfd"]
if aux_dict.get("vnfd"):
- aux_dict = aux_dict['vnfd'][0]
+ aux_dict = aux_dict["vnfd"][0]
else:
msg = f"Unexpected descriptor format {descriptor_dict}"
self._logger.error(msg)
raise ValueError(msg)
- self._logger.debug(f"Extracted descriptor info for {package_type}: {aux_dict}")
+ self._logger.debug(
+ f"Extracted descriptor info for {package_type}: {aux_dict}"
+ )
images = []
- for vdu in aux_dict.get("vdu", aux_dict.get('kdu', ())):
- images.append(vdu.get("image", vdu.get('name')))
+ for vdu in aux_dict.get("vdu", aux_dict.get("kdu", ())):
+ images.append(vdu.get("image", vdu.get("name")))
fields["images"] = images
elif package_type == "ns":
if descriptor_dict.get("nsd-catalog", False):
aux_dict = descriptor_dict.get("nsd-catalog", {}).get("nsd", [{}])[0]
elif descriptor_dict.get("nsd:nsd-catalog"):
- aux_dict = descriptor_dict.get("nsd:nsd-catalog", {}).get("nsd", [{}])[0]
+ aux_dict = descriptor_dict.get("nsd:nsd-catalog", {}).get("nsd", [{}])[
+ 0
+ ]
elif descriptor_dict.get("nsd"):
- aux_dict = descriptor_dict['nsd']
+ aux_dict = descriptor_dict["nsd"]
if aux_dict.get("nsd"):
aux_dict = descriptor_dict["nsd"]["nsd"][0]
else:
msg = f"Unexpected descriptor format {descriptor_dict}"
self._logger.error(msg)
@@ -280,20 +292,22 @@
vnfs = []
if aux_dict.get("constituent-vnfd"):
for vnf in aux_dict.get("constituent-vnfd", ()):
vnfs.append(vnf.get("vnfd-id-ref"))
else:
- vnfs = aux_dict.get('vnfd-id')
+ vnfs = aux_dict.get("vnfd-id")
self._logger.debug("Used VNFS in the NSD: " + str(vnfs))
fields["vnfd-id-ref"] = vnfs
- elif package_type == 'nst':
+ elif package_type == "nst":
if descriptor_dict.get("nst-catalog", False):
aux_dict = descriptor_dict.get("nst-catalog", {}).get("nst", [{}])[0]
elif descriptor_dict.get("nst:nst-catalog"):
- aux_dict = descriptor_dict.get("nst:nst-catalog", {}).get("nst", [{}])[0]
+ aux_dict = descriptor_dict.get("nst:nst-catalog", {}).get("nst", [{}])[
+ 0
+ ]
elif descriptor_dict.get("nst"):
- aux_dict = descriptor_dict['nst']
+ aux_dict = descriptor_dict["nst"]
if aux_dict.get("nst"):
aux_dict = descriptor_dict["nst"]["nst"][0]
nsds = []
for nsd in aux_dict.get("netslice-subnet", ()):
nsds.append(nsd.get("nsd-ref"))
@@ -355,11 +369,13 @@
if kind == "directory":
descriptor_file = glob.glob("{}/*.y*ml".format(path))[0]
else:
folder, descriptor_file = self.zip_extraction(path)
folder = join(origin, folder)
- self._logger.debug(f"Kind is an artifact (tar.gz). Folder: {folder}. Descriptor_file: {descriptor_file}")
+ self._logger.debug(
+ f"Kind is an artifact (tar.gz). Folder: {folder}. Descriptor_file: {descriptor_file}"
+ )
self._logger.debug("Opening descriptor file: {}".format(descriptor_file))
with open(descriptor_file, "r") as f:
descriptor_data = f.read()
@@ -527,13 +543,13 @@
index = yaml.safe_load(open(destination + "/index.yaml"))
index["{}_packages".format(package_type)][fields.get("id")] = {
fields.get("version"): data_ind
}
- index["{}_packages".format(package_type)][fields.get("id")][
- "latest"
- ] = fields.get("version")
+ index["{}_packages".format(package_type)][fields.get("id")]["latest"] = (
+ fields.get("version")
+ )
yaml.safe_dump(
index,
open(join(destination, "index.yaml"), "w"),
default_flow_style=False,
width=80,
would reformat /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/sol005/osmrepo.py
--- /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/scripts/osm.py 2024-01-26 11:02:29.496582+00:00
+++ /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/scripts/osm.py 2024-01-26 11:02:52.056789+00:00
@@ -2581,11 +2581,13 @@
"""creates a new Physical Deployment Unit (PDU)"""
logger.debug("")
check_client_version(ctx.obj, ctx.command.name)
- pdu = create_pdu_dictionary(name, pdu_type, interface, description, vim_account, descriptor_file)
+ pdu = create_pdu_dictionary(
+ name, pdu_type, interface, description, vim_account, descriptor_file
+ )
ctx.obj.pdu.create(pdu)
########################
# UPDATE PDU operation #
@@ -2629,15 +2631,19 @@
update = True
if not newname:
newname = name
- pdu = create_pdu_dictionary(newname, pdu_type, interface, description, vim_account, descriptor_file, update)
+ pdu = create_pdu_dictionary(
+ newname, pdu_type, interface, description, vim_account, descriptor_file, update
+ )
ctx.obj.pdu.update(name, pdu)
-def create_pdu_dictionary(name, pdu_type, interface, description, vim_account, descriptor_file, update=False):
+def create_pdu_dictionary(
+ name, pdu_type, interface, description, vim_account, descriptor_file, update=False
+):
logger.debug("")
pdu = {}
if not descriptor_file:
@@ -2675,10 +2681,11 @@
new_iface = {k: v for k, v in [i.split("=") for i in iface.split(",")]}
new_iface["mgmt"] = new_iface.get("mgmt", "false").lower() == "true"
ifaces_list.append(new_iface)
pdu["interfaces"] = ifaces_list
return pdu
+
####################
# UPDATE operations
####################
@@ -4718,13 +4725,13 @@
)
@click.option(
"--projects",
# prompt="Comma separate list of projects",
multiple=True,
- callback=lambda ctx, param, value: "".join(value).split(",")
- if all(len(x) == 1 for x in value)
- else value,
+ callback=lambda ctx, param, value: (
+ "".join(value).split(",") if all(len(x) == 1 for x in value) else value
+ ),
help="list of project ids that the user belongs to",
)
@click.option(
"--project-role-mappings",
"project_role_mappings",
@@ -5771,11 +5778,14 @@
)
@click.option(
"--netslice-vlds", default=1, help="(NST) Number of netslice vlds. Default 1"
)
@click.option(
- "--old", default=False, is_flag=True, help="Support flag for old versions of the OSM IM (OSM<9)"
+ "--old",
+ default=False,
+ is_flag=True,
+ help="Support flag for old versions of the OSM IM (OSM<9)",
)
@click.pass_context
def package_create(
ctx,
package_type,
would reformat /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient/scripts/osm.py
Oh no! 💥 💔 💥
4 files would be reformatted, 48 files would be left unchanged.
cover create: /tmp/.tox/cover
cover installdeps: -r/home/jenkins/workspace/osmclient-stage_2-merge_v10.0/requirements.txt, -r/home/jenkins/workspace/osmclient-stage_2-merge_v10.0/requirements-dev.txt, -r/home/jenkins/workspace/osmclient-stage_2-merge_v10.0/requirements-test.txt
cover develop-inst: /home/jenkins/workspace/osmclient-stage_2-merge_v10.0
cover installed: bitarray==2.3.5,certifi==2021.10.8,charset-normalizer==2.0.10,click==8.0.3,coverage==6.2,enum34==1.1.10,idna==3.3,Jinja2==3.0.3,lxml==4.7.1,MarkupSafe==2.0.1,mock==4.0.3,nose2==0.10.0,osm-im @ git+https://osm.etsi.org/gerrit/osm/IM.git@8aef22e6e453948e531839cb5cd3f8bd9336f9d8,-e git+https://osm.etsi.org/gerrit/osm/osmclient.git@1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3#egg=osmclient,packaging==21.3,prettytable==3.0.0,pyang==2.5.2,pyangbind==0.8.1,pycurl==7.44.1,pyparsing==3.0.6,python-magic==0.4.24,PyYAML==5.4.1,regex==2021.11.10,requests==2.27.1,six==1.16.0,urllib3==1.26.8,verboselogs==1.7,wcwidth==0.2.5
cover run-test-pre: PYTHONHASHSEED='2771707019'
cover run-test: commands[0] | sh -c 'rm -f nosetests.xml'
cover run-test: commands[1] | coverage erase
cover run-test: commands[2] | nose2 -C --coverage osmclient
...............................................
----------------------------------------------------------------------
Ran 47 tests in 10.139s
OK
Name Stmts Miss Cover
------------------------------------------------------------
osmclient/__init__.py 0 0 100%
osmclient/client.py 32 25 22%
osmclient/common/__init__.py 0 0 100%
osmclient/common/exceptions.py 6 0 100%
osmclient/common/http.py 67 39 42%
osmclient/common/package_tool.py 364 323 11%
osmclient/common/test/test_utils.py 36 0 100%
osmclient/common/utils.py 62 39 37%
osmclient/common/wait.py 83 63 24%
osmclient/scripts/__init__.py 0 0 100%
osmclient/scripts/osm.py 2423 1388 43%
osmclient/scripts/tests/tests_vca.py 100 0 100%
osmclient/sol005/__init__.py 0 0 100%
osmclient/sol005/client.py 99 70 29%
osmclient/sol005/http.py 151 130 14%
osmclient/sol005/k8scluster.py 118 101 14%
osmclient/sol005/ns.py 335 309 8%
osmclient/sol005/nsd.py 123 102 17%
osmclient/sol005/nsi.py 209 190 9%
osmclient/sol005/nst.py 128 108 16%
osmclient/sol005/osmrepo.py 316 266 16%
osmclient/sol005/package.py 62 49 21%
osmclient/sol005/pdud.py 94 79 16%
osmclient/sol005/project.py 74 61 18%
osmclient/sol005/repo.py 69 56 19%
osmclient/sol005/role.py 117 103 12%
osmclient/sol005/sdncontroller.py 97 80 18%
osmclient/sol005/subscription.py 71 58 18%
osmclient/sol005/tests/test_osmrepo.py 13 0 100%
osmclient/sol005/tests/test_vca.py 117 0 100%
osmclient/sol005/user.py 124 112 10%
osmclient/sol005/vca.py 64 0 100%
osmclient/sol005/vim.py 162 143 12%
osmclient/sol005/vnf.py 56 46 18%
osmclient/sol005/vnfd.py 194 169 13%
osmclient/sol005/wim.py 142 123 13%
osmclient/v1/__init__.py 0 0 100%
osmclient/v1/client.py 54 9 83%
osmclient/v1/key.py 18 18 0%
osmclient/v1/ns.py 118 89 25%
osmclient/v1/nsd.py 27 8 70%
osmclient/v1/package.py 34 17 50%
osmclient/v1/tests/test_ns.py 22 0 100%
osmclient/v1/tests/test_nsd.py 20 1 95%
osmclient/v1/tests/test_package.py 15 0 100%
osmclient/v1/tests/test_vnf.py 26 0 100%
osmclient/v1/tests/test_vnfd.py 20 1 95%
osmclient/v1/utils.py 9 4 56%
osmclient/v1/vca.py 27 27 0%
osmclient/v1/vim.py 184 162 12%
osmclient/v1/vnf.py 24 3 88%
osmclient/v1/vnfd.py 25 6 76%
------------------------------------------------------------
TOTAL 6731 4577 32%
cover run-test: commands[3] | coverage report '--omit=*tests*'
Name Stmts Miss Cover
---------------------------------------------------------
osmclient/__init__.py 0 0 100%
osmclient/client.py 32 25 22%
osmclient/common/__init__.py 0 0 100%
osmclient/common/exceptions.py 6 0 100%
osmclient/common/http.py 67 39 42%
osmclient/common/package_tool.py 364 323 11%
osmclient/common/test/test_utils.py 36 0 100%
osmclient/common/utils.py 62 39 37%
osmclient/common/wait.py 83 63 24%
osmclient/scripts/__init__.py 0 0 100%
osmclient/scripts/osm.py 2423 1388 43%
osmclient/sol005/__init__.py 0 0 100%
osmclient/sol005/client.py 99 70 29%
osmclient/sol005/http.py 151 130 14%
osmclient/sol005/k8scluster.py 118 101 14%
osmclient/sol005/ns.py 335 309 8%
osmclient/sol005/nsd.py 123 102 17%
osmclient/sol005/nsi.py 209 190 9%
osmclient/sol005/nst.py 128 108 16%
osmclient/sol005/osmrepo.py 316 266 16%
osmclient/sol005/package.py 62 49 21%
osmclient/sol005/pdud.py 94 79 16%
osmclient/sol005/project.py 74 61 18%
osmclient/sol005/repo.py 69 56 19%
osmclient/sol005/role.py 117 103 12%
osmclient/sol005/sdncontroller.py 97 80 18%
osmclient/sol005/subscription.py 71 58 18%
osmclient/sol005/user.py 124 112 10%
osmclient/sol005/vca.py 64 0 100%
osmclient/sol005/vim.py 162 143 12%
osmclient/sol005/vnf.py 56 46 18%
osmclient/sol005/vnfd.py 194 169 13%
osmclient/sol005/wim.py 142 123 13%
osmclient/v1/__init__.py 0 0 100%
osmclient/v1/client.py 54 9 83%
osmclient/v1/key.py 18 18 0%
osmclient/v1/ns.py 118 89 25%
osmclient/v1/nsd.py 27 8 70%
osmclient/v1/package.py 34 17 50%
osmclient/v1/utils.py 9 4 56%
osmclient/v1/vca.py 27 27 0%
osmclient/v1/vim.py 184 162 12%
osmclient/v1/vnf.py 24 3 88%
osmclient/v1/vnfd.py 25 6 76%
---------------------------------------------------------
TOTAL 6398 4575 28%
cover run-test: commands[4] | coverage html -d ./cover '--omit=*tests*'
Wrote HTML report to ./cover/index.html
cover run-test: commands[5] | coverage xml -o coverage.xml '--omit=*tests*'
Wrote XML report to coverage.xml
flake8 create: /tmp/.tox/flake8
flake8 installdeps: flake8
flake8 develop-inst: /home/jenkins/workspace/osmclient-stage_2-merge_v10.0
flake8 installed: flake8==7.0.0,mccabe==0.7.0,-e git+https://osm.etsi.org/gerrit/osm/osmclient.git@1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3#egg=osmclient,pycodestyle==2.11.1,pyflakes==3.2.0
flake8 run-test-pre: PYTHONHASHSEED='2771707019'
flake8 run-test: commands[0] | flake8 osmclient/ setup.py
pylint create: /tmp/.tox/pylint
pylint installdeps: -r/home/jenkins/workspace/osmclient-stage_2-merge_v10.0/requirements.txt, -r/home/jenkins/workspace/osmclient-stage_2-merge_v10.0/requirements-dev.txt, -r/home/jenkins/workspace/osmclient-stage_2-merge_v10.0/requirements-test.txt, pylint
pylint develop-inst: /home/jenkins/workspace/osmclient-stage_2-merge_v10.0
pylint installed: astroid==3.0.2,bitarray==2.3.5,certifi==2021.10.8,charset-normalizer==2.0.10,click==8.0.3,coverage==6.2,dill==0.3.7,enum34==1.1.10,idna==3.3,isort==5.13.2,Jinja2==3.0.3,lxml==4.7.1,MarkupSafe==2.0.1,mccabe==0.7.0,mock==4.0.3,nose2==0.10.0,osm-im @ git+https://osm.etsi.org/gerrit/osm/IM.git@8aef22e6e453948e531839cb5cd3f8bd9336f9d8,-e git+https://osm.etsi.org/gerrit/osm/osmclient.git@1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3#egg=osmclient,packaging==21.3,platformdirs==4.1.0,prettytable==3.0.0,pyang==2.5.2,pyangbind==0.8.1,pycurl==7.44.1,pylint==3.0.3,pyparsing==3.0.6,python-magic==0.4.24,PyYAML==5.4.1,regex==2021.11.10,requests==2.27.1,six==1.16.0,tomli==2.0.1,tomlkit==0.12.3,typing_extensions==4.9.0,urllib3==1.26.8,verboselogs==1.7,wcwidth==0.2.5
pylint run-test-pre: PYTHONHASHSEED='2771707019'
pylint run-test: commands[0] | - pylint -E osmclient
************* Module osmclient.client
osmclient/client.py:52:34: E1101: Module 'logging' has no 'VERBOSE' member (no-member)
************* Module osmclient.scripts.osm
osmclient/scripts/osm.py:5993:8: E1120: No value for argument 'ctx' in function call (no-value-for-parameter)
************* Module osmclient.common.http
osmclient/common/http.py:48:8: E1101: Instance of 'Http' has no '_logger' member (no-member)
osmclient/common/http.py:53:8: E1101: Instance of 'Http' has no '_logger' member (no-member)
osmclient/common/http.py:56:12: E1101: Instance of 'Http' has no '_logger' member (no-member)
osmclient/common/http.py:67:8: E1101: Instance of 'Http' has no '_logger' member (no-member)
osmclient/common/http.py:72:8: E1101: Instance of 'Http' has no '_logger' member (no-member)
osmclient/common/http.py:75:12: E1101: Instance of 'Http' has no '_logger' member (no-member)
osmclient/common/http.py:101:8: E1101: Instance of 'Http' has no '_logger' member (no-member)
osmclient/common/http.py:106:8: E1101: Instance of 'Http' has no '_logger' member (no-member)
osmclient/common/http.py:109:12: E1101: Instance of 'Http' has no '_logger' member (no-member)
safety create: /tmp/.tox/safety
safety installdeps: -r/home/jenkins/workspace/osmclient-stage_2-merge_v10.0/requirements.txt, safety
safety develop-inst: /home/jenkins/workspace/osmclient-stage_2-merge_v10.0
safety installed: certifi==2021.10.8,charset-normalizer==2.0.10,click==8.0.3,dparse==0.6.3,idna==3.3,Jinja2==3.0.3,MarkupSafe==2.0.1,-e git+https://osm.etsi.org/gerrit/osm/osmclient.git@1ad0860dfe31be33ea8b82e0f3e4bb327d0390d3#egg=osmclient,packaging==21.3,prettytable==3.0.0,pycurl==7.44.1,pyparsing==3.0.6,python-magic==0.4.24,PyYAML==5.4.1,requests==2.27.1,ruamel.yaml==0.18.5,ruamel.yaml.clib==0.2.8,safety==2.3.5,tomli==2.0.1,urllib3==1.26.8,verboselogs==1.7,wcwidth==0.2.5
safety run-test-pre: PYTHONHASHSEED='2771707019'
safety run-test: commands[0] | - safety check --full-report
+==============================================================================+
/$$$$$$ /$$
/$$__ $$ | $$
/$$$$$$$ /$$$$$$ | $$ \__//$$$$$$ /$$$$$$ /$$ /$$
/$$_____/ |____ $$| $$$$ /$$__ $$|_ $$_/ | $$ | $$
| $$$$$$ /$$$$$$$| $$_/ | $$$$$$$$ | $$ | $$ | $$
\____ $$ /$$__ $$| $$ | $$_____/ | $$ /$$| $$ | $$
/$$$$$$$/| $$$$$$$| $$ | $$$$$$$ | $$$$/| $$$$$$$
|_______/ \_______/|__/ \_______/ \___/ \____ $$
/$$ | $$
| $$$$$$/
by pyup.io \______/
+==============================================================================+
[1mREPORT[0m
[31m[22m Safety is using PyUp's free open-source vulnerability database. This
data is 30 days old and limited. [0m
[31m For real-time enhanced vulnerability data, fix recommendations, severity
reporting, cybersecurity support, team and project policy management and more
sign up at https://pyup.io or email sales@pyup.io[0m
Safety [1mv2.3.5[0m is scanning for [1mVulnerabilities[0m[1m...[0m
[1m Scanning dependencies[0m in your [1menvironment:[0m
-> /tmp/.tox/safety/lib/python3.8/site-packages
-> /home/jenkins/workspace/osmclient-stage_2-merge_v10.0
Using [1mnon-commercial database[0m
[1m Found and scanned 25 packages[0m
Timestamp [1m2024-01-26 11:05:14[0m
[1m 5[0m[1m vulnerabilities found[0m
[1m 0[0m[1m vulnerabilities ignored[0m
+==============================================================================+
[31m[1mVULNERABILITIES FOUND[0m
+==============================================================================+
[31m-> Vulnerability found in certifi version 2021.10.8
[0m[1m Vulnerability ID: [0m59956
[1m Affected spec: [0m>=2015.04.28,<2023.07.22
[1m ADVISORY: [0mCertifi 2023.07.22 includes a fix for CVE-2023-37920:
Certifi prior to version 2023.07.22 recognizes "e-Tugra" root certificates.
e-Tugra's root certificates were subject to an investigation prompted by
reporting of security issues in their systems. Certifi 2023.07.22 removes
root certificates from "e-Tugra" from the root
store.https://github.com/certifi/python-certifi/security/advisories/GHSA-
xqr8-7jwr-rhp7
[1m CVE-2023-37920[0m
[1m For more information, please visit
[0mhttps://data.safetycli.com/v/59956/f17[0m
[31m-> Vulnerability found in certifi version 2021.10.8
[0m[1m Vulnerability ID: [0m52365
[1m Affected spec: [0m<2022.12.07
[1m ADVISORY: [0mCertifi 2022.12.07 includes a fix for CVE-2022-23491:
Certifi 2022.12.07 removes root certificates from "TrustCor" from the root
store. These are in the process of being removed from Mozilla's trust store.
TrustCor's root certificates are being removed pursuant to an investigation
prompted by media reporting that TrustCor's ownership also operated a
business that produced spyware. Conclusions of Mozilla's investigation can be
found in the linked google group
discussion.https://github.com/certifi/python-
certifi/security/advisories/GHSA-43fp-
rhv2-5gv8https://groups.google.com/a/mozilla.org/g/dev-security-
policy/c/oxX69KFvsm4/m/yLohoVqtCgAJ
[1m CVE-2022-23491[0m
[1m For more information, please visit
[0mhttps://data.safetycli.com/v/52365/f17[0m
[31m-> Vulnerability found in requests version 2.27.1
[0m[1m Vulnerability ID: [0m58755
[1m Affected spec: [0m>=2.3.0,<2.31.0
[1m ADVISORY: [0mRequests 2.31.0 includes a fix for CVE-2023-32681: Since
Requests 2.3.0, Requests has been leaking Proxy-Authorization headers to
destination servers when redirected to an HTTPS endpoint. This is a product
of how we use 'rebuild_proxies' to reattach the 'Proxy-Authorization' header
to requests. For HTTP connections sent through the tunnel, the proxy will
identify the header in the request itself and remove it prior to forwarding
to the destination server. However when sent over HTTPS, the 'Proxy-
Authorization' header must be sent in the CONNECT request as the proxy has no
visibility into the tunneled request. This results in Requests forwarding
proxy credentials to the destination server unintentionally, allowing a
malicious actor to potentially exfiltrate sensitive information.
[1m CVE-2023-32681[0m
[1m For more information, please visit
[0mhttps://data.safetycli.com/v/58755/f17[0m
[31m-> Vulnerability found in urllib3 version 1.26.8
[0m[1m Vulnerability ID: [0m61601
[1m Affected spec: [0m<1.26.17
[1m ADVISORY: [0mUrllib3 1.26.17 and 2.0.5 include a fix for CVE-2023-43804:
Urllib3 doesn't treat the 'Cookie' HTTP header special or provide any helpers
for managing cookies over HTTP, that is the responsibility of the user.
However, it is possible for a user to specify a 'Cookie' header and
unknowingly leak information via HTTP redirects to a different origin if that
user doesn't disable redirects explicitly.https://github.com/urllib3/urllib3/
security/advisories/GHSA-v845-jxx5-vc9f
[1m CVE-2023-43804[0m
[1m For more information, please visit
[0mhttps://data.safetycli.com/v/61601/f17[0m
[31m-> Vulnerability found in urllib3 version 1.26.8
[0m[1m Vulnerability ID: [0m61893
[1m Affected spec: [0m<1.26.18
[1m ADVISORY: [0mUrllib3 1.26.18 and 2.0.7 include a fix for CVE-2023-45803:
Request body not stripped after redirect from 303 status changes request
method to GET.https://github.com/urllib3/urllib3/security/advisories/GHSA-g4m
x-q9vg-27p4
[1m CVE-2023-45803[0m
[1m For more information, please visit
[0mhttps://data.safetycli.com/v/61893/f17[0m
Scan was completed. 5 vulnerabilities were found.
+==============================================================================+
[32m[1m REMEDIATIONS[0m
5 vulnerabilities were found in 3 packages. For detailed remediation & fix
recommendations, upgrade to a commercial license.
+==============================================================================+
[31m[22m Safety is using PyUp's free open-source vulnerability database. This
data is 30 days old and limited. [0m
[31m For real-time enhanced vulnerability data, fix recommendations, severity
reporting, cybersecurity support, team and project policy management and more
sign up at https://pyup.io or email sales@pyup.io[0m
+==============================================================================+[0m
___________________________________ summary ____________________________________
black: commands succeeded
cover: commands succeeded
flake8: commands succeeded
pylint: commands succeeded
safety: commands succeeded
congratulations :)
[Pipeline] fileExists
[Pipeline] step
[Cobertura] Publishing Cobertura coverage report...
[Cobertura] Publishing Cobertura coverage results...
[Cobertura] Cobertura coverage report found.
[Pipeline] fileExists
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Build)
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ runuser jenkins -c devops-stages/stage-build.sh
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Archive)
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ runuser jenkins -c mkdir -p changelog
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ runuser jenkins -c devops/tools/generatechangelog-pipeline.sh > changelog/changelog-osmclient.html
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ runuser jenkins -c devops-stages/stage-archive.sh
devops-stages/stage-archive.sh: 7: apt-ftparchive: not found
[Pipeline] getArtifactoryServer
[Pipeline] newBuildInfo
[Pipeline] artifactoryUpload
[consumer_0] Deploying artifact: https://artifactory-osm.etsi.org/artifactory/osm-osmclient/v10.0/365/dists/unstable/osmclient/binary-amd64/Packages.gz
[consumer_1] Deploying artifact: https://artifactory-osm.etsi.org/artifactory/osm-osmclient/v10.0/365/dists/unstable/osmclient/binary-amd64/Packages
[consumer_2] Deploying artifact: https://artifactory-osm.etsi.org/artifactory/osm-osmclient/v10.0/365/pool/osmclient/python3-osmclient_10.1.5%2Bg1ad0860-1_all.deb
[consumer_1] Deploying artifact: https://artifactory-osm.etsi.org/artifactory/osm-osmclient/v10.0/365/changelog/changelog-osmclient.html
Deploying build info to: https://artifactory-osm.etsi.org/artifactory/api/build
[Pipeline] publishBuildInfo
Deploying build descriptor to: https://artifactory-osm.etsi.org/artifactory/api/build
Build successfully deployed. Browse it in Artifactory under https://artifactory-osm.etsi.org/artifactory/webapp/builds/osmclient-stage_2-merge%20::%20v10.0/365
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ env
[Pipeline] step
Archiving artifacts
Recording fingerprints
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
$ docker stop --time=1 4f40f985bd93149f3ae94f0634c286e8d76555898678d92d0a57d6aa47fc776a
$ docker rm -f 4f40f985bd93149f3ae94f0634c286e8d76555898678d92d0a57d6aa47fc776a
[Pipeline] // withDockerContainer
[Pipeline] fileExists
[Pipeline] stage
[Pipeline] { (Snap build)
[Pipeline] withCredentials
[Pipeline] {
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ sudo rm -rf /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/stage/ /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/parts/ /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/prime/ /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/*.snap
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ sudo snapcraft clean --use-lxd
Starting Snapcraft 8.0.2
Logging execution to '/root/.local/state/snapcraft/log/snapcraft-20240126-110542.234760.log'
Running with 'sudo' may cause permission errors and is discouraged. Use 'sudo' when cleaning.
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ snapcraft --use-lxd
Starting Snapcraft 8.0.2
Logging execution to '/home/jenkins/.local/state/snapcraft/log/snapcraft-20240126-110544.187697.log'
Launching a container.
Waiting for container to be ready
Waiting for network to be ready...
Copying needed symlink target '/usr/bin/python3.8' from host to satisfy '/root/parts/client/install/bin/python3'.
Get:1 libwind0-heimdal_7.7.0+dfsg-1ubuntu1.4_amd64.deb [47.7 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libcurl4-openssl-dev_7.68.0-1ubuntu2.21_amd64.deb [322 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libcurl4_7.68.0-1ubuntu2.21_amd64.deb [235 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libnghttp2-14_1.40.0-1ubuntu0.2_amd64.deb [79.4 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libssh-4_0.9.3-2ubuntu2.5_amd64.deb [171 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libgssapi3-heimdal_7.7.0+dfsg-1ubuntu1.4_amd64.deb [96.5 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libheimbase1-heimdal_7.7.0+dfsg-1ubuntu1.4_amd64.deb [30.4 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libldap-common_2.4.49+dfsg-2ubuntu1.9_all.deb [16.6 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libsasl2-2_2.1.27+dfsg-2ubuntu0.1_amd64.deb [49.3 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libhx509-5-heimdal_7.7.0+dfsg-1ubuntu1.4_amd64.deb [107 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libmagic1_5.38-4_amd64.deb [75.9 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 librtmp1_2.4+20151223.gitfa8646d.1-2build1_amd64.deb [54.9 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libhcrypto4-heimdal_7.7.0+dfsg-1ubuntu1.4_amd64.deb [88.1 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 python3_3.8.2-0ubuntu2_amd64.deb [47.6 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libsasl2-modules-db_2.1.27+dfsg-2ubuntu0.1_amd64.deb [14.7 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libroken18-heimdal_7.7.0+dfsg-1ubuntu1.4_amd64.deb [42.5 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libasn1-8-heimdal_7.7.0+dfsg-1ubuntu1.4_amd64.deb [181 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libheimntlm0-heimdal_7.7.0+dfsg-1ubuntu1.4_amd64.deb [15.1 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libldap-2.4-2_2.4.49+dfsg-2ubuntu1.9_amd64.deb [155 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libbrotli1_1.0.7-6ubuntu0.1_amd64.deb [267 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libkrb5-26-heimdal_7.7.0+dfsg-1ubuntu1.4_amd64.deb [207 kB]
Fetched 0 B in 0s (0 B/s)
Get:1 libpsl5_0.21.0-1ubuntu1_amd64.deb [51.5 kB]
Fetched 0 B in 0s (0 B/s)
Updating pull step for client (source changed)
+ snapcraftctl pull
Updating build step for client ('pull' step changed)
++ git describe --match 'v*' --tags --long --dirty
+ VERSION=v10.1.5-0-g1ad0860
+ snapcraftctl set-version v10.1.5-0-g1ad0860
+ snapcraftctl build
+ python3 -m venv /root/parts/client/install
+ SNAPCRAFT_PYTHON_VENV_INTERP_PATH=/root/parts/client/install/bin/python3
+ pip install -U pip==21.0.1 setuptools==44.0.0
Collecting pip==21.0.1
Using cached pip-21.0.1-py3-none-any.whl (1.5 MB)
Requirement already up-to-date: setuptools==44.0.0 in /root/parts/client/install/lib/python3.8/site-packages (44.0.0)
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 20.0.2
Uninstalling pip-20.0.2:
Successfully uninstalled pip-20.0.2
Successfully installed pip-21.0.1
+ pip install -U -r requirements-dev.txt -r requirements.txt
Collecting osm-im@ git+https://osm.etsi.org/gerrit/osm/IM.git@v10.0
Cloning https://osm.etsi.org/gerrit/osm/IM.git (to revision v10.0) to /tmp/pip-install-mon21mic/osm-im_bfe62f37029f4e7cbc6938196c051784
Running command git clone -q https://osm.etsi.org/gerrit/osm/IM.git /tmp/pip-install-mon21mic/osm-im_bfe62f37029f4e7cbc6938196c051784
Running command git checkout -b v10.0 --track origin/v10.0
Switched to a new branch 'v10.0'
Branch 'v10.0' set up to track remote branch 'v10.0' from 'origin'.
Collecting bitarray==2.3.5
Using cached bitarray-2.3.5.tar.gz (88 kB)
Collecting enum34==1.1.10
Using cached enum34-1.1.10-py3-none-any.whl (11 kB)
Collecting lxml==4.7.1
Using cached lxml-4.7.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl (6.9 MB)
Collecting pyang==2.5.2
Using cached pyang-2.5.2-py2.py3-none-any.whl (595 kB)
Collecting pyangbind==0.8.1
Using cached pyangbind-0.8.1.tar.gz (48 kB)
Collecting pyyaml==5.4.1
Using cached PyYAML-5.4.1-cp38-cp38-manylinux1_x86_64.whl (662 kB)
Collecting regex==2021.11.10
Using cached regex-2021.11.10-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (764 kB)
Collecting six==1.16.0
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting certifi==2021.10.8
Using cached certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
Collecting charset-normalizer==2.0.10
Using cached charset_normalizer-2.0.10-py3-none-any.whl (39 kB)
Collecting click==8.0.3
Using cached click-8.0.3-py3-none-any.whl (97 kB)
Collecting idna==3.3
Using cached idna-3.3-py3-none-any.whl (61 kB)
Collecting jinja2==3.0.3
Using cached Jinja2-3.0.3-py3-none-any.whl (133 kB)
Collecting markupsafe==2.0.1
Using cached MarkupSafe-2.0.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (30 kB)
Collecting packaging==21.3
Using cached packaging-21.3-py3-none-any.whl (40 kB)
Collecting prettytable==3.0.0
Using cached prettytable-3.0.0-py3-none-any.whl (24 kB)
Collecting pycurl==7.44.1
Using cached pycurl-7.44.1.tar.gz (227 kB)
Collecting pyparsing==3.0.6
Using cached pyparsing-3.0.6-py3-none-any.whl (97 kB)
Collecting python-magic==0.4.24
Using cached python_magic-0.4.24-py2.py3-none-any.whl (12 kB)
Collecting requests==2.27.1
Using cached requests-2.27.1-py2.py3-none-any.whl (63 kB)
Collecting urllib3==1.26.8
Using cached urllib3-1.26.8-py2.py3-none-any.whl (138 kB)
Collecting verboselogs==1.7
Using cached verboselogs-1.7-py2.py3-none-any.whl (11 kB)
Collecting wcwidth==0.2.5
Using cached wcwidth-0.2.5-py2.py3-none-any.whl (30 kB)
Using legacy 'setup.py install' for osm-im, since package 'wheel' is not installed.
Using legacy 'setup.py install' for bitarray, since package 'wheel' is not installed.
Using legacy 'setup.py install' for pyangbind, since package 'wheel' is not installed.
Using legacy 'setup.py install' for pycurl, since package 'wheel' is not installed.
Installing collected packages: lxml, wcwidth, urllib3, six, regex, pyparsing, pyang, markupsafe, idna, enum34, charset-normalizer, certifi, bitarray, verboselogs, requests, pyyaml, python-magic, pycurl, pyangbind, prettytable, packaging, osm-im, jinja2, click
Running setup.py install for bitarray: started
Running setup.py install for bitarray: finished with status 'done'
Running setup.py install for pycurl: started
Running setup.py install for pycurl: finished with status 'done'
Running setup.py install for pyangbind: started
Running setup.py install for pyangbind: finished with status 'done'
Running setup.py install for osm-im: started
Running setup.py install for osm-im: finished with status 'done'
Successfully installed bitarray-2.3.5 certifi-2021.10.8 charset-normalizer-2.0.10 click-8.0.3 enum34-1.1.10 idna-3.3 jinja2-3.0.3 lxml-4.7.1 markupsafe-2.0.1 osm-im-10.1.5.post1+g8aef22e packaging-21.3 prettytable-3.0.0 pyang-2.5.2 pyangbind-0.8.1 pycurl-7.44.1 pyparsing-3.0.6 python-magic-0.4.24 pyyaml-5.4.1 regex-2021.11.10 requests-2.27.1 six-1.16.0 urllib3-1.26.8 verboselogs-1.7 wcwidth-0.2.5
WARNING: You are using pip version 21.0.1; however, version 23.3.2 is available.
You should consider upgrading via the '/root/parts/client/install/bin/python3 -m pip install --upgrade pip' command.
+ '[' -f setup.py -o -f pyproject.toml ']'
+ pip install -U .
Processing /root/parts/client/build
Using legacy 'setup.py install' for osmclient, since package 'wheel' is not installed.
Installing collected packages: osmclient
Running setup.py install for osmclient: started
Running setup.py install for osmclient: finished with status 'done'
Successfully installed osmclient-10.1.5+g1ad0860
WARNING: You are using pip version 21.0.1; however, version 23.3.2 is available.
You should consider upgrading via the '/root/parts/client/install/bin/python3 -m pip install --upgrade pip' command.
+ find /root/parts/client/install -type f -executable -print0
+ xargs -0 sed -i '1 s|^#\!/root/parts/client/install/bin/python3.*$|#\!/usr/bin/env python3|'
++ determine_link_target
+++ set +o +x
+++ grep xtrace
++ opts_state='set -o xtrace'
+++ dirname /root/parts/client/install/bin/python3
++ interp_dir=/root/parts/client/install/bin
+++ which python3
++ python_path=/root/parts/client/install/bin/python3
+++ readlink -e /root/parts/client/install/bin/python3
++ python_path=/usr/bin/python3.8
++ for dir in "${SNAPCRAFT_PART_INSTALL}" "${SNAPCRAFT_STAGE}"
++ echo /usr/bin/python3.8
++ grep -q /root/parts/client/install
++ for dir in "${SNAPCRAFT_PART_INSTALL}" "${SNAPCRAFT_STAGE}"
++ echo /usr/bin/python3.8
++ grep -q /root/stage
++ echo /usr/bin/python3.8
++ eval 'set -o xtrace'
+++ set -o xtrace
+ python_path=/usr/bin/python3.8
+ ln -sf /usr/bin/python3.8 /root/parts/client/install/bin/python3
++ find /root/parts/client/install -name __pycache__
++ xargs rm -r
++ xargs rm
++ find /root/parts/client/install -name RECORD
Cleaning later steps and re-staging client ('build' step changed)
+ snapcraftctl stage
Priming client
+ snapcraftctl prime
Snapping...
Snapped osmclient_v10.1.5-0-g1ad0860_amd64.snap
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ mv /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient_v10.1.5-0-g1ad0860_amd64.snap /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient.snap
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ sudo rm -rf /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/stage/ /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/parts/ /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/prime/
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ snapcraft push --release=10.0/edge osmclient.snap
Starting Snapcraft 8.0.2
Logging execution to '/home/jenkins/.local/state/snapcraft/log/snapcraft-20240126-110727.710445.log'
Uploading... (--->)
Uploading... (<---)
Status: processing
Status: processing
Status: processing
Status: processing
Status: processing
Status: released
Revision 1477 created for 'osmclient' and released to '10.0/edge'
[Pipeline] sh
[osmclient-stage_2-merge_v10.0] Running shell script
+ sudo rm -rf /home/jenkins/workspace/osmclient-stage_2-merge_v10.0/osmclient.snap
[Pipeline] }
[Pipeline] // withCredentials
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Finished: SUCCESS