BETA "Built on openSUSE" Testing Channel Changelog

I am delighted, and somewhat relieved, to finally announce after more than 2 years of transition from our CentOS base, our first BETA release within our “Built on openSUSE” only testing channel.

We are, as yet, not quite at feature parity with our prior CentOS variant (Stable Channel) but getting very close. The intention is to finally offer a Stable Channel rpm for our “Built on openSUSE” rpms once we have this final beta testing phase completed successfully. As always there are wrinkles and one is that our current target disto Leap15.2 is still in beta; but this is our attempt to skate to where the puck is going. There after the testing channel for the Rockstor4 series will settle into the some what non trivial task of dealing with our other outstanding ‘out-of-date’ elements, Python and Django versions mainly, so it will return to being very much more developers only.

This forum thread picks up in part from the following thread but for a wider audience:

But as we still as yet only have private beta testing releases of our new ‘Built on openSUSE’ installer there are sill a few hoops to jump through. Currently they are all still as documented in the above early-adopters post.

And given we are now on the ‘last leg’ of this rather long and drawn out journey I’m also going to pickup from the following thread/post:

Given we are now deviating away from the CentOS base and can finally concentrate fully on our ‘Built on openSUSE’ endeavour; which is the future of the to-be Rockstor4 variant, I’ll begin this beta changelog thread.

Thanks to all those helping to support this endeavour, either via testing/code/doc contributions or via a Stable Channel subscription.

3 Likes

3.9.2-58

Released 20th May 2020

Reboot required

So this one is just a little tricky. As per this threads into, we have finally tackled one of the all time outstanding feature disparities between our current CentOS based Stable channel and our ongoing ‘same source’ ‘Built on openSUSE’ variant. This ongoing dual distro target approach has in many ways slowed our progress, but we absolutely depend on our Stable Channel subscribers to ‘keep the light on’ so we have maintained compatibility with both distro bases with a priority on our Stable Channel release. But as from this release, our source code is only intended to run on an openSUSE server install with the very specific configurations discussed in the “early-adopters” link. And as such we can finally make the fairly major changes required to support user share functionality on a boot-to-snap, aka rollback capable, system poll that is default on all openSUSE based installs when the system disk is greater than around 17.5 GB. Previously, and share created on the system pool of our ‘Built on openSUSE’ variant, assuming no other issues were in play, would seem to have been created as normal but disappear from the Web-UI upon browser refresh. There were in fact created as btrfs subvols but, as it turns out, in the wrong place. Primarily because were were just plain ‘doing it wrong’ on these boot-to-snapshot root rollback capable systems. Which leads me to a potential wrinkle here. If you are updating from a pre beta ‘Built on openSUSE’ version and you attempted to create a share on the system pool then you will have a little tidying up to do.

There is no migration of these prior user created ROOT pool shares as they were never functional within the Web-UI (as per the early adopter thread), unless you did not have a boot-to-snap config in play, and are only now actually persistent given we now no longer place them in the boot-to-snap root subvol, but more correctly within the @/ subvol akin to the also surfaced with the Web-UI “home”. Please note the following forum post if you want to clean up ‘by hand’ any previously inadvertently created shares in the ROOT pool:

But in all cases, with 3.9.2-58 onwards, post reboot, you should expect to see the following mount details, subvol wise, for the ROOT pool.

2-58-ROOT-mount

If you see mention of “snapshot” within that subvol for the ROOT pool then stuff is not going to work as intended. Look to the logs for clues and it could be that prior use of the ROOT pool, when we ‘did it wrong’ for the openSUSE may be the cause. And given we are now starting a fresh it may just be worth doing a fresh install anyway. Depending on your own btrfs / linux capabilities. Remember that this is our very first beta in the ‘Built on openSUSE’ endeavour and the testing channel is just that. A testing channel for our Stable release developments. We are trying to achieve production capable Stable Channel releases ultimately, via the well trodden but rarely sustainable open source development model. So if you do encounter any strangeness re ROOT system pool shares that is not covered in this announcement and it’s linked threads, then try a fresh start (re-install) beginning with this release or any that superseded it before reporting your issues. That way we have a known datum from which to work.

