Hi
Where's the problem with calling the image with 'patch.st' in the first place? It looks a little bit out of place for me here. Also, Why Kill MNU and Halt from the list? I'm a bit confused about this part of the pathc…
Best regards -tobias On 31.08.2016, at 23:33, commits@source.squeak.org wrote:
Item was added:
- ----- Method: SmalltalkImage>>patchSystem (in category 'command line') -----
- patchSystem
- (FileDirectory default fileExists: 'patch.st') ifTrue:
[Notification signal: 'Patching system...'.
FileStream
fileNamed: 'patch.st'
do: [ : stream | stream fileIn ] ]!
Item was changed: ----- Method: SmalltalkImage>>run: (in category 'command line') ----- run: aBlock
- [ [ self patchSystem.
- (aBlock numArgs = 1 and: [ self arguments size > 1 ])
- [ [ (aBlock numArgs = 1 and: [ self arguments size > 1 ]) ifTrue: [ "Allow a large, variable number of arguments to be passed as an Array to aBlock." aBlock value: self arguments ] ifFalse: [ aBlock valueWithEnoughArguments: self arguments ] ] on: ProgressInitiationException do:
[ : pie | "Don't want to log this notification."
on: Notification , Warning do: [ : noti | FileStream stdout nextPutAll: DateAndTime now asString ; space ; nextPutAll: noti description ; cr. noti resume ] on: SyntaxErrorNotification do: [ : err | FileStream stdout nextPutAll: err errorCode ; cr; flush. self isHeadless ifTrue: [ self snapshot: false andQuit: true ] ifFalse: [ err pass ] ][ : pie | "Don't want to log these notifications." pie defaultAction ] ]
on: Error
do: [ : err | err printVerboseOn: FileStream stderr. FileStream stderr flush. self isHeadless ifTrue: [ self snapshot: false andQuit: true ] ifFalse: [ err pass ] ]!on: Error, MessageNotUnderstood, Halt
Hi Tobias,
Where's the problem with calling the image with 'patch.st' in the first place?
Per our other conversation in box-admins, I want to control the RFB configuration from the Linux side. Once the server image builds itself and saved once, it is never saved again.
If we can't save the image, how to do a quick-patch? In today's SqueakSource, we RFB into the image, make the method changes, save the image. (Shudder). After a week nobody remembers what the heck we're running in production, and its not easy to see even when one gets RFB'd into the image.
In this new SqueakSource server setup, the built image is never resaved, so its validity could actually be easily confirmed with a hashsum.
The image is never resaved, but could still suffer a daemontools restart, in which case the patch must be reapplied automatically. This is done by the administrator exporting the method changes as patch.st, instead of saving the image.
It looks a little bit out of place for me here.
It should be private. I'll do that.
Also, Why Kill MNU and Halt from the list?
MNU is covered by Error. Halt because its sometimes necessary to use it to diagnose and fix a production problem.
Best, Chris
On 01.09.2016, at 05:37, Chris Muller asqueaker@gmail.com wrote:
Hi Tobias,
Where's the problem with calling the image with 'patch.st' in the first place?
Per our other conversation in box-admins, I want to control the RFB configuration from the Linux side. Once the server image builds itself and saved once, it is never saved again.
I still do not get this.
If we can't save the image, how to do a quick-patch? In today's SqueakSource, we RFB into the image, make the method changes, save the image. (Shudder). After a week nobody remembers what the heck we're running in production, and its not easy to see even when one gets RFB'd into the image.
In this new SqueakSource server setup, the built image is never resaved, so its validity could actually be easily confirmed with a hashsum.
The image is never resaved, but could still suffer a daemontools restart, in which case the patch must be reapplied automatically. This is done by the administrator exporting the method changes as patch.st, instead of saving the image.
Well, then we should write the startup script in a manner that it always is started with a script, which _then_ gets amended outside[1]. IMHO, The hook is providing a script in the first place, not relying a magic constant file name.
It looks a little bit out of place for me here.
It should be private. I'll do that.
Also, Why Kill MNU and Halt from the list?
MNU is covered by Error. Halt because its sometimes necessary to use it to diagnose and fix a production problem.
Yeah, but to my knowledge, run: has up to now be intended for non-interacive use. _Not_ catching Halt defeats this purpose.
Best regards -Tobias
Best, Chris
[1]: I am still not comfortable with dropping on the image concept just like that :(
squeak-dev@lists.squeakfoundation.org