Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

move to multi-arch repos from leap 15.4 onwards #2458

Closed
phillxnet opened this issue Jan 4, 2023 · 3 comments
Closed

move to multi-arch repos from leap 15.4 onwards #2458

phillxnet opened this issue Jan 4, 2023 · 3 comments
Assignees

Comments

@phillxnet
Copy link
Member

We are currently (testing branch) in the final stages of preparing our first "Build on openSUSE" Leap 15.4 rpms, after having faced significant difficulties regarding our prior (master branch) legacy build system which have now been mostly addressed by:
"Replace Buildout with Poetry #2432" #2434
along with numerous follow-up patches in testing branch to date.

It is thus proposed that we now move our existing x86_64 repo to be a multi-arch repository as per our upstream openSUSE repositories, and drop our prior aarch64 specific repositories. Clearing the way for easier additional architecture expansion in for example the "riscv64" i.e RISC V 64bit, along with easing multi-arch instructions. And hopefully some simplification in our architecture sensitive code: of which there is very little outside our repo concerns address in this issue.

Currently our rpm repositories have the following structure (repo db files omitted for simplicity):

leap
│   ├── 15.2
│   │   ├── repodata
│   │   └── rockstor-4.1.0-0.x86_64.rpm
│   ├── 15.2_aarch64
│   │   ├── repodata
│   │   └── rockstor-4.1.0-0.aarch64.rpm
│   ├── 15.3
│   │   ├── repodata
│   │   ├── rockstor-4.1.0-0.x86_64.rpm
│   │   └── rockstor-4.5.0-0.x86_64.rpm
│   └── 15.3_aarch64
│       ├── repodata
│       ├── rockstor-4.1.0-0.aarch64.rpm
│       └── rockstor-4.5.0-0.aarch64.rpm
└── tumbleweed
    ├── repodata
    └── rockstor-4.0.1-0.x86_64.rpm

Noting here that our Tumbleweed repo also suffered from a build system failure in our prior (in master branch) use of buildout. It is hoped that our recent move to Poetry in the above referenced pr will, in turn, allow us also to approach Tumbleweed releases also. Although we have Python 2 difficulties still outstanding.

The proposed multi-arch structure would be as follows:

leap
│   ├── 15.4
│   │   ├── x86_64
│   │       └── rockstor-4.5.4-0.x86_64.rpm
│   │   ├── aarch64
│   │       └── rockstor-4.5.4-0.aarch64.rpm
│   │   └── repodata
tumbleweed
    ├── x86_64
         └── rockstor-4.5.4-0.x86_64.rpm
    ├── aarch64
         └── rockstor-4.5.4-0.aarch64.rpm
    └── repodata
@phillxnet phillxnet self-assigned this Jan 4, 2023
@phillxnet
Copy link
Member Author

From this issues original text it can be seen that we began providing aarch64 repos from Leap 15.2 onwards.
As such, given we are only leaving all existing repositories as-is, we should for this issue modify the code so existing 15.2 and 15.3 hosted systems continue to use the existing single arch repositories. However given 15.3 is already EOL we are not likely to release many more updates for that Leap version. But the intention is to at least get folks over to the newer Poetry built rpms, if possible. It is also noteworthy that we no longer release rpms for Leap 15.2 so we are only really considering 15.3 onwards in this issue.

@phillxnet
Copy link
Member Author

With the proposed in-development changes, to be submitted via linked pull request, we have:

Leap 15.3 before:

x86_64:

Rockstor-Testing    | Rockstor-Testing    | Yes     | (r ) Yes  | Yes     | http://updates.rockstor.com:8999/rockstor-testing/leap/15.3

aarch64:

Rockstor-Testing    | Rockstor-Testing    | Yes     | ( p) Yes  | Yes     | http://updates.rockstor.com:8999/rockstor-testing/leap/15.3_aarch64

Leap 15.3 after proposed change:

x86_64:

Rockstor-Testing    | Rockstor-Testing    | Yes     | (r ) Yes  | Yes     | http://updates.rockstor.com:8999/rockstor-testing/leap/15.3

aarch64:

Rockstor-Testing     | Rockstor-Testing   | Yes     | ( p) Yes  | Yes     | http://updates.rockstor.com:8999/rockstor-testing/leap/15.3_aarch64

So no change from 15.3 to 15.4 as intended.

Leap 15.4 after:

N.B. we haven't release a version before the proposed change) - MULTI-ARCH

x86_64:

Rockstor-Testing    | Rockstor-Testing    | Yes     | ( p) Yes  | Yes     | http://updates.rockstor.com:8999/rockstor-testing/leap/15.4

aarch64:

Rockstor-Testing    | Rockstor-Testing    | Yes     | ( p) Yes  | Yes     | http://updates.rockstor.com:8999/rockstor-testing/leap/15.4

phillxnet added a commit to phillxnet/rockstor-core that referenced this issue Jan 10, 2023
For 15.3 maintain existing arch specific x86_64 & aarch64
repositories. But for all newer leap releases configure
updates to be fetched from a multi-arch repository with
url as per our prior x86_64 format.

## Includes:
- minor variable name clarification.
- fresh black re-formatting.
phillxnet added a commit to phillxnet/rockstor-core that referenced this issue Jan 11, 2023
We use the "yum changelog rockstor" command to indicate
if an update is available, and to retrieve that updates
changelog for display within the Web-UI, along with the
version of the update. When moving to a mult-arch repo
this mechanism fails as older source rpms changelogs would
be shown and confused our existing parser. Fix by using
a *.src exclude in our Rockstor-{Testing,Stable).repo yum
repo definition files.
phillxnet added a commit that referenced this issue Jan 12, 2023
…_from_leap_15.4_onwards

move to multi-arch repos from leap 15.4 onwards #2458
@phillxnet
Copy link
Member Author

Closing as fixed by:
#2462

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant