[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