[katello-devel] Demotions and deletions

Mike McCune mmccune at redhat.com
Wed Aug 29 16:58:45 UTC 2012


On 08/29/2012 03:29 AM, Lukas Zapletal wrote:
> On Tue, Aug 28, 2012 at 09:13:03AM -0700, Michael McCune wrote:
>> this violates our rule that:
>>
>> *** "All changes to content in any live environment must be through
>> a changeset" ***
>
> Now THATS a good point!
>
>> 3) Allow user to delete custom repositories in the Library and then
>> message them that in order to re-create any repositories with the
>> same name they will need to go through and execute changesets in
>> each of their environments to delete the repos from anywhere they
>> promoted to.
>>
>> We could auto create deletion changesets for them so all the changes
>> to the live environments would be tracked and done through our
>> existing mechanism.  If people really want it we can allow the
>> "apply" to mass-execute the changesets in order.  We would be
>> maintaining our existing rule above but allowing for an easier
>> mechanism to mass delete repositories
>
> The question is how would you create a deletion changeset when
> repository is already GONE? I mean, you can't really insert it there,
> there is nothing to apply. I don't get it.
>
> Maybe I just don't understand how delete promotions works atm.
>

If you delete a custom repo from the Library right now from the GUI or 
CLI the repo will still exist in all the environments you have promoted 
to.  So to delete the repos from say ... DEV/TEST/PROD after you delete 
from the Library you just go in, create a 'deletion' changeset in 
DEV/TEST/PROD and add the repos you previously deleted from the Library 
to the Changeset.  Then you apply that changeset and the repos are now 
gone from that env.

EG:

1) Create custom product, CP1 and environments: DEV/TEST
2) Add 2 repos, repo1, repo2
3) sync to library
4) promote CP1 to DEV, now you have repo1, repo2 in DEV
5) promote CP2 to TEST, now you have repo1, repo2 in TEST
6) Go into Custom Providers, delete repo2.  Now repo2 is deleted from 
the Library but still exists in DEV and TEST
7) Create a Deletion Changeset in DEV, add repo2 to this changeset
8) Apply the changeset, repo2 is now gone from DEV but still exists in TEST
9) Create a Deletion Changeset in TEST, add repo2 to this changeset
10) Apply changeset, repo2 is now gone from TEST and exists nowhere

This is how it works in master now today but after running through the 
above scenario we are still getting that JDBC error so content deletion 
is *not* cleaning something up correctly.  Brad/myself can take a look 
at why deleting all the repos from Library -> end of promotion path is 
still leaving something in Candlepin

Mike
-- 
Mike McCune
mmccune AT redhat.com
Red Hat Engineering       | Portland, OR
Systems Management        | 650-254-4248




More information about the katello-devel mailing list