• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

openSUSE / agama / 10580973830
72%

Build:
DEFAULT BRANCH: master
Ran 27 Aug 2024 03:17PM UTC
Jobs 3
Files 877
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

27 Aug 2024 03:15PM UTC coverage: 71.68% (+8.3%) from 63.343%
10580973830

push

github

web-flow
feat(storage): API support for storage settings (#1471)

A JSON schema for the storage config is defined by
https://github.com/openSUSE/agama/pull/1455. This PR adds support to the
D-Bus API to allow setting a JSON config following that new JSON schema:

~~~
org.opensuse.Agama.Storage1
  #SetConfig s
  #GetConfig s
~~~

## `#SetConfig`

For now, the `#SetConfig` D-Bus method admits 3 different JSON formats
for the given JSON config:

* Guided config
~~~
{ "storage": { "guided": ... } }
~~~

* New storage config
~~~
{ "storage": { ... } }
~~~

* Legacy AutoYaST config

~~~
{ "legacyAutoyastStorage": [ ... ] }
~~~

The plan is to make `#SetConfig` and `#GetConfig` only to work with a
*storage config* or a *legacy AutoYaST config*. The *guided config* is
still accepted by `#SetConfig` because the new *storage config* does not
offer all the options offered by *guided config* yet.
 
In the future, the *guided config* will be neither accepted nor reported
by `#SetConfig` and `#GetConfig` respectively. Nevertheless, a D-Bus
method accepting the *guided config* will still be offered as a
simplification of the *storage settings* to make easier to work with the
use cases supported by the web UI.

## `#GetConfig`

Currently, `#GetConfig` reports different config formats depending on
how the proposal was calculated:

* For the initial proposal: reports the *guided config*.
* If `#SetConfig` was called with *guided config*: reports *guided
config* (extended with mandatory volumes, etc).
* If `#SetConfig` was called with *storage config*: reports exactly the
given *storage config*.
* If `#SetConfig` was called with *legacy AutoYaST config*: reports
exactly the given *legacy AutoYaST config*.
* If `Storage1.Proposal#Calculate` was called: reports the *guided
config* (extended with mandatory volumes, etc).

In the future, `#GetConfig` will only report either the *storage config*
or the *legacy AutoYaST config*.

1987 of 2868 branches covered (69.28%)

Branch coverage included in aggregate %.

102 of 110 new or added lines in 9 files covered. (92.73%)

44 existing lines in 3 files now uncovered.

21463 of 29847 relevant lines covered (71.91%)

35.98 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
98.18
2.47% service/lib/agama/storage/proposal.rb
7
78.33
-1.93% service/lib/agama/dbus/storage/manager.rb

Uncovered Existing Lines

Lines Coverage ∆ File
1
89.66
-0.67% service/service/lib/agama/storage/proposal_strategies/base.rb
2
98.18
2.47% service/service/lib/agama/storage/proposal.rb
41
78.33
-1.93% service/service/lib/agama/dbus/storage/manager.rb
Subprojects
ID Flag name Job ID Ran Files Coverage
3 service 10580973830.3 27 Aug 2024 03:17PM UTC 438
87.13
GitHub Action Run
3 rust 10580219585.3 27 Aug 2024 02:39PM UTC 96
24.27
GitHub Action Run
3 web 8937163624.3 03 May 2024 09:49AM UTC 343
75.3
GitHub Action Run
Source Files on build 10580973830
  • Tree
  • List 877
  • Changed 5
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #10580973830
  • d1a0e5af on github
  • Prev Build on master (#10580219585)
  • Next Build on master (#10597090423)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc