Commit Graph

76 Commits

Author SHA1 Message Date
fperez f8716aa344 Add "proposed_repair_action" attr to event log file
Even when event logs have this attribute available, it is not being
logged in the /var/log/fm-event.log file. This could result in a lack
of certain information for external tools that use it.

Test Plan:
PASS: Build fm-common package and install it. Then, trigger an alarm
      with 'proposed_repair_action'. Verify its presence in the
      /var/log/fm-event.log
PASS: Raise an alarm without 'proposed_repair_action'. Check that
      the empty attribute is present.
PASS: Raise an alarm with a long 'proposed_repair_action'. verify that
      this message is not affecting other attributes.

Closes-Bug: 2042579

Change-Id: Ic27b840041872c3afd0be28e11556acf42a3d5a9
Signed-off-by: fperez <fabrizio.perez@windriver.com>
2023-11-02 19:07:49 +00:00
Takamasa Takenaka 8bd6e5b92d Validate fm manager socket fd before send a message
When fm manager is restarted, there is no mechanism to detect it
from fm api client side. As a result, when subcloud delete clear
alarm request is sent after fm manager is restarted, fm api client
will show broke pipe and clear alarm request is not received and
this alarm stays.

This fix is to check socket fd state before send/receive from
fm api client. If broken pipe is detected, it will try to
reconnect to fm manager.

Closes-bug: 2039684

Test Plan:
PASS: Restart fm manager and confirm that detect broken pipe
      and reconnect messages in /var/log. For example,
-----
sm: err fmSocket.cpp(270): A broken pipe error occurred
sm: warning fmAPI.cpp(116): Invalid file descriptor. Atte
mpting to reconnect...
sm: info fmAPI.cpp(149): Connected to FM Manager.
-----
PASS: Delete offline subcloud and confirm the alarm is
      removed.

Change-Id: Ibc0f4d96b5c0a385d8fedbc1acd23898f1cbea46
Signed-off-by: Takamasa Takenaka <takamasa.takenaka@windriver.com>
2023-10-19 15:18:17 -03:00
Agustin Carranza 496702c932 Add missing fields for Event traps
wrsEventMessage traps are being managed as wrsAlarmMessages.
Events do not contain wrsEventProposedRepairAction and
wrsEventSuppressionAllowed fields, so they need to generate a default
value in FM.
This commit adds those fields in order to create the event traps
with the same format as the alarm traps.

Depends-on: https://review.opendev.org/c/starlingx/snmp-armada-app/+/892624

Partial-bug: 2032844

Signed-off-by: Agustin Carranza <agustin.carranza@windriver.com>
Change-Id: I58577406cc75c597f6f430015ddd51d0029d4539
2023-08-31 12:01:35 -03:00
Al Bailey a425fa6626 Support newer version of yaml
yaml.load will report a warning in pyyaml 5 and an error
in pyyaml 6 if it is called without a Loader argument.

The no-member pylint error was being suppressed due to
legacy http code, so now that is un-suppressed globally
and the yaml.load is replaced with yaml.safe_load

Test Plan:
  PASS: tox
  PASS: yaml.load('events.yaml') returns the same content
       as yaml.safe_load('events.yaml')

Story: 2010642
Task: 48157
Signed-off-by: Al Bailey <al.bailey@windriver.com>
Change-Id: Ibac118cd9555f3334251b10a6b3e0a5986285854
2023-05-31 16:36:27 +00:00
Al Bailey 60ab3f6b45 Update debian package versions to use git commits
The Debian packaging has been changed to reflect all the
git commits under the directory, and not just the commits
to the metadata folder.

This ensures that any new code submissions under those
directories will increment the versions.

All packages have a higher version than before the change.

Test Plan:
  PASS: build-pkgs -c -p fm-api
  PASS: build-pkgs -c -p fm-common
  PASS: build-pkgs -c -p fm-doc
  PASS: build-pkgs -c -p fm-mgr
  PASS: build-pkgs -c -p fm-rest-api
  PASS: build-pkgs -c -p python-fmclient

Story: 2010550
Task: 47226

