How to put an app into deployment mode

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

How to put an app into deployment mode

Cornelius Brümmer
Hi all,

I'm totally on Pharo and Seaside 2.9 and it works like a charm for my
needs. I built a little management application that works behind a
cherokee webserver.

But now I wanted to get rid of the deployment mode and I can't find a
way to do it.

In my root-WAComponent I do:
  WAAdmin register: self asApplicationAt: self entryPointName.
to register the app. But the trick on
  http://www.seaside.st/documentation/faq/deployment-and-maintenance
to reimplement #isDeploy on the class-side of the root-component doesn't
work - even for removing it from the dispatcher it doesn't work.

In addition to that I didn't manage to work out how list all
configuration attributes for example on a Transcript. What should I do
to set configuration options like

- 'Resource Base URL' to: '/admin/news'
- 'Server hostname' to: 'localhost:8080'
- 'Server Path': 8080
- etc.

during application initialization?

I don't want to excuse my possible naive questions/problems, but I'm new
to the list, seaside, squeak and pharo at all and really can't figure it
out on my own.

Greetings,
Cornelius


_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: How to put an app into deployment mode

Julian Fitzell-2
2009/6/4 Cornelius Brümmer <[hidden email]>:
> Hi all,
>
> I'm totally on Pharo and Seaside 2.9 and it works like a charm for my
> needs. I built a little management application that works behind a
> cherokee webserver.
>
> But now I wanted to get rid of the deployment mode and I can't find a
> way to do it.

There isn't really a good equivalent in 2.9 yet... one of the reasons
it's still called an alpha. :)

If you want to remove applications, just delete them with the web
configuration UI. You can delete whole groups of them by deleting the
dispatcher that contains them. Note that you can also now run multiple
server adaptors on different ports so that you could leave the config
UI, for example, on a more heavily firewalled port and have only your
deployed application on the other.

At that point, it's even possible that you don't need a dispatcher at
all. For example, you ought to be able to just register the
application as the root handler like so:

(WAKom port: 8081)
   requestHandler: (MyApplication new);
   start

You could also use "WAKom default" or "WAServerManager instance
adaptors detect: [ :ea | ... ]" to change the request handler on the
existing instance. And note that there is an OmniBrowser based control
panel which should be registered in the World menu, which will help
you figure out what adaptors are currently running.

> In my root-WAComponent I do:
>  WAAdmin register: self asApplicationAt: self entryPointName.
> to register the app. But the trick on
>  http://www.seaside.st/documentation/faq/deployment-and-maintenance
> to reimplement #isDeploy on the class-side of the root-component doesn't
> work - even for removing it from the dispatcher it doesn't work.
>
> In addition to that I didn't manage to work out how list all
> configuration attributes for example on a Transcript. What should I do
> to set configuration options like
>
> - 'Resource Base URL' to: '/admin/news'
> - 'Server hostname' to: 'localhost:8080'
> - 'Server Path': 8080
> - etc.
>
> during application initialization?

The parameter names are usually just camelCase versions of what is
shown in the web app (#resourceBaseUrl, #serverHostname, etc). Or take
a look at subclasses of WASystemConfiguration to find them all.

> I don't want to excuse my possible naive questions/problems, but I'm new
> to the list, seaside, squeak and pharo at all and really can't figure it
> out on my own.

No worries; questions are welcome and so are new users. And you're
bound to have a few issues with 2.9... the core is pretty stable but
there are still some rough edges.

Julian
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: How to put an app into deployment mode

Cornelius Brümmer
Julian Fitzell schrieb:

> 2009/6/4 Cornelius Brümmer <[hidden email]>:
>> Hi all,
>>
>> I'm totally on Pharo and Seaside 2.9 and it works like a charm for my
>> needs. I built a little management application that works behind a
>> cherokee webserver.
>>
>> But now I wanted to get rid of the deployment mode and I can't find a
>> way to do it.
>
> There isn't really a good equivalent in 2.9 yet... one of the reasons
> it's still called an alpha. :)

Might sound crazy, but thats one (amongst other) reasons I choose it.
Not that I tend to masochistic behaviour, but I expect 2.9 to be a very
solid base for development and I plan to develop most applications on
top of it.

>
> If you want to remove applications, just delete them with the web
> configuration UI. You can delete whole groups of them by deleting the
> dispatcher that contains them. Note that you can also now run multiple
> server adaptors on different ports so that you could leave the config
> UI, for example, on a more heavily firewalled port and have only your
> deployed application on the other.
>
> At that point, it's even possible that you don't need a dispatcher at
> all. For example, you ought to be able to just register the
> application as the root handler like so:
>
> (WAKom port: 8081)
>    requestHandler: (MyApplication new);
>    start
>
> You could also use "WAKom default" or "WAServerManager instance
> adaptors detect: [ :ea | ... ]" to change the request handler on the
> existing instance. And note that there is an OmniBrowser based control
> panel which should be registered in the World menu, which will help
> you figure out what adaptors are currently running.
>
That's a very cool tip. Thank you. I will try a few combinations of your
suggestions to see what is most usefull for me. Currently I "compose"
all Seaside-Apps from different ST-images with a bunch of rewrite rules
within Cherokee. Cherokee handles the static content, gives
authentication, load balancing, HTTPS etc... and at some virtual paths
seaside applications jump in and provide rapid to develop
admin-applications for the users. Maybe not perfect, but works better as
expected at first.

>> In my root-WAComponent I do:
>>  WAAdmin register: self asApplicationAt: self entryPointName.
>> to register the app. But the trick on
>>  http://www.seaside.st/documentation/faq/deployment-and-maintenance
>> to reimplement #isDeploy on the class-side of the root-component doesn't
>> work - even for removing it from the dispatcher it doesn't work.
>>
>> In addition to that I didn't manage to work out how list all
>> configuration attributes for example on a Transcript. What should I do
>> to set configuration options like
>>
>> - 'Resource Base URL' to: '/admin/news'
>> - 'Server hostname' to: 'localhost:8080'
>> - 'Server Path': 8080
>> - etc.
>>
>> during application initialization?
>
> The parameter names are usually just camelCase versions of what is
> shown in the web app (#resourceBaseUrl, #serverHostname, etc). Or take
> a look at subclasses of WASystemConfiguration to find them all.
>
Thanks again - I got it now, problem finally solved.

>> I don't want to excuse my possible naive questions/problems, but I'm new
>> to the list, seaside, squeak and pharo at all and really can't figure it
>> out on my own.
>
> No worries; questions are welcome and so are new users. And you're
> bound to have a few issues with 2.9... the core is pretty stable but
> there are still some rough edges.
>
Understood; I don't expect it to run smoothly in every aspect - learning
phase. You are reducing the rough edges every day (as I can see,
following the newslists) and besides: All hackers behind Seaside did an
amazing job. ;)

Cornelius
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
Reply | Threaded
Open this post in threaded view
|

Re: How to put an app into deployment mode

Julian Fitzell-2
2009/6/4 Cornelius Brümmer <[hidden email]>:

> Julian Fitzell schrieb:
>> 2009/6/4 Cornelius Brümmer <[hidden email]>:
>>> I don't want to excuse my possible naive questions/problems, but I'm new
>>> to the list, seaside, squeak and pharo at all and really can't figure it
>>> out on my own.
>>
>> No worries; questions are welcome and so are new users. And you're
>> bound to have a few issues with 2.9... the core is pretty stable but
>> there are still some rough edges.
>>
> Understood; I don't expect it to run smoothly in every aspect - learning
> phase. You are reducing the rough edges every day (as I can see,
> following the newslists) and besides: All hackers behind Seaside did an
> amazing job. ;)

Excellent and thank you. Let us know if you run into other problems
and of course contributions to smooth the rough edges are always
welcome. ;)

Julian
_______________________________________________
seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside