Bug 647806

Summary: API for external repos is missing
Product: [Community] Spacewalk Reporter: Michael Mráka <mmraka>
Component: APIAssignee: Tomas Lestach <tlestach>
Status: CLOSED CURRENTRELEASE QA Contact: Red Hat Satellite QA List <satqe-list>
Severity: medium Docs Contact:
Priority: low    
Version: 1.2CC: colin.coe, jpazdziora
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: spacewalk-java-1.3.7-1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-02-08 08:40:58 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 653453    

Description Michael Mráka 2010-10-29 14:19:51 UTC
Description of problem:
There should be API to create, delete, update external repos.
As well as associating it to channels.

Version-Release number of selected component (if applicable):
spacewalk-java-1.2.76-1.el5.noarch


How reproducible:


Steps to Reproduce:
1. create a repo via API
2. associate repo with a channel via API
3. modify repo via API
4. disassociate repo from channel via API
5. drop repo via API
  
Actual results:
no API

Expected results:


Additional info:

Comment 1 Colin Coe 2010-11-12 12:31:58 UTC
Created commit d84acf1: 647806 - Implement API calls for external repos

The following API calls now exist in the channel.software namespace for deailing with external repos (object ContentSource):
    public List listUserRepos(String sessionKey) {
    public ContentSource createRepo(String sessionKey, String label, String type,
    public Integer removeRepo(String sessionKey, Integer id) {
    public Integer removeRepo(String sessionKey, String label) {
    public Channel associateRepo(String sessionKey, String chanLabel, String repoLabel) {
    public Channel disassociateRepo(String sessionKey, String chanLabel, String repoLabel) {
    public ContentSource updateRepoUrl(String sessionKey, Integer id, String url) {
    public ContentSource updateRepoUrl(String sessionKey, String label, String url) {
    public ContentSource updateRepoLabel(String sessionKey, Integer id, String label) {
    public ContentSource updateRepo(String sessionKey, Integer id, String label, String url) {

Comment 2 Jan Pazdziora 2010-11-19 16:02:35 UTC
Mass-moving to space13.

Comment 3 Michael Mráka 2010-11-19 21:56:30 UTC
Thanks Colin for fixing this.

API calls are used by spacewalk-common-channels script from spacewalk-utils package.

Comment 4 Michael Mráka 2010-11-19 21:58:05 UTC
Verified.

# ./spacewalk-common-channels -v -k unlimited -a i386 'centos4*'

Then checked in webUI there are centos4 channel and subchannels and appropriate yum repos associated with them.

Comment 5 Jan Pazdziora 2010-11-20 14:19:30 UTC
I don't see commit d84acf1 in our repo. However, if the commit which fixed this bugzilla is in fact 084a791a954f3b77750d642efdeb716960b696b6, then the change is in spacewalk-java-1.2.107-1 and thus in Spacewalk 1.2, and as such we could close it with CURRENTRELEASE.

Could someone please confirm if this is true?

Jan

Comment 6 Tomas Lestach 2011-02-08 08:40:58 UTC
This bug has been fixed in Spacewalk 1.3.