Signed-off-by: Al Bailey <al.bailey@windriver.com>
Change-Id: I65e881ba96512d2eaba25c44332d5ae82efea502
2023-02-09 18:06:57 +00:00
Enzo Candotti cd0f5c38c2 Add stx-fm-rest-api loci image
This change reorganizes the source directories of the stx-fm-rest-api
container to be reused by both CentOS and Debian Dockerfiles in order
to build the images having the corresponding OS-specic base.

As part of this, the fm-api, fm-rest-api, fm-common and
python-fmclient packages have been ported in order to generate deb
files that contain .whl.

Test plan:
PASS: Build debian iso and perform fresh install. Verify fm commands are
working as expected.
PASS: Build python3 wheels tarball on Debian. Verify fm, fm_api, fm_core
and fmclient .whl files are added.
PASS: Build Debian-based container and push it to a public registry.
Apply openstack application and update the fm-rest-api url to pull
this new image. Verify that:
    - pods are up and running with the new image/tag specified.
    - the container is running on Debian.
    - from inside the container, fm querys are working as expected.

Story: 2009831
Task: 46634

Depends-On: https://review.opendev.org/c/starlingx/config/+/862498

Signed-off-by: Enzo Candotti <enzo.candotti@windriver.com>
Change-Id: I2b35139f8775141e39f97a5a6037c5de2b4d5d76
2022-10-27 15:29:06 +00:00
Joao Victor Portal 74d56e72a0 Restrict fmClientCli binary permissions
The fmClientCli binary can create and delete alarms freely on the
system, so the access to this binary should be restricted to Linux admin
users.

Test Plan:

PASS: Deploy an AIO-SX using a Debian image containing this change and
check that the permissions for file "/usr/local/bin/fmClientCli" is
"-rwxr-x---" and the owner:group is root:root.
PASS: Repeat the test above using a CentOS image.

Closes-Bug: 1991118
Signed-off-by: Joao Victor Portal <Joao.VictorPortal@windriver.com>
Change-Id: I0375ddc68ae1b5967447a326780272f77695793a
2022-09-28 11:19:55 -03:00
Takamasa Takenaka ad1d95fdf5 Add UUID in SNMP trap
FM sends alarm information for SNMP trap but it is lacking
Alarm UUID, which needs to identify the alarm.
This fix is adding uuid for all type of trap information.

Closes-bug: 1971626

TEST PLAN:
PASS: Confirm UUID is included in trap information
      in log /var/log/fm-manager.log.
      [Trap type]
      - wrsAlarmCritical
      - wrsAlarmMajor
      - wrsAlarmMinor
      - wrsAlarmWarning
      - wrsAlarmMessage
      - wrsAlarmClear
      - wrsAlarmHierarchicalClear

Signed-off-by: Takamasa Takenaka <takamasa.takenaka@windriver.com>
Change-Id: I3e2b7e4a6a07876ff08e6a13d46d50285465a6b2
2022-05-04 17:25:56 -03:00
Dan Voiculeasa 4a55539a8b debian: Fix fm-common binaries location
Keep the same binary location as on CentOS.
An fm component was updated to produce binaries to correct location,
but fm-common component was missed. Alarms could not be raised by sm.

Tests:
PASS: bootstrap
PASS: unlock
PASS: alarms are raised by sm

Story: 2009101
Task: 44321
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: I56eb2a5cd69c643d477fba20a7344cd51be5444d
2022-04-12 21:32:22 +00:00
fperez e9ba02ab5c Fixing logging for python scripts - FM
This commit complements the previous commit with
same topic:
https://review.opendev.org/c/starlingx/fault/+/815381

This particular commit improves the log inside the
python script, considering others possible fails.

Also, some verifications are added in fmDbUtils class
wich calls the script.

Test Plan:

Log in (/var/log/platform.log):
PASS: Log arguments error calling script.
PASS: Log new database connection problems.
PASS: Log Session commit problems.
PASS: Log problems opening "/etc/fm/events.yaml" file.

Log (in /var/log/fm-manager.log):
PASS: Log Problems opening fm_db_sync_event_suppression.py file.
PASS: Log problems running fm_db_sync_event_suppression.py.

