[Box-Admins] Re: Wiping Eliot's versions Re: [squeak-dev] automated way to delete specific trunk packages?

Tobias Pape Das.Linux at gmx.de
Sat May 9 06:10:51 UTC 2015


Hi levente,

On 09.05.2015, at 01:36, Levente Uzonyi <leves at elte.hu> wrote:

> squeaksource is running in the chroot environment. What you see on box4 is the future replacement, but it's not alive yet (at least it shouldn't be).
> 

ah, ok, I forgot… but how to I get into _that_ image?

Best regards
	-Tobias

> Levente
> 
> On Sat, 9 May 2015, Tobias Pape wrote:
> 
>> Hi all,
>> 
>> 
>> I just tried wiping the versions Eliot asked to be removed.
>> I am able to remove the corresponding files from the disk and also remove
>> the Squeaksource version entries.
>> 
>> However, it seems that source.squeak.org is running on some kind of
>> Magma-backend, where wiping the versions is virtually impossible for me.
>> I put together the following script:
>> 
>> "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-"
>> | project projectDir rawVersions fs candidates condition mcModel |
>> project := SSRepository current projects detect: [:p |  p id = 'trunk'].
>> mcModel := (SSRepository storage respondsTo: #mcModelFor: ) ifTrue: [
>> 				SSRepository storage mcModelFor: project].
>> projectDir := SSFilesystem new projectDirectoryFor: project.
>> " we really want to delete the versions, so circumvent the accessor that filters them "
>> rawVersions := project instVarNamed: 'versions'.
>> condition := [:version |
>> 	#('Collections.spur' 'Compiler.spur' 'Kernel.spur' 'System.spur')
>> 		anySatisfy: [:pat | version fileName beginsWith: pat]].
>> candidates :=  (rawVersions select: condition) values.
>> candidates
>> 	do: [:version| | fileName |
>> 		fileName := version fileName.
>> 		Transcript showln: '> ', fileName.
>> 		version diffs copy keysDo: [:diffName |
>> 			projectDir deleteFileNamed: diffName ifAbsent: ["ok"].
>> 			Transcript showln: '    Removed ', diffName.
>> 			version diffs removeKey: diffName.
>> 			Transcript showln: '    Wiped ', diffName].
>> 		projectDir deleteFileNamed: fileName ifAbsent: ["ok"].
>> 		Transcript showln: '  Removed ', fileName.
>> 		rawVersions removeKey: fileName.
>> 		" mcModel ifNotNil: [:m | m removeVersion: (project mcVersionFrom: version)]. " "<============== this does not work, chris"
>> 		Transcript showln: '  Wiped ', fileName]
>> 	displayingProgress: [:version | 'Wiping ', version fileName].
>> self assert: [rawVersions noneSatisfy: condition].
>> "=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-"
>> 
>> At the position Indicated I tried removing the faulty version from the magma-based
>> data structures, but #removeVersion: tries to remove from an (magma)array, which fail.
>> 
>> I can't help any further here, sorry. Please somebody step in?
>> 
>> Best regards
>> 	-Tobias
>> 
>> PS: I already backed up all affected files to ~squeaksoure/spur-backup
>> 
>> 
>> On 08.05.2015, at 23:42, Levente Uzonyi <leves at elte.hu> wrote:
>> 
>>> Hi Eliot,
>>> 
>>> On Fri, 8 May 2015, Eliot Miranda wrote:
>>> 
>>>> Hi Levente,
>>>> On Fri, May 8, 2015 at 2:17 PM, Levente Uzonyi <leves at elte.hu> wrote:
>>>>     Hi Eliot,
>>>> 
>>>>     If you can generate the files while they are in the repository (on the server), then you can save the time waiting for someone to
>>>>     delete them, because while you can't delete the files from the server, you can overwrite them. This wouldn't help with the .mcds, but
>>>>     I think those are not cached in the image, so deleting just the .mcds is probably a way easier thing to do.
>>>> I thought this too.  But when I tried doing this yesterday, and earlier, the files were not replaced.  I have a generated set waiting to upload as
>>>> soon as the old ones have been deleted.
>>> 
>>> I just reuploaded Collections-ul.625.mcz, and the server happily accepted it. It even sent a mail about it.
>>> It's possible that it won't accept packages with different content, but it clearly accepts reuploads (which is a bug).
>>> 
>>> Levente
>>> 
>>>> 
>>>>     Levente
>>>> 
>>>>     On Fri, 8 May 2015, Eliot Miranda wrote:
>>>> 
>>>>           Hi David,
>>>> 
>>>>               and to be very clear, the *only* packages to be deleted are those matching
>>>> 
>>>>           Collections.spur*
>>>>           Compiler.spur*
>>>>           Kernel.spur*
>>>>           System.spur*
>>>> 
>>>>           Eliot (phone)
>>>> 
>>>>           On May 8, 2015, at 7:22 AM, Eliot Miranda <eliot.miranda at gmail.com> wrote:
>>>> 
>>>>                 Hi David,
>>>> 
>>>>                     it is always possible to fix it another way but it would be hugely expensive.  The only affordable way I
>>>>                 know is to delete the existing files and upload new ones.  Can someone who has access to the box simply login
>>>>                 with either ash or FTP and delete them with a single command?  If I had access to the box that is what I would
>>>>                 do.
>>>> 
>>>>                 Eliot (phone)
>>>> 
>>>>                 On May 7, 2015, at 7:19 PM, "David T. Lewis" <lewis at mail.msen.com> wrote:
>>>> 
>>>>                       On Thu, May 07, 2015 at 04:58:55PM -0700, Eliot Miranda wrote:
>>>>                             Hi All,
>>>> 
>>>>                               I need to delete all the patched Spur packages in trunk to ensure that
>>>>                             correctly patched versions replace them.  Is there an automated way of
>>>>                             deleting packages on trunk?  I've used the web interface, but it'll take
>>>>                             all day :-(
>>>>                             --
>>>>                             best,
>>>>                             Eliot
>>>> 
>>>>                       I don't know the answer to your question, but if I look at the files in
>>>>                       the squeaksource repository, there are quite a few:
>>>> 
>>>>                         davidlewis at squeak-box4:/home/squeaksource/sso2/ss/trunk$ ls *spur*mcz | wc -l
>>>>                         246
>>>>                         davidlewis at squeak-box4:/home/squeaksource/sso2/ss/trunk$ ls *spur*mcd | wc -l
>>>>                         152
>>>>                         davidlewis at squeak-box4:/home/squeaksource/sso2/ss/trunk$ ls *spur*mcm | wc -l
>>>>                         33
>>>>                         davidlewis at squeak-box4:/home/squeaksource/sso2/ss/trunk$ ls *spur* | wc -l
>>>>                         450
>>>> 
>>>>                       Is it really necessary to delete all of this stuff? Or could we keep it as is, and
>>>>                       work around the problems in some other way?
>>>> 
>>>>                       Dave
>>>> --
>>>> best,Eliot




More information about the Box-Admins mailing list