Project

General

Profile

Development Resources » History » Revision 53

Revision 52 (Tomer Brisker, 01/08/2019 02:57 PM) → Revision 53/57 (Tomer Brisker, 06/26/2019 01:32 PM)

h1. Development Resources 

 {{toc}} 

 h2. Current Sprint 

 * [[Current Sprint Information]] 

 h2. Deep Dives 

 h3. Content has been promoted to the Foreman web site 

 The content from this page has been incorporated into the official "theforeman.org":http://theforeman.org/ web site.    You can access it here: 

 * "*Foreman screenshots & videos: Deep Dives*":http://theforeman.org/media.html#deepdives 

 The archived version of this page is "still available":/projects/foreman/wiki/Development_Resources?version=13 

 h3. Upcoming deep dives 

 Upcoming topics are on the [[Upcoming Deep Dives]] page - feel free to add more suggested topics! 

 h2. Patch reviews 

 * [[Reviewing patches]] - some notes about things to check for when reviewing PRs 
 * [[Reviewing_patches-commit_message_format]] - commit message standard for Foreman projects 

 h2. Packaging 

 Foreman is packaged as both RPMs (for EL, Fedora) and Debian packages. 

 * [[RPM Packaging]] 
 ** [[Koji]] 
 * [[Debian Packaging]] 
 * [[Installer Packaging]] 

 h2. Release process 

 Each major release of Foreman is managed by a release manager. 

 * [[Release Management]] contains general guidance on the process, controlling what's released etc. 
 * [[Release Process]] describes the process the manager will follow (and amend) to prepare and publish each release 

 Each release schedule is available below: 

 * [[Foreman 1.7 Schedule]] 
 * [[Foreman 1.8 Schedule]] 
 * [[Foreman 1.9 Schedule]] 
 * [[Foreman 1.10 Schedule]] 
 * [[Foreman 1.11 Schedule]] 
 * [[Foreman 1.12 Schedule]] 
 * [[Foreman 1.13 Schedule]] 
 * [[Foreman 1.14 Schedule]] 
 * [[Foreman 1.15 Schedule]] 
 * [[Foreman 1.16 Schedule]] 
 * [[Foreman 1.17 Schedule]] 
 * [[Foreman 1.18 Schedule]] 
 * [[Foreman 1.19 Schedule]] 
 * [[Foreman 1.20 Schedule]] 
 * [[Foreman 1.21 Schedule]] 
 * [[Foreman 1.22 Schedule]] 
 * [[Foreman 1.23 Schedule]] 

 h2. Developer documentation and designs 

 * [[granular_permission_system|Granular permission system (aka new permission system)]]  
 * [[create_host_UI_when_build_from_source|Create a host in UI when building and runnning Foreman from sources]] 
 * [[API v2 Development Guidelines]] 
 * [[friendly_id]] gem is used by Foreman to unify the the common find logic between UI and API based on id or friendly_id "name" of resource 
 * [[Translating]] describes how strings should be extracted in code and translated. 
 * [[Rails 4.2]] information about the migration from Rails 4.1 to 4.2 
 * [[Strong parameters]] migrating from protected_attributes (attr_accessible) to controller parameter filtering 
 * [[Registry pattern]] notes about how to avoid the "registry" pattern of global/class-level state 

 h2. Redmine 

 * [[Triage process]] - how to triage redmine issues 
 * [[Security process]] - how to handle security issues 

 h2. Infrastructure 

 * [[GitHub]] - source code for all projects is stored on GitHub 
 * [[Jenkins]] - how our CI is configured, managing jobs etc. 
 * [[Koji]] - our RPM build system 
 * [[KojiBuilderSetup]] - adding builders to Koji 
 * [[PrProcessor]] - web service receiving GitHub hooks, linking PRs, Redmine and Jenkins