Class: PRM::Repo

Inherits:
Object
  • Object
show all
Includes:
DHO, Debian, Redhat, SNAP
Defined in:
lib/prm/repo.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Redhat

#build_rpm_repo, #create_filelists_xml, #create_other_xml, #create_primary_xml, #create_repomd_xml

Methods included from SNAP

#snapshot_to

Methods included from DHO

#sync_to_dho

Methods included from Debian

#build_apt_repo, #generate_packages_gz, #generate_release, #generate_release_gpg, #move_packages

Instance Attribute Details

#accesskeyObject

Returns the value of attribute accesskey.



347
348
349
# File 'lib/prm/repo.rb', line 347

def accesskey
  @accesskey
end

#archObject

Returns the value of attribute arch.



343
344
345
# File 'lib/prm/repo.rb', line 343

def arch
  @arch
end

#componentObject

Returns the value of attribute component.



342
343
344
# File 'lib/prm/repo.rb', line 342

def component
  @component
end

#directoryObject

Returns the value of attribute directory.



349
350
351
# File 'lib/prm/repo.rb', line 349

def directory
  @directory
end

#gpgObject

Returns the value of attribute gpg.



345
346
347
# File 'lib/prm/repo.rb', line 345

def gpg
  @gpg
end

#nocacheObject

Returns the value of attribute nocache.



351
352
353
# File 'lib/prm/repo.rb', line 351

def nocache
  @nocache
end

#pathObject

Returns the value of attribute path.



340
341
342
# File 'lib/prm/repo.rb', line 340

def path
  @path
end

#recentObject

Returns the value of attribute recent.



350
351
352
# File 'lib/prm/repo.rb', line 350

def recent
  @recent
end

#releaseObject

Returns the value of attribute release.



344
345
346
# File 'lib/prm/repo.rb', line 344

def release
  @release
end

#secretkeyObject

Returns the value of attribute secretkey.



346
347
348
# File 'lib/prm/repo.rb', line 346

def secretkey
  @secretkey
end

#snapshotObject

Returns the value of attribute snapshot.



348
349
350
# File 'lib/prm/repo.rb', line 348

def snapshot
  @snapshot
end

#typeObject

Returns the value of attribute type.



341
342
343
# File 'lib/prm/repo.rb', line 341

def type
  @type
end

Instance Method Details

#_parse_vars(arch_ar, component_ar, release_ar) ⇒ Object



379
380
381
382
383
384
385
386
# File 'lib/prm/repo.rb', line 379

def _parse_vars(arch_ar,component_ar,release_ar)
    arch_ar = arch.split(",")
    if !component.nil?
        component_ar = component.split(",")
    end
    release_ar = release.split(",")
    return [arch_ar,component_ar,release_ar]
end

#createObject



353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
# File 'lib/prm/repo.rb', line 353

def create
    if "#{@type}" == "deb"
        parch,pcomponent,prelease = _parse_vars(arch,component,release)
        if snapshot
            snapshot_to(path,pcomponent,prelease,snapshot,type,recent)
            pcomponent = snapshot
        end
        if directory
            silent = true
            build_apt_repo(path,pcomponent,parch,prelease,gpg,silent,nocache)
            if move_packages(path,pcomponent,parch,prelease,directory) == false
                return
            end
        end
        silent = false
        build_apt_repo(path,pcomponent,parch,prelease,gpg,silent,nocache)
    elsif "#{@type}" == "sync"
        sync_to_dho(path, accesskey, secretkey,pcomponent,prelease)
    elsif "#{@type}" == "rpm"
        component = nil
        parch,pcomponent,prelease = _parse_vars(arch,component,release)
        silent = false
        build_rpm_repo(path,parch,prelease,gpg,silent)
    end
end