Infra/Deployment/Platform Roadmap Update

A week or two back, I sent out a gathered Roadmap of tasks in
Infra/Deployment/Platform. The following is a report of updates on some of
those endeavors until I can move this to a better location for facilitating
updates and tracking.

  • Rails 5.X

  • Updates

  • Prior

  • need rh-ror50 or custom built SCL

  • consider whether we introduce a new SCL (e.g. tfm-ruby23) to separate
    RPMs built against old SCL vs. new

  • comment mmoll: We would need to upgrade Ruby (to 2.4 or 2.5) later,
    but I'd expect Rails 5.0 and even 5.1 to fully work also on Ruby 2.2

  • commend ekohl: if package names remained equal then it would simplify
    the installer/docs

  • should we jump to 5.1.latest and build the SCL instead? rh-ror50 is
    the last Rails SCL from RHSCL team

  • comment mmoll: with a little help from core and plugin devs, a move to
    Rails 5.1 for 1.17 feels achievable.

  • dlobatog: +1 - introducing the SCL to retire it quite soon will be a
    pain for upgrades and 5.1 for 1.17 doesn't seem that far off.

  • Jenkins Migration

  • Updates

  • Prior

    • Migrate Jenkins master to EL7
  • add https interface to Jenkins

  • Jenkins Job Updates

  • Updates

    • Foreman nightly release pipeline created and has replaced former
      Foreman nightly jobs
  • Prior

    • Migrate jobs to pipelines
  • What is the benefit for this effort?

  • modern approach, more secure, provides more efficient jobs, jobs that
    are protected against crashes and restarts

  • Move all jobs into JJB

  • Update JJB code location within git for discoverability

  • Update jobs to run tests with all plugins installed

  • Update hammer core tests to run tests also for the major plugins (at
    least foreman and katello)

  • Add job for running hammer integration tests against live
    foreman/katello

  • Running Container Stack

  • Updates

    • No updates
  • Prior

    • address Github issues created from initial merge
  • remove current hacks in deployment

  • build up test suite for verifying container stack

  • add Jenkins job to build containers nightly

  • find way to continuously test container deployment

  • Merging katello-packaging to foreman-packaging

  • Updates

    • No updates
  • Prior

    • develop and agree on strategy for moving packages
  • move packages

  • any chance of moving Katello tags into foreman-plugins directly?

  • yes, but we need to solve other problems first:

  • updated yum repository structure (see below)

  • individual package release pipelines

  • Release automation

  • Updates

    • No updates
  • Prior

    • Using tool_belt & foreman_release to do the
      cherry_picking/tagging/building/signing
      automatically
  • Update Projects - Foreman
    foreman/wiki/Release_Process to document how it should work

  • Moving Katello puppet modules to foreman

  • Updates

    • foreman-module-sync being synchronized with Katello's
    • Ewoud working on migration steps to undertake in the next week
  • Prior

    • move modules to theforeman Organization
  • add puppet modules to foreman-installer-modulesync

  • Merging katello and foreman installers

  • Updates

    • No updates
  • Prior

    • Move all checks/hooks
  • Add katello modules

  • Move bin/{foreman-proxy-certs-generate,katello-certs-check}

  • Migrate scenarios

  • Sort out the packaging

  • Add deprecation notices to katello-installer / wipe master branch

  • Updated yum repository structure

  • Updates

    • No updates
  • Prior

    • Email thread discussing re-structure of repositories
  • agree on layout

  • re-factor mash scripts for new deployment

  • re-factor sync scripts to yum/deb repositories

  • update foreman release RPM for new repositories

  • Move package building from Koji to Copr

  • Updates

    • No updates
  • Prior

    • Phase 1: Submit builds in paralel - only rubygems and nodejs
  • Phase 2: Submit builds in paralel - foreman-core packages

  • Phase 3: Migrate to Copr

  • Multi-server service deployment

  • Migration off of Openshift V2

  • Redmine – moved to stand alone server and off of Openshift entirely

  • prprocessor – still running on Openshift V2

  • etherpad – moved from katello to foreman openshift v2 instance

··· -- Eric D. Helms Red Hat Engineering