So, many words and may fixes to announce:

First off I would like to welcome first time contributor @kupan787 who has effectively updated our scrub reporting to include an ETA and observed rate by interpreting some upstream btrfs improvements, and when they are not found (i.e in when btrfs-progs is not quite new enought) the code adapts accordingly. Nice. This is a long planned Rockstor feature that is now finally here. So thanks again to @kupan787 for stepping up to this task. Aided by the venerable @Flox via a super helpfull code review or two.

The rest are as detailed in the linked issue and as can be seen @Flox, our intrepid forum moderator and code/doc/rock-on/forum contributor has been at it again. Dealing with three independant issues getting us ever close to our next Stable release. Thanks @Flox. And as a matter of interest my initial main pull request for this release (the ROOT shares thing) was also reviewed by @Flox, and lets just say I’m glad it was. Code reviewing is a major part of helping to develop better behaved software, so if anyone feels they can contribute in that fashion then do please step up whenever you see a pull request go in. On occasions a specific reviewer is requested but often times anyone with the capability to review the proposed changes and is able to build the code from source on the indicated distro is more than welcome to do so.

I would also like to thank recent forum member @freaktechnik, for stepping up to some early testing in our pre-beta testing channel related to this release. The SFTP issue referenced was submitted by them and they have now duely confirmed it’s fix.

So bit by bit and thanks to all those continuing to chip in here.

Finally, as always, a special thanks to all Stable channel subscribers without whom this whole endeavour would be unsustainable. The Rockstor 4 ‘Built on openSUSE’ days are nearing.

1 Like

3.9.2-59

Released 7th June 2020

Signing Key update required

I am delighted to be releasing our second ‘Built on openSUSE’ beta rpm version. The main upset (we are in the testing channel here) as per the header, is that we have a new signing key. This one is my fault as I wanted to get this chicken/egg problem over and done with for the next keys duration (5 years) before we began our new Stable channel releases. All that is required is to re-run the prior rpm key import command introduced in our ‘… early adopters…’ post. Namely:

rpm --import https://raw.githubusercontent.com/rockstor/rockstor-core/master/conf/ROCKSTOR-GPG-KEY

Then all should be set in this regard for the next 5 years (hopefully :slight_smile: ).

As usual all rpms were build natively on their target distro platforms but of note in this release is that our base openSUSE Leap15.2 distro has turned from it’s prior beta status to Release Candidate (RC), and Tumbleweed has been build, from the ground up, with gcc10.1. All build systems were fully updated prior to their respective build tasks so if you do have any issue make sure your systems are fully updated.

To the change points. Again, as usual, I would like to thank @Flox the intrepid, who in responsible for 2 of the 3 changes in this changelog:

I have already covered the new signing key, ready for the ‘Built on openSUSE’ Stable Channel re-launch, and as is our current focus both of @Flox’s linked issues also concern our pending re-launch. There has also been a few changes in our backend build system as we prepare for the pending Rockstor4 Stable Channel re-lanuch (Built on openSUSE only). @Flox has also been helping greatly with our closed beta installer release. We have a few odds and ends to sort on that front that has begun to slow our normal release cadance but once sorted we should be back to normal but with a shiny new installer.

Thanks also to all our testers. We do have a little way to go and I’m slowly working though my own backlog but we are getting there. If you have submitted a bug of late please be patient as this has ended up being quite the journey. Also note that we are now no longer able to build on CentOS. But as we are now almost at feature parity we should soon be able to recommend folks use our new installer anyway. A call will be put out here for beta installer testers shortly. But given our target re-launch distro platform is Leap 15.2 we have a few short weeks before it’s final release anyway. So do please keep the bug reports rolling and we can see what we can make of all this.

