D. Richard Hipp
2008-05-05 23:38:51 UTC
The latest version of fossil now support HTTP proxies so that you can
use it from behind restrictive firewalls. There are two ways to
enable a proxy:
fossil setting proxy http://proxy.firewall.bigcorp.com:8123/
or
export http_proxy=http://proxy.firewall.bigcorp.com:8123/
If the two settings conflict, the "fossil setting" overrides the
environment variable. To turn the proxy back off and begin using
direct HTTP again, you do:
fossil setting proxy off
unset http_proxy
QUESTION:
The above all works great as long as you are *always* going thru the
proxy. But sometimes you want to be able use the proxy for external
servers but you need to go direct for internal servers. The problem
with that I don't know how to code fossil to tell the difference.
I've though about adding command-line options:
fossil sync http://internal/bigproject --no-proxy
That would, of course, require the user to type the "--no-proxy"
option every time they visit an internal server. But I suppose that
is easier than:
fossil setting proxy off
fossil sync http://internal/bigproject
fossil setting proxy http://proxy.firewall.bigcorp.com:8123/
Does anybody have any ideas on how I can make accessing an internal
server easier when there is an HTTP proxy configured?
The "settings" configured by the "fossil setting" command can be
either "global" or "local". "Global" settings apply everywhere.
"Local" settings apply only to a single local repository that contains
the setting. "Local" settings override "global" settings. So one
possible solution is that a user could specify different proxies for
use by different local repositories. If one project always synced
against an internal server and another project always synced against
an external server, then the first project could specify "proxy off"
and the second could specify the real proxy and things would always
work. But if a single project sometimes syncs against both internal
and external servers, it could get to be irritating to have to
constantly flip the proxy setting. Ideas on how to better deal with
this are appreciated.
D. Richard Hipp
***@hwaci.com
use it from behind restrictive firewalls. There are two ways to
enable a proxy:
fossil setting proxy http://proxy.firewall.bigcorp.com:8123/
or
export http_proxy=http://proxy.firewall.bigcorp.com:8123/
If the two settings conflict, the "fossil setting" overrides the
environment variable. To turn the proxy back off and begin using
direct HTTP again, you do:
fossil setting proxy off
unset http_proxy
QUESTION:
The above all works great as long as you are *always* going thru the
proxy. But sometimes you want to be able use the proxy for external
servers but you need to go direct for internal servers. The problem
with that I don't know how to code fossil to tell the difference.
I've though about adding command-line options:
fossil sync http://internal/bigproject --no-proxy
That would, of course, require the user to type the "--no-proxy"
option every time they visit an internal server. But I suppose that
is easier than:
fossil setting proxy off
fossil sync http://internal/bigproject
fossil setting proxy http://proxy.firewall.bigcorp.com:8123/
Does anybody have any ideas on how I can make accessing an internal
server easier when there is an HTTP proxy configured?
The "settings" configured by the "fossil setting" command can be
either "global" or "local". "Global" settings apply everywhere.
"Local" settings apply only to a single local repository that contains
the setting. "Local" settings override "global" settings. So one
possible solution is that a user could specify different proxies for
use by different local repositories. If one project always synced
against an internal server and another project always synced against
an external server, then the first project could specify "proxy off"
and the second could specify the real proxy and things would always
work. But if a single project sometimes syncs against both internal
and external servers, it could get to be irritating to have to
constantly flip the proxy setting. Ideas on how to better deal with
this are appreciated.
D. Richard Hipp
***@hwaci.com