chore: merge devel -> main

This commit is contained in:
Louis Abel 2022-10-10 11:54:24 -07:00
commit 171cb7f2c7
Signed by: label
GPG Key ID: B37E62D143879B36
64 changed files with 4113 additions and 394 deletions

View File

@ -57,7 +57,7 @@ RUN rm -rf /etc/yum.repos.d/*.repo /get_arch
RUN pip install awscli
ARG BRANCH r9
ARG BRANCH=r9
RUN git clone https://git.resf.org/sig_core/kickstarts.git --branch $BRANCH /kickstarts
RUN pip install 'git+https://git.resf.org/sig_core/toolkit.git@devel#egg=empanadas&subdirectory=iso/empanadas'

View File

@ -1 +1 @@
__version__ = '0.2.0'
__version__ = '0.4.0'

View File

@ -0,0 +1,137 @@
---
'8':
fullname: 'Rocky Linux 8'
revision: '8.7'
rclvl: 'RC1'
major: '8'
minor: '7'
profile: '8'
bugurl: 'https://bugs.rockylinux.org'
checksum: 'sha256'
fedora_major: '20'
allowed_arches:
- x86_64
- aarch64
provide_multilib: False
project_id: '26694529-26cd-44bd-bc59-1c1195364322'
repo_symlinks:
devel: 'Devel'
NFV: 'nfv'
renames:
all: 'devel'
all_repos:
- 'BaseOS'
- 'AppStream'
- 'PowerTools'
- 'HighAvailability'
- 'ResilientStorage'
- 'RT'
- 'NFV'
- 'extras'
- 'devel'
- 'plus'
structure:
packages: 'os/Packages'
repodata: 'os/repodata'
iso_map:
xorrisofs: False
iso_level: False
images:
dvd:
disc: True
variant: 'AppStream'
repos:
- 'BaseOS'
- 'AppStream'
minimal:
disc: True
isoskip: True
repos:
- 'minimal'
- 'BaseOS'
variant: 'minimal'
BaseOS:
disc: False
isoskip: True
variant: 'BaseOS'
repos:
- 'BaseOS'
- 'AppStream'
lorax:
repos:
- 'BaseOS'
- 'AppStream'
variant: 'BaseOS'
lorax_removes:
- 'libreport-rhel-anaconda-bugzilla'
required_pkgs:
- 'lorax'
- 'genisoimage'
- 'isomd5sum'
- 'lorax-templates-rhel'
- 'lorax-templates-generic'
- 'xorriso'
cloudimages:
images:
EC2:
format: raw
GenericCloud:
format: qcow2
livemap:
git_repo: 'https://git.resf.org/sig_core/kickstarts.git'
branch: 'r8'
ksentry:
Workstation: rocky-live-workstation.ks
Workstation-Lite: rocky-live-workstation-lite.ks
XFCE: rocky-live-xfce.ks
KDE: rocky-live-kde.ks
allowed_arches:
- x86_64
required_pkgs:
- 'lorax-lmc-novirt'
- 'vim-minimal'
- 'pykickstart'
- 'git'
variantmap:
git_repo: 'https://git.rockylinux.org/rocky/pungi-rocky.git'
branch: 'r8-beta'
git_raw_path: 'https://git.rockylinux.org/rocky/pungi-rocky/-/raw/r8-beta/'
repoclosure_map:
arches:
x86_64: '--forcearch=x86_64 --arch=x86_64 --arch=athlon --arch=i686 --arch=i586 --arch=i486 --arch=i386 --arch=noarch'
aarch64: '--forcearch=aarch64 --arch=aarch64 --arch=noarch'
ppc64le: '--forcearch=ppc64le --arch=ppc64le --arch=noarch'
s390x: '--forcearch=s390x --arch=s390x --arch=noarch'
repos:
BaseOS: []
AppStream:
- BaseOS
PowerTools:
- BaseOS
- AppStream
HighAvailability:
- BaseOS
- AppStream
ResilientStorage:
- BaseOS
- AppStream
RT:
- BaseOS
- AppStream
NFV:
- BaseOS
- AppStream
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release/-/raw/r8/'
branch: 'r8'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-rockyofficial'
testing: 'SOURCES/RPM-GPG-KEY-rockytesting'
list:
- 'SOURCES/COMMUNITY-CHARTER'
- 'SOURCES/EULA'
- 'SOURCES/LICENSE'
- 'SOURCES/RPM-GPG-KEY-rockyofficial'
- 'SOURCES/RPM-GPG-KEY-rockytesting'
...

View File

@ -1,21 +1,24 @@
---
'8':
fullname: 'Rocky Linux 8'
revision: '8.6'
rclvl: 'RC2'
revision: '8.7'
rclvl: 'RC1'
major: '8'
minor: '6'
minor: '7'
profile: '8'
bugurl: 'https://bugs.rockylinux.org'
checksum: 'sha256'
fedora_major: '20'
allowed_arches:
- x86_64
- aarch64
provide_multilib: False
project_id: ''
project_id: 'e9cfc87c-d2d2-42d5-a121-852101f1a966'
repo_symlinks:
devel: 'Devel'
NFV: 'nfv'
renames: {}
renames:
all: 'devel'
all_repos:
- 'BaseOS'
- 'AppStream'
@ -27,23 +30,6 @@
- 'extras'
- 'devel'
- 'plus'
- 'rockyrpi'
no_comps_or_groups:
- 'extras'
- 'devel'
- 'plus'
- 'rockyrpi'
comps_or_groups:
- 'BaseOS'
- 'AppStream'
- 'PowerTools'
- 'HighAvailability'
- 'ResilientStorage'
- 'RT'
- 'NFV'
has_modules:
- 'AppStream'
- 'PowerTools'
structure:
packages: 'os/Packages'
repodata: 'os/repodata'
@ -93,7 +79,7 @@
format: qcow2
livemap:
git_repo: 'https://git.resf.org/sig_core/kickstarts.git'
branch: 'r9'
branch: 'r8'
ksentry:
Workstation: rocky-live-workstation.ks
Workstation-Lite: rocky-live-workstation-lite.ks

View File

@ -0,0 +1,137 @@
---
'8':
fullname: 'Rocky Linux 8'
revision: '8.8'
rclvl: 'RC1'
major: '8'
minor: '8'
profile: '8'
bugurl: 'https://bugs.rockylinux.org'
checksum: 'sha256'
fedora_major: '20'
allowed_arches:
- x86_64
- aarch64
provide_multilib: False
project_id: '3b0e9ec7-0679-4176-b253-8528eb3255eb'
repo_symlinks:
devel: 'Devel'
NFV: 'nfv'
renames:
all: 'devel'
all_repos:
- 'BaseOS'
- 'AppStream'
- 'PowerTools'
- 'HighAvailability'
- 'ResilientStorage'
- 'RT'
- 'NFV'
- 'extras'
- 'devel'
- 'plus'
structure:
packages: 'os/Packages'
repodata: 'os/repodata'
iso_map:
xorrisofs: False
iso_level: False
images:
dvd:
disc: True
variant: 'AppStream'
repos:
- 'BaseOS'
- 'AppStream'
minimal:
disc: True
isoskip: True
repos:
- 'minimal'
- 'BaseOS'
variant: 'minimal'
BaseOS:
disc: False
isoskip: True
variant: 'BaseOS'
repos:
- 'BaseOS'
- 'AppStream'
lorax:
repos:
- 'BaseOS'
- 'AppStream'
variant: 'BaseOS'
lorax_removes:
- 'libreport-rhel-anaconda-bugzilla'
required_pkgs:
- 'lorax'
- 'genisoimage'
- 'isomd5sum'
- 'lorax-templates-rhel'
- 'lorax-templates-generic'
- 'xorriso'
cloudimages:
images:
EC2:
format: raw
GenericCloud:
format: qcow2
livemap:
git_repo: 'https://git.resf.org/sig_core/kickstarts.git'
branch: 'r8'
ksentry:
Workstation: rocky-live-workstation.ks
Workstation-Lite: rocky-live-workstation-lite.ks
XFCE: rocky-live-xfce.ks
KDE: rocky-live-kde.ks
allowed_arches:
- x86_64
required_pkgs:
- 'lorax-lmc-novirt'
- 'vim-minimal'
- 'pykickstart'
- 'git'
variantmap:
git_repo: 'https://git.rockylinux.org/rocky/pungi-rocky.git'
branch: 'r8s'
git_raw_path: 'https://git.rockylinux.org/rocky/pungi-rocky/-/raw/r8s/'
repoclosure_map:
arches:
x86_64: '--forcearch=x86_64 --arch=x86_64 --arch=athlon --arch=i686 --arch=i586 --arch=i486 --arch=i386 --arch=noarch'
aarch64: '--forcearch=aarch64 --arch=aarch64 --arch=noarch'
ppc64le: '--forcearch=ppc64le --arch=ppc64le --arch=noarch'
s390x: '--forcearch=s390x --arch=s390x --arch=noarch'
repos:
BaseOS: []
AppStream:
- BaseOS
PowerTools:
- BaseOS
- AppStream
HighAvailability:
- BaseOS
- AppStream
ResilientStorage:
- BaseOS
- AppStream
RT:
- BaseOS
- AppStream
NFV:
- BaseOS
- AppStream
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release/-/raw/r8/'
branch: 'r8'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-rockyofficial'
testing: 'SOURCES/RPM-GPG-KEY-rockytesting'
list:
- 'SOURCES/COMMUNITY-CHARTER'
- 'SOURCES/EULA'
- 'SOURCES/LICENSE'
- 'SOURCES/RPM-GPG-KEY-rockyofficial'
- 'SOURCES/RPM-GPG-KEY-rockytesting'
...

View File

@ -8,13 +8,14 @@
profile: '9-beta'
bugurl: 'https://bugs.rockylinux.org'
checksum: 'sha256'
fedora_major: '20'
allowed_arches:
- x86_64
- aarch64
- ppc64le
- s390x
provide_multilib: True
project_id: ''
project_id: '0048077b-1573-4cb7-8ba7-cce823857ba5'
repo_symlinks:
NFV: 'nfv'
renames:
@ -87,8 +88,10 @@
Workstation-Lite: rocky-live-workstation-lite.ks
XFCE: rocky-live-xfce.ks
KDE: rocky-live-kde.ks
MATE: rocky-live-mate.ks
allowed_arches:
- x86_64
- aarch64
required_pkgs:
- 'lorax-lmc-novirt'
- 'vim-minimal'

View File

@ -8,6 +8,7 @@
profile: '9'
bugurl: 'https://bugs.rockylinux.org'
checksum: 'sha256'
fedora_major: '20'
allowed_arches:
- x86_64
- aarch64
@ -88,8 +89,10 @@
Workstation-Lite: rocky-live-workstation-lite.ks
XFCE: rocky-live-xfce.ks
KDE: rocky-live-kde.ks
MATE: rocky-live-mate.ks
allowed_arches:
- x86_64
- aarch64
required_pkgs:
- 'lorax-lmc-novirt'
- 'vim-minimal'

View File

@ -0,0 +1,58 @@
# This is specifically for secondary/tertiary architectures
---
'9altarch':
fullname: 'Rocky Linux 9.0'
revision: '9.0'
rclvl: 'RC2'
major: '9'
minor: '0'
profile: '9'
bugurl: 'https://bugs.rockylinux.org'
checksum: 'sha256'
fedora_major: '20'
allowed_arches:
- armv7hl
- riscv64
provide_multilib: False
project_id: ''
renames:
all: 'devel'
all_repos:
- 'all'
- 'BaseOS'
- 'AppStream'
- 'CRB'
- 'extras'
- 'plus'
structure:
packages: 'os/Packages'
repodata: 'os/repodata'
iso_map: {}
livemap: {}
repoclosure_map:
arches:
armv7hl: '--forcearch=armv7hl --arch=noarch'
riscv64: '--forcearch=riscv64 --arch=noarch'
repos:
devel: []
BaseOS: []
AppStream:
- BaseOS
CRB:
- BaseOS
- AppStream
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release/-/raw/r9/'
branch: 'r9'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-9'
testing: 'SOURCES/RPM-GPG-KEY-Rocky-9-Testing'
list:
- 'SOURCES/Contributors'
- 'SOURCES/COMMUNITY-CHARTER'
- 'SOURCES/EULA'
- 'SOURCES/LICENSE'
- 'SOURCES/RPM-GPG-KEY-Rocky-9'
- 'SOURCES/RPM-GPG-KEY-Rocky-9-Testing'
...

View File

@ -1,20 +1,21 @@
---
'9-lookahead':
fullname: 'Rocky Linux 9.1'
revision: '9.1'
fullname: 'Rocky Linux 9.2'
revision: '9.2'
rclvl: 'LH1'
major: '9'
minor: '1'
minor: '2'
profile: '9-lookahead'
bugurl: 'https://bugs.rockylinux.org'
checksum: 'sha256'
fedora_major: '20'
allowed_arches:
- x86_64
- aarch64
- ppc64le
- s390x
provide_multilib: True
project_id: ''
project_id: '6794b5a8-290b-4d0d-ad5a-47164329cbb0'
repo_symlinks:
NFV: 'nfv'
renames:
@ -87,8 +88,10 @@
Workstation-Lite: rocky-live-workstation-lite.ks
XFCE: rocky-live-xfce.ks
KDE: rocky-live-kde.ks
MATE: rocky-live-mate.ks
allowed_arches:
- x86_64
- aarch64
required_pkgs:
- 'lorax-lmc-novirt'
- 'vim-minimal'

View File

@ -88,6 +88,7 @@
KDE: rocky-live-kde.ks
allowed_arches:
- x86_64
- aarch64
required_pkgs:
- 'lorax-lmc-novirt'
- 'vim-minimal'

View File

@ -388,7 +388,7 @@ class ImageBuild:
except Exception as e:
log.exception(e)
finally:
f.flush()
f.flush()
def run():
try:

View File

@ -17,6 +17,8 @@ parser.add_argument('--logger', type=str)
parser.add_argument('--extra-iso', type=str, help="Granular choice in which iso is built")
parser.add_argument('--extra-iso-mode', type=str, default='local')
parser.add_argument('--hashed', action='store_true')
parser.add_argument('--updated-image', action='store_true')
parser.add_argument('--image-increment',type=str, default='0')
results = parser.parse_args()
rlvars = rldict[results.release]
major = rlvars['major']
@ -32,7 +34,9 @@ a = IsoBuild(
extra_iso_mode=results.extra_iso_mode,
compose_dir_is_here=results.local_compose,
hashed=results.hashed,
logger=results.logger
logger=results.logger,
updated_image=results.updated_image,
image_increment=results.image_increment
)
def run():

View File

@ -14,7 +14,8 @@ parser = argparse.ArgumentParser(description="Peridot Sync and Compose")
# All of our options
parser.add_argument('--release', type=str, help="Major Release Version or major-type (eg 9-beta)", required=True)
parser.add_argument('--symlink', action='store_true', help="symlink")
parser.add_argument('--sig', type=str, help="SIG Name if applicable")
parser.add_argument('--symlink', action='store_true', help="symlink to latest")
parser.add_argument('--logger', type=str)
# Parse them
@ -48,6 +49,9 @@ def run():
profile = rlvars['profile']
logger = log
if results.sig is not None:
shortname = 'SIG-' + results.sig
generated_dir = Shared.generate_compose_dirs(
compose_base,
shortname,

View File

@ -0,0 +1,38 @@
# This is for doing repoclosures upstream
import argparse
from empanadas.common import *
from empanadas.util import Checks
from empanadas.util import RepoSync
# Start up the parser baby
parser = argparse.ArgumentParser(description="Peridot Upstream Repoclosure")
# All of our options
parser.add_argument('--release', type=str, help="Major Release Version or major-type (eg 9-beta)", required=True)
parser.add_argument('--simple', action='store_false')
parser.add_argument('--enable-repo-gpg-check', action='store_true')
parser.add_argument('--hashed', action='store_true')
parser.add_argument('--logger', type=str)
# Parse them
results = parser.parse_args()
rlvars = rldict[results.release]
major = rlvars['major']
r = Checks(rlvars, config['arch'])
r.check_valid_arch()
a = RepoSync(
rlvars,
config,
major=major,
hashed=results.hashed,
parallel=results.simple,
repo_gpg_check=results.enable_repo_gpg_check,
logger=results.logger,
)
def run():
a.run_upstream_repoclosure()

View File

@ -9,7 +9,7 @@ from empanadas.util import IsoBuild
parser = argparse.ArgumentParser(description="ISO Artifact Builder")
parser.add_argument('--release', type=str, help="Major Release Version", required=True)
parser.add_argument('--s3', action='store_true', help="Release Candidate")
parser.add_argument('--s3', action='store_true', help="S3")
parser.add_argument('--arch', type=str, help="Architecture")
parser.add_argument('--local-compose', action='store_true', help="Compose Directory is Here")
parser.add_argument('--force-download', action='store_true', help="Force a download")

View File

@ -9,7 +9,7 @@ from empanadas.util import IsoBuild
parser = argparse.ArgumentParser(description="ISO Artifact Builder")
parser.add_argument('--release', type=str, help="Major Release Version", required=True)
parser.add_argument('--s3', action='store_true', help="Release Candidate")
parser.add_argument('--s3', action='store_true', help="S3")
parser.add_argument('--rc', action='store_true', help="Release Candidate")
parser.add_argument('--arch', type=str, help="Architecture")
parser.add_argument('--local-compose', action='store_true', help="Compose Directory is Here")

View File

@ -26,6 +26,9 @@ parser.add_argument('--refresh-treeinfo', action='store_true')
# I am aware this is confusing, I want podman to be the default option
parser.add_argument('--simple', action='store_false')
parser.add_argument('--logger', type=str)
parser.add_argument('--disable-gpg-check', action='store_false')
parser.add_argument('--disable-repo-gpg-check', action='store_false')
parser.add_argument('--clean-old-packages', action='store_true')
# Parse them
results = parser.parse_args()
@ -54,6 +57,9 @@ a = RepoSync(
logger=results.logger,
refresh_extra_files=results.refresh_extra_files,
refresh_treeinfo=results.refresh_treeinfo,
gpg_check=results.disable_gpg_check,
repo_gpg_check=results.disable_repo_gpg_check,
reposync_clean_old=results.clean_old_packages,
)
def run():

View File

@ -15,7 +15,7 @@ parser = argparse.ArgumentParser(description="Peridot Sync and Compose")
# All of our options
parser.add_argument('--release', type=str, help="Major Release Version", required=True)
parser.add_argument('--repo', type=str, help="Repository name")
parser.add_argument('--sig', type=str, help="SIG name")
parser.add_argument('--sig', type=str, help="SIG name", required=True)
parser.add_argument('--arch', type=str, help="Architecture")
parser.add_argument('--ignore-debug', action='store_true')
parser.add_argument('--ignore-source', action='store_true')
@ -25,9 +25,13 @@ parser.add_argument('--hashed', action='store_true')
parser.add_argument('--dry-run', action='store_true')
parser.add_argument('--full-run', action='store_true')
parser.add_argument('--no-fail', action='store_true')
parser.add_argument('--refresh-extra-files', action='store_true')
# I am aware this is confusing, I want podman to be the default option
parser.add_argument('--simple', action='store_false')
parser.add_argument('--logger', type=str)
parser.add_argument('--disable-gpg-check', action='store_false')
parser.add_argument('--disable-repo-gpg-check', action='store_false')
parser.add_argument('--clean-old-packages', action='store_true')
# Parse them
results = parser.parse_args()
@ -46,6 +50,7 @@ a = SigRepoSync(
repo=results.repo,
arch=results.arch,
ignore_source=results.ignore_source,
ignore_debug=results.ignore_debug,
repoclosure=results.repoclosure,
skip_all=results.skip_all,
hashed=results.hashed,
@ -53,7 +58,11 @@ a = SigRepoSync(
dryrun=results.dry_run,
fullrun=results.full_run,
nofail=results.no_fail,
logger=results.logger
refresh_extra_files=results.refresh_extra_files,
logger=results.logger,
gpg_check=results.disable_gpg_check,
repo_gpg_check=results.disable_repo_gpg_check,
reposync_clean_old=results.clean_old_packages,
)

View File

@ -1,17 +1,43 @@
---
altarch:
'8':
rockyrpi:
allowed_arches:
- aarch64
project_id: ''
additional_dirs:
- 'images'
profile: 'altarch'
project_id: 'a1aac235-dd66-4d5b-8ff0-87467732f322'
repo:
altarch-common:
allowed_arches:
- aarch64
altarch-rockyrpi:
allowed_arches:
- aarch64
additional_dirs:
- 'images'
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-altarch.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-altarch/-/raw/r8/'
branch: 'r8'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-SIG-AltArch'
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-AltArch'
'9':
rockyrpi:
allowed_arches:
- aarch64
project_id: ''
additional_dirs:
- 'images'
profile: 'altarch'
project_id: '6047887d-a395-4bc7-a0bd-fc1873b5d13d'
repo:
altarch-common:
allowed_arches:
- aarch64
altarch-rockyrpi:
allowed_arches:
- aarch64
additional_dirs:
- 'images'
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-altarch.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-altarch/-/raw/r9/'
branch: 'r9'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-SIG-AltArch'
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-AltArch'
...

View File

@ -2,16 +2,17 @@
cloud:
'8':
profile: 'cloud'
cloud-kernel:
project_id: 'f91da90d-5bdb-4cf2-80ea-e07f8dae5a5c'
allowed_arches:
- aarch64
- x86_64
cloud-common:
allowed_arches:
- aarch64
- x86_64
project_id: 'f91da90d-5bdb-4cf2-80ea-e07f8dae5a5c'
project_id: 'f91da90d-5bdb-4cf2-80ea-e07f8dae5a5c'
addtional_dirs: []
repo:
cloud-kernel:
allowed_arches:
- aarch64
- x86_64
cloud-common:
allowed_arches:
- aarch64
- x86_64
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-cloud.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-cloud/-/raw/r8/'
@ -21,18 +22,28 @@ cloud:
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Cloud'
'9':
cloud-kernel:
project_id: ''
allowed_arches:
- aarch64
- x86_64
- ppc64le
- s390x
cloud-common:
project_id: ''
allowed_arches:
- aarch64
- x86_64
- ppc64le
- s390x
profile: 'cloud'
project_id: '15016370-1410-4459-a1a2-a1576041fd19'
addtional_dirs: []
repo:
cloud-kernel:
allowed_arches:
- aarch64
- x86_64
- ppc64le
- s390x
cloud-common:
allowed_arches:
- aarch64
- x86_64
- ppc64le
- s390x
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-cloud.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-cloud/-/raw/r9/'
branch: 'r9'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Cloud'
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Cloud'
...

View File

@ -1,13 +1,49 @@
---
core:
'8':
core-common:
project_id: ''
core-infra:
project_id: ''
profile: 'core'
project_id: ''
addtional_dirs: []
repo:
core-common:
allowed_arches:
- x86_64
- aarch64
core-infra:
allowed_arches:
- x86_64
- aarch64
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-core.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-core/-/raw/r8/'
branch: 'r8'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Core'
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Core'
'9':
core-common:
project_id: ''
core-infra:
project_id: ''
profile: 'core'
project_id: ''
addtional_dirs: []
repo:
core-common:
allowed_arches:
- x86_64
- aarch64
- ppc64le
- s390x
core-infra:
allowed_arches:
- x86_64
- aarch64
- ppc64le
- s390x
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-core.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-core/-/raw/r9/'
branch: 'r9'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Core'
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Core'
...

View File

@ -0,0 +1,37 @@
---
desktop:
'8':
profile: 'desktop'
project_id: '8b3c9b53-0633-47bd-98a3-1ca3ec141278'
addtional_dirs: []
repo:
desktop-common:
allowed_arches:
- x86_64
- aarch64
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-desktop.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-desktop/-/raw/r8/'
branch: 'r8'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Desktop'
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Desktop'
'9':
profile: 'desktop'
project_id: 'b0460c25-22cf-496c-a3a3-067b9a2af14a'
addtional_dirs: []
repo:
desktop-common:
allowed_arches:
- x86_64
- aarch64
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-desktop.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-desktop/-/raw/r9/'
branch: 'r9'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Desktop'
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Desktop'
...

View File

@ -0,0 +1,38 @@
---
virt:
'8':
profile: 'virt'
project_id: 'd911867a-658e-4f41-8343-5ceac6c41f67'
addtional_dirs: []
repo:
virt-common:
allowed_arches:
- x86_64
- aarch64
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-virt.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-virt/-/raw/r8/'
branch: 'r8'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Virt'
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Virt'
'9':
profile: 'virt'
project_id: '925ceece-47ce-4f51-90f7-ff8689e4fe5e'
addtional_dirs: []
repo:
virt-common:
allowed_arches:
- x86_64
- aarch64
- ppc64le
extra_files:
git_repo: 'https://git.rockylinux.org/staging/src/rocky-release-virt.git'
git_raw_path: 'https://git.rockylinux.org/staging/src/rocky-release-virt/-/raw/r9/'
branch: 'r9'
gpg:
stable: 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Virt'
list:
- 'SOURCES/RPM-GPG-KEY-Rocky-SIG-Virt'
...

View File

@ -0,0 +1,41 @@
This directory contains ISO's for the {{ arch }} architecture. You will see
multiple types of ISO's, including accompanying manifests and CHECKSUM files
that match the given ISO. You will see the following formats:
* Rocky-X.Y-ARCH-TYPE (ISO File)
* Rocky-X.Y-DATE-ARCH-TYPE (ISO File)
* Rocky-ARCH-TYPE (Symlink)
X will be the major release.
Y will be the minor release.
ARCH is the given architecture.
DATE will be the date the ISO was built (if applicable)
TYPE will be the type of ISO (boot, dvd, minimal)
The first format is the most common and is the day-of-release ISO.
The second format is in the case of rebuilt ISO's, in the case of addressing
a bug or providing an updated image (eg for a newer kernel, a newer secure
boot shim, and so on).
The third format in the list is a symlink to the "latest" ISO. Currently, this
is not advertised on the main site, but there may be potential for this in
the future as a value add.
This is "unversioned" ISO symlink is for these cases:
* A pre-determined download location for users/mirrors/service providers who
want an always available and deterministic download location, which can be
easier to script
* osinfo database / libvirt use where if a user selects Rocky Linux X, it
should be aware of and be able to download from that location. This should
be fully supported in Rocky Linux 8.7 and 9.1, and future Fedora versions.
If you have any questions, please reach out to us:
* https://chat.rockylinux.org ~Development, ~Infrastructure, ~General
* https://forums.rockylinux.org
* https://lists.resf.org/mailman3/lists/rocky.lists.resf.org/ - Rocky General Mail List
* https://lists.resf.org/mailman3/lists/rocky-mirror.lists.resf.org/ - Mirror Mail List

View File

@ -11,6 +11,15 @@ metadata provides.
# Notes #
## Unversioned ISO Files ##
There are unversioned ISO files in the isos and live directories per
architecture. This is to allow libvirt users an easy way to download an ISO for
a given release of their choosing easily. It also allows users as a whole to
always have a pre-determined path to download the latest ISO of a given release
by just relying on it being in the URL itself rather than in the ISO name. Note
that these unversioned ISO files may or may not advertised on the main site.
## Checksums ##
CHECKSUM Validation: https://github.com/rocky-linux/checksums

View File

@ -23,3 +23,9 @@ fi
{{ make_manifest }}
{% if extra_iso_mode == "podman" %}
# symlink to unversioned image name
ln -sf {{ isoname }} {{ generic_isoname }}
ln -sf {{ isoname }}.manifest {{ generic_isoname }}.manifest
{% endif %}

View File

@ -53,6 +53,8 @@ elif [ -f "/usr/bin/isoinfo" ]; then
grep -v '/TRANS.TBL$' | sort >> lorax/images/boot.iso.manifest
fi
find lorax -perm 700 -exec chmod 755 {} \;
tar czf "${LORAX_TAR}" lorax "${LOGFILE}"
tar_ret_val=$?

View File

@ -18,9 +18,9 @@ cd /builddir
{{ git_clone }}
if [ -d "/builddir/ks/live/{{ major }}/peridot" ]; then
pushd /builddir/ks/live/{{ major }}/peridot || { echo "Could not change directory"; exit 1; }
pushd /builddir/ks/live/{{ major }}/{{ arch }}/peridot || { echo "Could not change directory"; exit 1; }
else
pushd /builddir/ks/live/{{ major }}/staging || { echo "Could not change directory"; exit 1; }
pushd /builddir/ks/live/{{ major }}/{{ arch }}/stage || { echo "Could not change directory"; exit 1; }
fi
ksflatten -c {{ ks_file }} -o /builddir/ks.cfg
if [ $? -ne 0 ]; then

View File

@ -0,0 +1,21 @@
<template>
<name>Rocky-{{major}}-{{type}}-{{version_variant}}.{{iso8601date}}.{{release}}.{{architecture}}</name>
<os>
<name>Fedora</name>
<version>{{fedora_major}}</version>
<arch>{{architecture}}</arch>
<install type='url'>
<url>https://download.rockylinux.org/stg/rocky/{{major}}/BaseOS/{{architecture}}/{{installdir}}</url>
</install>
<icicle>
<extra_command>rpm -qa --qf '%{NAME},%{VERSION},%{RELEASE},%{ARCH},%{EPOCH},%{SIZE},%{SIGMD5},%{BUILDTIME}\n'</extra_command>
</icicle>
<kernelparam>console=tty0 inst.usefbx</kernelparam>
</os>
<description>Rocky-{{major}}-{{type}}-{{version_variant}}.{{iso8601date}}.{{release}}.{{architecture}} Generated on {{utcnow}}</description>
<disk>
<size>{{size}}</size>
</disk>
</template>

View File

@ -10,7 +10,6 @@
<icicle>
<extra_command>rpm -qa --qf '%{NAME},%{VERSION},%{RELEASE},%{ARCH},%{EPOCH},%{SIZE},%{SIGMD5},%{BUILDTIME}\n'</extra_command>
</icicle>
<kernelparam>console=tty0 inst.usefbx</kernelparam>
</os>
<description>Rocky-{{major}}-{{type}}-{{version_variant}}.{{iso8601date}}.{{release}}.{{architecture}} Generated on {{utcnow}}</description>
<disk>

View File

@ -3,24 +3,24 @@
name={{repo.name}}
baseurl={{ repo.baseurl }}
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgcheck={{ gpg_check }}
repo_gpgcheck={{ repo_gpg_check }}
gpgkey={{ repo.gpgkey }}
[{{ repo.name }}-debug]
name={{repo.name}}
baseurl={{ repo.baseurl }}-debug
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgcheck={{ gpg_check }}
repo_gpgcheck={{ repo_gpg_check }}
gpgkey={{ repo.gpgkey }}
[{{ repo.name }}-source]
name={{repo.name}}
baseurl={{ repo.srcbaseurl }}
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgcheck={{ gpg_check }}
repo_gpgcheck={{ repo_gpg_check }}
gpgkey={{ repo.gpgkey }}
{% endfor %}

View File

@ -3,6 +3,7 @@ set -o pipefail
{{ import_gpg_cmd }} | tee -a {{ sync_log }}
{{ dnf_plugin_cmd }} | tee -a {{ sync_log }}
sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/*.repo
{{ metadata_cmd }} | tee -a {{ sync_log }}
{{ sync_cmd }} | tee -a {{ sync_log }}
# Yes this is a bit hacky. Can't think of a better way to do this.
@ -18,8 +19,13 @@ if [ "$ret_val" -eq 0 ]; then
echo "SOME PACKAGES DID NOT DOWNLOAD" | tee -a {{ sync_log }}
exit 1
else
{% if deploy_extra_files %}
pushd {{ download_path }}
curl -RO {{ gpg_key_url }}
popd
{% endif %}
exit 0
fi
fi
# {{ check_cmd }} | tee -a {{ sync_log }}
# {{ check_cmd }} | tee -a {{ sync_log }}

View File

@ -4,6 +4,7 @@ set -o pipefail
{{ arch_force_cp }} | tee -a {{ sync_log }}
{{ dnf_plugin_cmd }} | tee -a {{ sync_log }}
sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/*.repo
{{ metadata_cmd }} | tee -a {{ sync_log }}
{{ sync_cmd }} | tee -a {{ sync_log }}
# Yes this is a bit hacky. Can't think of a better way to do this.
@ -25,6 +26,11 @@ if [ "$ret_val" -eq 0 ]; then
# echo "Repository is empty." | tee -a {{ sync_log }}
# rm -rf {{ download_path }}
#fi
{%- if deploy_extra_files %}
pushd {{ download_path }}
curl -RO {{ gpg_key_url }}
popd
{% endif %}
exit 0
fi
fi

View File

@ -1,6 +1,10 @@
-indev {{ boot_iso }}
-outdev {{ isoname }}
-boot_image any replay
-joliet on
-system_id {{ 'PPC' if arch == 'ppc64le' else 'LINUX' }}
-compliance joliet_long_names
{{ '-compliance untranslated_names' if arch == 'ppc64le' }}
-volid {{ volid }}
{{ graft }}
-end

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -61,6 +61,8 @@ class IsoBuild:
extra_iso_mode: str = 'local',
compose_dir_is_here: bool = False,
hashed: bool = False,
updated_image: bool = False,
image_increment: str = '0',
image=None,
logger=None
):
@ -93,13 +95,18 @@ class IsoBuild:
self.checksum = rlvars['checksum']
self.profile = rlvars['profile']
self.hashed = hashed
self.updated_image = updated_image
self.updated_image_increment = "." + image_increment
self.updated_image_date = (time.strftime("%Y%m%d", time.localtime())
+ self.updated_image_increment)
# Relevant major version items
self.arch = arch
self.arches = rlvars['allowed_arches']
self.release = rlvars['revision']
self.minor_version = rlvars['minor']
self.revision = rlvars['revision'] + "-" + rlvars['rclvl']
self.revision_level = rlvars['revision'] + "-" + rlvars['rclvl']
self.revision = rlvars['revision']
self.rclvl = rlvars['rclvl']
self.repos = rlvars['iso_map']['lorax']['repos']
self.repo_base_url = config['repo_base_url']
@ -113,12 +120,6 @@ class IsoBuild:
if 'container' in rlvars and len(rlvars['container']) > 0:
self.container = rlvars['container']
self.staging_dir = os.path.join(
config['staging_root'],
config['category_stub'],
self.revision
)
# all bucket related info
self.s3_region = config['aws_region']
self.s3_bucket = config['bucket']
@ -196,7 +197,7 @@ class IsoBuild:
self.compose_dir_is_here,
self.hashed
)
self.log.info(self.revision)
self.log.info(self.revision_level)
def run(self):
work_root = os.path.join(
@ -502,6 +503,7 @@ class IsoBuild:
self.log.info('Removing boot.iso from %s' % image)
try:
os.remove(path_to_image + '/images/boot.iso')
os.remove(path_to_image + '/images/boot.iso.manifest')
except:
self.log.error(
'[' + Color.BOLD + Color.YELLOW + 'FAIL' + Color.END + '] ' +
@ -509,21 +511,9 @@ class IsoBuild:
)
def _copy_boot_to_work(self, force_unpack, arch):
src_to_image = os.path.join(
self.lorax_work_dir,
arch,
'lorax'
)
iso_to_go = os.path.join(
self.iso_work_dir,
arch
)
path_to_src_image = '{}/{}'.format(
src_to_image,
'/images/boot.iso'
)
src_to_image = os.path.join(self.lorax_work_dir, arch, 'lorax')
iso_to_go = os.path.join(self.iso_work_dir, arch)
path_to_src_image = os.path.join(src_to_image, 'images/boot.iso')
rclevel = ''
if self.release_candidate:
@ -538,15 +528,13 @@ class IsoBuild:
'boot'
)
isobootpath = '{}/{}'.format(
iso_to_go,
discname
)
manifest = '{}.{}'.format(
isobootpath,
'manifest'
)
isobootpath = os.path.join(iso_to_go, discname)
manifest = '{}.manifest'.format(isobootpath)
link_name = '{}-{}-boot.iso'.format(self.shortname, arch)
link_manifest = link_name + '.manifest'
isobootpath = os.path.join(iso_to_go, discname)
linkbootpath = os.path.join(iso_to_go, link_name)
manifestlink = os.path.join(iso_to_go, link_manifest)
if not force_unpack:
file_check = isobootpath
@ -556,9 +544,18 @@ class IsoBuild:
self.log.info('Copying %s boot iso to work directory...' % arch)
os.makedirs(iso_to_go, exist_ok=True)
shutil.copy2(path_to_src_image, isobootpath)
try:
shutil.copy2(path_to_src_image, isobootpath)
if os.path.exists(linkbootpath):
os.remove(linkbootpath)
os.symlink(discname, linkbootpath)
except Exception as e:
self.log.error(Color.FAIL + 'We could not copy the image or create a symlink.')
raise SystemExit(e)
if os.path.exists(path_to_src_image + '.manifest'):