So in that light I would like, as usual, to thank our Stable Channel subscribers without whom this whole endeavour would be unsustainable. The Rockstor 4 ‘Built on openSUSE’ days are nearing.

6 Likes

3.9.2-60

Released 29th June 2020

Additional rpm dependencies

In this release I would like to welcome another new contributor, mcbridematt (on GitHub) with what was our 800th pull request merge in the main git repo. In this case an exciting move toward AArch64 compatibility; in which mcbridematt has non trivial expertise. Nice. Encouraged by this contribution and mcbridematt multi year interest in Rockstor behind the scenes, I’ve set to on popping in a couple of trivial arm64 compatibility improvements myself.

To the summary of changes:

And I would also like to thank forum members and intrepid testers @Azzazel, @Zonk, and @kupan787 for their reporting, and patience, with regard to the remaining change detailed above, that of Rockstor’s inability to allow for the removal of ‘detached’ disk in some (read a lot) of circumstances. This was predominantly cosmetic but was also a functional hole in our more recently re-vamped disk/pool management systems. And thanks as usual to our talented forum moderator and across the board contributor @Flox for also reviewing this long awaited fix. Please note that the Changelog entry within the rpm only includes the first “Fixes” link for this last detailed issue as we have an outstanding bug where our Web-UI can only link successfully to a single issue.

So thanks again to all our testers. We are getting there, bit by bit, but only with the continued help and experimentation of those happy to chip in where they can with their time and expertise. Your contributions are of course much appreciated. Soon we should be able to move an ‘earmarked’ rpm from testing to our ‘Built on openSUSE’ Stable channel repos. So again, please keep all bug reports rolling as we do, soon, need to move onto our ‘other’ technical debts of moving to Python 3 et al (read Tumblweed again). Which is the intended next focus for the testing channel once we have a workable ‘Built on openSUSE’ stable release rpm out and about.

Oh, and did I mention we have AArm64 rpms now; natively build, as per all our rpms, on their target distro and architecture. :sunglasses:

Finally; thanks to our Stable Channel subscribers, without whom this whole endeavour would be unsustainable. The Rockstor 4 ‘Built on openSUSE’ re-release is just around the corner, just in time for Leap 15.2’s official release.

3 Likes

4.0.0-0

Released 21st July 2020

Stable Release Candidate

So we finally have our very first Rockstor 4 release. As per the title, this is a proposed release candidate for finally beginning our ‘Built on openSUSE’ Stable channel re-launch. Our last stable channel update was 3.9.2-57 which was almost 3 month ago. And as some of you may have noticed we have, a little optimistically, aimed more recently at a release frequency of 1-2 week or months depending on testing or stable channel respectively. And given our Stable subscribers are critical to the continued existence of ‘The Rockstor project’ as it currently stands, I would very much like to quickly re-establish this critical element of Rockstor’s sustainability. Our CentOS releases became unworkable just a littler earlier than I had hoped, but the silver lining was that we were able to focus completely on rounding out our last 2 years of work in establishing our new distro base and that is what this release represents.

Please test, and report, as the sooner we establish what is hopefully a lack of show stoppers, the sooner we can finalise our preparations for beginning the hopefully far quicker next major task: project wide updates across the board of technologies. Aside, of course, from finally releasing our next installer which is planned for when we have the ‘Built on openSUSE’ stable channel in play. More on this soon.

The technical debt task is much needed and will inevitably break stuff but that is why we have the testing channel: and all our prior stable releases have been developed similarly from the testing channel. But do keep in mind that the degree of change required (Python 2 to 3, multiple Django changes, potential build method change etc) will likely cause significant delays to even our ability to build testing channel rpms, but as soon as we can again create half way workable rpms they will appear as updates within the testing channel. But I’m getting a little ahead of myself here.

To the summary of changes:

  • hide non functional auto update button until post re-launch fix. Fixes #2196 @phillxnet
  • avoid referencing incompatible subdir by-id device names. Fixes #2126 @phillxnet
  • add recognition of system disk & pool when on SD or MicroSD card. Fixes #2192 @phillxnet

