Bug 2364 fixed: Performing NS-Heal when there are two NS with same member-vnf-index
[osm/osmclient.git] / snap / snapcraft.yaml
1 ---
2 ##
3 # Copyright 2020 ETSI
4 #
5 # Licensed under the Apache License, Version 2.0 (the "License"); you may
6 # not use this file except in compliance with the License. You may obtain
7 # a copy of the License at
8 #
9 #         http://www.apache.org/licenses/LICENSE-2.0
10 #
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
14 # License for the specific language governing permissions and limitations
15 # under the License.
16 ##
17 name: osmclient
18 base: core18
19 adopt-info: client
20 summary: A python client for orchestrating OSM
21 description: |
22   A python client for orchestrating Open Source Mano (OSM).
23
24 grade: stable
25
26 confinement: strict
27
28 environment:
29   LC_ALL: C.UTF-8
30   LANG: C.UTF-8
31
32 apps:
33   osm:
34     command: usr/bin/python3 $SNAP/usr/local/bin/osm
35     plugs:
36       - network
37       - home
38       - ssh-public-keys
39     environment:
40       PATH: $SNAP/usr/bin:$SNAP/bin/:$PATH:$SNAP/usr/local/bin/
41       PYTHONPATH: $SNAP/usr/lib/python3/dist-packages:$PYTHONPATH
42       MAGIC: $SNAP/usr/share/file/magic.mgc
43
44 parts:
45   client:
46     plugin: dump
47     source: .
48     build-environment:
49       - PATH: "$PATH:$SNAPCRAFT_PART_INSTALL/usr/local/bin"
50     build-packages:
51       - gcc
52       - git
53       - make
54       - wget
55       - libcurl4-openssl-dev
56       - libssl-dev
57     stage-packages:
58       - libmagic1
59       - python3
60       - python3-dev
61       - python3-pip
62       - python3-pycurl
63       - python3-setuptools
64     override-build: |
65       $SNAPCRAFT_PART_INSTALL/usr/bin/pip3 install wheel
66       $SNAPCRAFT_PART_INSTALL/usr/bin/pip3 install pyang
67       $SNAPCRAFT_PART_INSTALL/usr/bin/pip3 install pyangbind
68       PATH="$PATH:$SNAPCRAFT_PART_INSTALL/usr/local/bin"
69       BRANCH_OR_TAG=`git symbolic-ref -q --short HEAD || git describe --tags --exact-match 2>/dev/null || echo $BRANCH`
70       git clone https://osm.etsi.org/gerrit/osm/IM.git
71       cd IM/
72       git checkout $BRANCH_OR_TAG
73       $SNAPCRAFT_PART_INSTALL/usr/bin/pip3 install .
74       cd ../ && rm -rf IM/
75       $SNAPCRAFT_PART_INSTALL/usr/bin/pip3 install -r requirements.txt
76       $SNAPCRAFT_PART_INSTALL/usr/bin/pip3 install .
77       rm -rf .tox
78       snapcraftctl set-version $(git describe --match v* --tags --long --dirty)
79       snapcraftctl build