PASS: build and install package.

Closes-bug: 1932324

Signed-off-by: fperez <fabrizio.perez@windriver.com>
Change-Id: I913d6d1282bea346f87f73179f0738c0c17d7446
2021-12-23 14:49:21 -03:00
Heitor Matsui f79b9a9748 Use alternate log handler if running in container
Currently the log is written to syslog, which in turn uses a
socket /dev/log from the platform, but when running in a container
such as in the stx-openstack application this log handler is not
available.

This commit uses an environment variable to be set on the
fm-rest-api deployment definition to determine if it must the syslog
handler, which is the case when running on the platform, or write the
log to standard output, which is the case when running inside a
container.

Closes-Bug: 1951579
Signed-off-by: Heitor Matsui <HeitorVieira.Matsui@windriver.com>
Change-Id: I3f2fe2953fb26ad1759f3bc10a358cb9d093192f
2021-11-19 10:07:36 -03:00
Zuul 658ff11127 Merge "Fix lintian errors" 2021-11-09 14:09:59 +00:00
Dan Voiculeasa 6af325e235 Fix fm-common build
A commit introducing a new file broke the debian build, complaining the
file is not installed.

Add to .install, so it is packaged.

Depends-On: https://review.opendev.org/c/starlingx/fault/+/815381
Story: 2009101
Task: 43090
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: I4e0652918d7db251b54ede75cfac83d4b18c6ec4
2021-11-04 10:25:42 +00:00
Charles Short 2005768378 Fix lintian errors
Fix lintian error when building Debian package.

Story: 2009101
Task: 43090

Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: I16fabf0b1ca86484ba525461ed2aa0cd53e27ac7
2021-11-02 13:54:00 -04:00
fperez 54d7e69213 Fixing logging for python scripts - FM
This commit changes the log when FmManager
calls fm_db_sync_event_suppression.py python script.

The logInfo function is not used anymore to write
on /var/log/platform.log. Instead, fm_log.py is used.
This solves the permissions issues between the python
script and platform.log

Besides, others possible fails are logged.

Test Plan:

PASS: Log on platform.log from the python script.
PASS: Log differents log levels.
PASS: Log arguments error.
PASS: Log database connection problems.
PASS: build and install rpm package

Closes-bug: 1932324

Signed-off-by: fperez <fabrizio.perez@windriver.com>
Change-Id: I07c6340e7e9b61fc0f8f8d62e5d5cd7565f265cd
2021-11-01 12:56:19 -03:00
Zuul a88cc50dab Merge "Convert fm-common to new debian pkg system" 2021-10-19 23:20:05 +00:00
Charles Short b564292054 Convert fm-common to new debian pkg system
Convert fm-common to use the new debian packaging infrastructure.

Story: 2009101
Task: 43090

Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: I4c53d8b446504a4ef7ac407fa063f6a328e1dc3d
2021-10-19 12:36:58 -04:00
Charles Short c548d99b51 Fix fm-common build on Debian
Debian point release 11.1 was done over the weekend which caused
fm-common's Makefile to only detect python2.7 rather than python3.9.
Make sure we are only detecting the os release and not the version
number.

Task: 2009101
Story: 43601

Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: I387b0a5436048dc13576d658aa34b5b0db5271ac
2021-10-12 13:30:20 -04:00
Charles Short 1c07d75320 Fix python3.9 building
PyString_FromString has been removed from python3.9,
use PyUnicode_FromString instead since its backwards
compatible with python2.7.

Story: 2009101
Task: 43219

Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: I9535e0f36d56dd5ae15c1ffea27fdf0877de0484
2021-09-21 17:37:48 +00:00
Charles Short 2c824df0a3 Add support for python3.9
Add support for Debian bullseye and python3.9 support.
Tested by compiling on both Centos7 and Debian bullseye.

Story: 2009101
Task: 43052

Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: I91e40dbe4df6ca0ed7951d47733ebf34856ae3ac
2021-08-19 08:52:40 -04:00
Shuicheng Lin 83f5caa9b7 CentOS 8: update fm-common to use python3
1. change python2 rpms to python3 version.
2. update Cpython code to use new API in python3

Test:
Could pass rpm package build for fm-common

Story: 2007065
Task: 37942

Change-Id: Ie0490118bcc891c2e994b3eeb6efab24ac7951cb
Signed-off-by: Shuicheng Lin <shuicheng.lin@intel.com>
(cherry picked from commit a2af71b867)
2021-08-16 18:04:39 -05:00
Zuul 53977f2898 Merge "fm-common: updated initfm_core to PyInit_fm_core" 2021-08-16 19:53:59 +00:00
Haiqing Bai 0da6a24471 fm-common: updated initfm_core to PyInit_fm_core
According with python 3 migration rules:
PyMODINIT_FUNC init<yourmodulename>(void)
has changed to below in Python 3:
PyMODINIT_FUNC PyInit_<yourmodulename>(void)
otherwise there is below issue:
CRITICAL sysinv [-] Unhandled error: ImportError: dynamic module does not define module export function (PyInit_fm_core)
ERROR sysinv Traceback (most recent call last):
ERROR sysinv   File "/usr/bin/sysinv-puppet", line 10, in <module>

Story: 2008454
Task: 41440

Signed-off-by: Haiqing Bai <haiqing.bai@windriver.com>
Change-Id: Id51da7f328b41ec389cf2e073db7ff6617398339
(cherry picked from commit cd1487e1a5)
2021-08-16 15:24:37 -04:00
Dan Voiculeasa 6ad32bbfd0 Fix fm alarm-list and fm alarm-summary
Fixed a typo for accessing a configuration resource.
Fixed a python3 script called by fmManager on initialization. It was
modifying a dictionary while parsing it using an iterator, which doesn't
guarantee all initial elements are visited. The fm database
event_suppression table was left in a bad state, thus alarm list and
alarm summary were empty.

Tests:
  - build and deploy from iso
  - tested with the fm_api_test.py provided in the repo
  - tested some of the commands by raising a config out of date and
targeting the raised alarm
  - fm alarm-list, alarm-delete, alarm-show, alarm-summary, event-list,
event-show, event-suppress-list, event-suppress, event-unsuppress,
event-unsuppress-all produce relevant output

Story: 2008454
Task: 42632
Depends-On: I2d0f4c2c85ea8057258d56632a102b2eac7db388
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: Ib3d5276c4a669a3f3f123470c31edf7a07751eaa
(cherry picked from commit c18a7865c6)
2021-08-16 15:17:56 -04:00
Charles Short 9cda408a59 Fix compilation on python2
Fix compilation error on python2.

Story: 2006796
Task: 42877

Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: I55de8687ed3ea844a2099974a1845f6326b77a5a
(cherry picked from commit 085feb6096)
2021-08-04 11:23:18 -04:00
Zuul 4a68317f4a Merge "Update FM Manager old net-snmp related code" 2021-01-25 16:10:31 +00:00
albailey 08130cd625 Fix zuul jobs broken due to pip upversion
python 2.7 zuul jobs such as py27 and pylint could fail
when trying to import bandit using the new pip
since bandit 1.7 was released Dec 12 and is python3 only.

The cpp file header was only changed in this review to
trigger the appropriate zuul jobs.

Partial-Bug: #1907678
Change-Id: Idb1e97d16773d36027d29f4eb100d8b453a8069f
Signed-off-by: albailey <Al.Bailey@windriver.com>
2020-12-18 08:41:07 -06:00
pablo bovina dc14a2a3ad Update FM Manager old net-snmp related code
Now a service outside of Fault is in charge
of trap generation, this new service manages
the SNMP configuration trap destinations,
communities, users etc.

For this reason the code that reads and stores
the SNMP configuration from fm.conf is removed.

Story: 2008132
Task: 41419

Depends-On: https://review.opendev.org/765381
Change-Id: If27f4f04f9dfc37e7404d593e3b337cbbb361552
Signed-off-by: Pablo Bovina <pablo.bovina@windriver.com>
2020-12-17 10:03:38 -03:00
Pablo Bovina 8e74a0ee1e Reimplementation logic for trap generation
In the current implementation "Fault" is responsible
for the generation and dispatch of traps.