The first of these was simply a removal, from the Web-UI, of a broken ‘enable auto update’ feature. We don’t want obviously broken stuff around in the Stable channel and I didn’t think we should delay our release and the much awaited new installer (awaiting the stable rpm) for what can, for the time being, be put on hold. Not quite the feature parity on that front but all in good time.

Then we have an issue reported from @bored_engineer re their advanced testing of our ‘Built on openSUSE’ variant on their big old Dell server with PERC/6i controller. This was a strange one but we got there in the end. Thanks again to @bored_engineer for their assistance and patience on this front. It seems our newer kernel/driver base from openSUSE was generating alternative by-id device names within a sub-directory that threw a spanner in the works. But we now ignore all these as a matter of course and have improved test coverage as a result.

Finally we have the very small. As some of you may have guessed, our pending new installer has a Pi4 target, an AArch64 machine, and during initial testing of this target, in real life, I found we failed to recognise microSD based system drives. But not any longer :slight_smile:.

So as indicated our focus is now switching to the final preparation of the new installer config with this or a soon to be released successor rpm pre-installed, along with all pending updates at the time of build. I will open a new thread requesting pre-release testing of this installer very shortly, directly after releasing the kiwi-ng config used to create it. But that is another story I will leave for that post.

I would like to thank all our testers for getting us this far; and if all looks to be OK with this 4.0 release rpm I will begin the Stable ‘Built on openSUSE’ channel updates by publishing the exact same rpm there also in a few days time. There after the testing channel updates are likely to be paused as we find our Python 3 feet with regard to our build system, but I hope there after to return to our documented release method once we are again able to build using the newer system we aim to update to.

Thanks also to our intrepid forum moderator and all-round contributor @Flox who has helped massively behind the scenes on our soon to be released kiwi-ng installer config.

As always ‘The Rockstor Project’ is almost entirely dependant on our Stable channel subscriptions for it’s continued existence in it’s present form. Subscribing to the Stable channel is a great way to support the project. Thanks again to our stable channel subscribers who keep all our Rockstor server lights on; in one way or another. As the current maintainer I am constantly looking for additional sustainable models for open source development but there are few examples that don’t involve out right sponsorship, which we don’t currently have. Do please feel free to make any suggestions you have on this topic by simply starting a forum thread as you see fit.

Enjoy …

3 Likes

Rockstor 4 Installer Recipe - now available

I’d just like to follow up on my:

Please see:

Enjoy some more …

4.0.1-0

Released 2nd August 2020

Stable Release Candidate 2

I am delighted to announce our second stable channel release candidate. We have had no reports of any show stoppers on 4.0.0-0 and we need to populate the Stable channel very shortly so this is both one of the largest and yet, at the same time smallest releases we can do. The aforementioned intrepid @Flox is solely responsibly for this one and I have resisted the temptation to slip any other changes in myself. That way we can still claim this release to have no intended functional change. Yet it changes significantly, syntactically, almost every single Python file in our entire project:

That is it. A massive undertaking that has cleared the way for cleaner pull request going forward that makes not intended change what-so-ever to our existing 4.0.0-0 release. But does serve to test upgrade from our recently released installer maker repo, previously post in this thread, once I’ve fixed that to it’s intended 4.0.0-0 rpm release. But I digress.

So do, as usual, report you findings re this rpm version as we are really hoping to promote this to the Stable Channel very shortly. And begin the much needed and much delayed process of moving to Python 3. A major element in formalising our python formatting as per this version sole focus.

Thanks again to @Flox for their sterling effort in this rather tedious, but necessary task.

So again, thanks for all testing reports, past and hopefully future and to our Stable Channel subscribers who make this entire venture possible. Please do consider subscribing to support our efforts as we enter our next stage of ‘Built on openSUSE’ releases and the inevitable performance and security enhancements that we get, and need, as we transition our entire technical ‘stack’ to something a little more modern on the version front.

Enjoy and on …