forked from Controls/gitea-pages
79 lines
2.2 KiB
Markdown
79 lines
2.2 KiB
Markdown
# Draft Repository Design
|
|
|
|
## URL Patterns
|
|
|
|
All repo URLs for any operating system follow this patterns:
|
|
|
|
* https://repos.psi.ch/<os>/iso
|
|
* https://repos.psi.ch/<os>/tags/<tag>/<repo>
|
|
* https://repos.psi.ch/<os>/tags/<tag>/keys;
|
|
* https://repos.psi.ch/<os>/snapshots/<tag>/<repo>
|
|
* https://repos.psi.ch/<os>/snapshots/<tag>/keys
|
|
* https://repos.psi.ch/<os>/latest/<repo>
|
|
* https://repos.psi.ch/<os>/latest/keys;
|
|
|
|
The __<os>__ part is a combination of the __ID__ and __VERSION_ID__ variable inside the standard (see https://stackoverflow.com/questions/47838800/etc-lsb-release-vs-etc-os-release) /etc/os-release file. In some cases the VERSION_ID will be trunkated (especially for RHEL systems)
|
|
|
|
Example RHEL7 system:
|
|
```
|
|
[root]# cat /etc/os-release
|
|
[...]
|
|
ID="rhel"
|
|
VERSION_ID="7.9"
|
|
[...]
|
|
```
|
|
will result in __rhel7__.
|
|
|
|
Example Ubuntu system:
|
|
```
|
|
[root]# cat /etc/os-release
|
|
[...]
|
|
ID=ubuntu
|
|
VERSION_ID="22.04"
|
|
[...]
|
|
```
|
|
will result in __ubuntu22.04__.
|
|
|
|
|
|
For os independen firmware images we will have a "repos" like this:
|
|
|
|
* https://repos.psi.ch/firmware
|
|
* https://repos.psi.ch/firmware/<group>
|
|
|
|
|
|
### Examples
|
|
* https://repos.psi.ch/rhel7/iso
|
|
* https://repos.psi.ch/rhel7/tags/<tag>/<repo>
|
|
* https://repos.psi.ch/rhel7/tags/<tag>/keys;
|
|
* https://repos.psi.ch/rhel7/snapshots/<tag>/<repo>
|
|
* https://repos.psi.ch/rhel7/snapshots/<tag>/keys
|
|
* https://repos.psi.ch/rhel7/latest/<repo>
|
|
* https://repos.psi.ch/rhel7/latest/keys;
|
|
|
|
----
|
|
|
|
* https://repos.psi.ch/rhel8/iso
|
|
* https://repos.psi.ch/rhel8/tags/<tag>/<repo>
|
|
* https://repos.psi.ch/rhel8/tags/<tag>/keys
|
|
* https://repos.psi.ch/rhel8/snapshots/<tag>/<repo>
|
|
* https://repos.psi.ch/rhel8/snapshots/<tag>/keys
|
|
* https://repos.psi.ch/rhel8/latest/<repo>
|
|
* https://repos.psi.ch/rhel8/latest/keys
|
|
|
|
----
|
|
* ...
|
|
----
|
|
|
|
* https://repos.psi.ch/firmware/...
|
|
|
|
|
|
## Filesystem Layout
|
|
|
|

|
|
|
|
|
|
|
|
## Questions
|
|
* One RPM to enable/install supported yum repository
|
|
* Where do we provide our own rpm packages - lx-misc (currently pli-misc)
|
|
* How to know which systems are using which repos? (via rpm package list / hiera config / ... ?) |