This logic is removed from it, leaving only the
responsibility of sending the metadata of a trap
to a service dedicated to generating and sending them.

The fm.conf file will contain the IP and port values
of the service.

Story: 2008132
Task: 40867
Depends-On: https://review.opendev.org/761217

Change-Id: I575dfa2329f11821404ca4cb1d539e5189444b4e
Signed-off-by: Pablo Bovina <pablo.bovina@windriver.com>
2020-12-08 18:37:50 -03:00
Lu Yao Chen 0703f48452 Hide sensitive information from fm-manager logs
Checks for key, will not log to /var/log/fm-manager.log
if key is password or connection, these fields contain
sensitive information.

Partial-Bug: 1896116

Change-Id: Ide879ecf3b81133c26f20b0854e796998429f279
Signed-off-by: Lu Yao Chen <luyao.chen@windriver.com>
2020-11-19 13:52:37 -05:00
Teresa Ho 679475b06f Add auto-versioning to starlingx/fault packages
This update changed the TIS_PATCH_VER to use the PKG_GITREVCOUNT
variable to auto-version the packages.

Adds an upper constraint to fm-rest-api to pass zuul.

Story: 2006740
Task: 39842

Change-Id: I4a180f1395ff9764ecc9d617a514e265db670b9c
Signed-off-by: Teresa Ho <teresa.ho@windriver.com>
2020-05-27 15:19:34 -04:00
Zuul 428940fad1 Merge "Remove dcorch-snmp" 2020-04-08 13:09:12 +00:00
Sharath Kumar K c63ad80c23 De-branding in starlingx/fault: Titanium Cloud -> StarlingX
1. Rename Titanium Cloud to StarlingX for .spec files
2. Rename Titanium Cloud to StarlingX for .service file

Test:
After the de-brand change, bootimage.iso has built in the flock layer
and installed on the dev machine to validate the changes.

Please note, doing de-brand changes in batches, this is batch2 changes.

Change-Id: I63ab8cda38c45240198f37d1f30c95e0b02da3e1
Story: 2006387
Task: 36204
Signed-off-by: Sharath Kumar K <sharath.kumar@intel.com>
2020-04-03 08:24:26 +02:00
Gerry Kopec 2b08423378 Remove dcorch-snmp
dcorch-snmp process/service is being removed from distributed cloud.
Remove hook in fm.

Change-Id: I74e82110b147680c8c9eb0c0f100b459cef4513a
Story: 2007267
Task: 39193
Depends-On: https://review.opendev.org/#/c/715765
Signed-off-by: Gerry Kopec <gerry.kopec@windriver.com>
2020-03-30 01:47:10 -04:00
Erich Cordoba 61d9addb2c Delete _service files from git.
These files are part of OBS infrastructure and shouldn't be part of
this repository.

Story: 2006508
Task: 36862

Change-Id: I8cc056a49a888352d8dbb03b2a55e86549e6a45a
Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
2019-09-30 13:27:21 -05:00
Zuul c0c901620a Merge "Adding rpmlintrc files for opensuse building" 2019-09-30 15:51:07 +00:00
Erich Cordoba 6da9811491 Set version to 1.0.0 in opensuse specfiles
All opensuse version are being standardize with the same format,
this requires that all components will change from 1.0 to 1.0.0.

Story: 2006508
Task: 36811

Change-Id: I301759895e4ed816633daa6595d5f60f2f1d59c7
Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
2019-09-25 15:35:15 -05:00
Zuul 06afa39e78 Merge "Fix indentation and style issues in fm-common/fmConfig.cpp" 2019-09-25 18:02:40 +00:00
Erich Cordoba c9755220c3 Adding rpmlintrc files for opensuse building
The rpmlintrc files helps to configure the behavior of the rpm linter
executed by the opensuse build system. This patch adds the rpmlintrc
files that were defined in the opensuse build system.

Story: 2006508
Task: 36799

Change-Id: If75264e809bb78bbcff1dd474b1a5fc1819ac193
Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
2019-09-25 06:16:04 -05:00
Erich Cordoba 6f0ec9c4fc Change %autosetup for opensuse specfiles
As the tarballs are now created by the _service definition in the
opensuse build system, it requires now to include the specfiles
within the tarballs. This means that the `-n` option needs to be
set for `%autosetup`.

Story: 2006508
Task: 36780

Change-Id: Ib89a440d4911200ead2a3a35d731564e86b0b447
Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
2019-09-24 15:17:28 -05:00
Erich Cordoba a6000b1f3b Fix indentation and style issues in fm-common/fmConfig.cpp
Indentation issues were solve for `fmConfig.cpp`. The cpplint
command below doesn't show issues.

$ cpplint \
--filter=-readability/casting,-runtime/references \
fmConfig.cpp

The filtered out checks may introduce functionality changes so those
weren't fixed in this patch but planned for later phase.

Story: 2006425
Task: 36735

Change-Id: Icbc9dd26a3f0cb0ee4e16bba715fa0e57ab4b61f
Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
2019-09-20 08:15:41 -05:00
Zuul 206e5c4745 Merge "Fix indentation and style issues in fm_cli" 2019-09-18 13:50:08 +00:00
Zuul 8c2ff87e57 Merge "Fix indentation and style issues in fmAlarmUtils" 2019-09-18 13:47:39 +00:00
Erich Cordoba 79b32861f0 Change tarball extension from xz to gz in opensuse specfiles.
In the opensuse build system (OBS) the `_service` files are being
standardized to generate tarballs with gz compression. The fault's
specfiles were created before this decision, therefore an update
in the extension is required.

Story: 2006508
Task: 36670

Change-Id: I96cb185a9a0e089e4f8e184e8fdeaa709f77915e
Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
2019-09-17 17:30:00 -05:00
Erich Cordoba c905ae2c55 Fix indentation and style issues in fmAlarmUtils
Several indentation issues were solved, also some style was applied
to improve code's readability.

cpplint is being used to get all these warnings, however there are
some warnings that were suppressed. This means that this file still
has the following issues:

- line length > 80 characters
- C casting in C++ code
- References that can be const or pointers

These issues will be solved in a next iteration as are more intrusive
with the code.

No functionality changes were done.

Story: 2006425
Task: 36322

Change-Id: I4a2d3bcf9a13e0ce2659cc9a8211fc727b34d80e
Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
2019-09-17 00:22:37 -05:00
Erich Cordoba b7fa9d7bcc Fix indentation and style issues in fm_cli
Several indentation issues were solved, also some style was applied
to improve code's readability.

No functionality changes were done.

Story: 2006425
Task: 36322

Change-Id: I908ce18cb68ddcb96239866e720a82757a058691
Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
2019-09-16 23:35:47 -05:00
Erich Cordoba f9ba635bfd Fix indentation and style issues in fmAPI
Several indentation issues were solved, also some style was applied
to improve code's readability.

No funcionality changes were done.

Story: 2006425
Task: 36322

Change-Id: Ie3339ed10254a053a2e26397337c45dfa2d552bd
Signed-off-by: Erich Cordoba <erich.cordoba.malibran@intel.com>
2019-08-22 10:53:15 -05:00
David Sullivan 5e4774768b snmp traps missing for customer logs
The Customer Log Table was removed in a prior change and the customer
log MIB object identifiers are no longer available. This change replaces
the customer log identifiers with the event identifiers.

Change-Id: Ia8a9c5250744f4206d57c309d26c9398ff01fcba
Closes-Bug: 1828453
Signed-off-by: David Sullivan <david.sullivan@windriver.com>
2019-07-31 21:44:30 -04:00
Saul Wold 59aa18cf57 Add openSUSE spec files
This commit adds the RPM specfile that supports openSUSE, these
include the _service file which creates the tarball, the changes
files and specfile itself.

These are all built via the OpenBuildService (OBS) and can be
found here:

https://build.opensuse.org/project/show/Cloud:StarlingX:2.0

Change-Id: I676aae8cb9554eab2740232fd0dd77e0ed876506
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2019-06-20 15:53:29 -07:00
Zuul 61b41926be Merge "Use StarlingX mail list as Package Maintainer for Debian" 2019-06-13 20:47:47 +00:00