CUSP-1345 CUSP-1343 CUSP-1344 - Add older version ability
Signed-off-by: Stephen Simpson <ssimpson89@users.noreply.github.com>
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
|
||||
import argparse
|
||||
import logging
|
||||
import re
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
@@ -49,16 +50,13 @@ def process_version(config: Config, version: str, template_dir: Path) -> bool:
|
||||
# Use first available architecture (man pages are arch-independent)
|
||||
arch = config.architectures[0]
|
||||
|
||||
# Get repository URL
|
||||
repo_url = config.get_repo_url(version, repo_type, arch)
|
||||
|
||||
# Create cache dir for this repo
|
||||
cache_dir = config.download_dir / f".cache/{version}/{repo_type}"
|
||||
|
||||
try:
|
||||
# Initialize repository manager
|
||||
repo_manager = RepoManager(
|
||||
repo_url=repo_url,
|
||||
config=config,
|
||||
version=version,
|
||||
repo_type=repo_type,
|
||||
arch=arch,
|
||||
@@ -250,6 +248,12 @@ def main():
|
||||
help="Rocky Linux mirror URL (default: http://dl.rockylinux.org/)",
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--vault",
|
||||
action="store_true",
|
||||
help="Use vault directory instead of pub (vault/rocky instead of pub/rocky)",
|
||||
)
|
||||
|
||||
parser.add_argument(
|
||||
"--template-dir",
|
||||
type=Path,
|
||||
@@ -307,9 +311,13 @@ def main():
|
||||
elif args.skip_languages is not None:
|
||||
skip_languages = args.skip_languages
|
||||
|
||||
# Determine content directory
|
||||
content_dir = "vault/rocky" if args.vault else "pub/rocky"
|
||||
|
||||
# Create configuration
|
||||
config = Config(
|
||||
base_url=args.mirror,
|
||||
content_dir=content_dir,
|
||||
versions=args.versions,
|
||||
repo_types=args.repo_types,
|
||||
download_dir=args.download_dir,
|
||||
@@ -325,8 +333,17 @@ def main():
|
||||
allow_all_sections=args.allow_all_sections,
|
||||
)
|
||||
|
||||
# Scan for existing versions in output directory
|
||||
existing_versions = [
|
||||
d.name
|
||||
for d in config.output_dir.iterdir()
|
||||
if d.is_dir() and re.match(r"\d+\.\d+", d.name)
|
||||
]
|
||||
all_versions = sorted(set(existing_versions + config.versions))
|
||||
|
||||
logger.info("Rocky Man - Rocky Linux Man Page Generator")
|
||||
logger.info(f"Versions: {', '.join(config.versions)}")
|
||||
logger.info(f"Versions to process: {', '.join(config.versions)}")
|
||||
logger.info(f"All known versions: {', '.join(all_versions)}")
|
||||
logger.info(f"Repositories: {', '.join(config.repo_types)}")
|
||||
logger.info(f"Output directory: {config.output_dir}")
|
||||
|
||||
@@ -360,7 +377,7 @@ def main():
|
||||
# Generate root index
|
||||
logger.info("Generating root index page...")
|
||||
web_gen = WebGenerator(args.template_dir, config.output_dir)
|
||||
web_gen.generate_root_index(processed_versions)
|
||||
web_gen.generate_root_index(all_versions)
|
||||
|
||||
logger.info("=" * 60)
|
||||
logger.info("Processing complete!")
|
||||
|
||||
Reference in New Issue
Block a user